Ich versuche, die Berechtigungen für meine Schlüsseldatei key.pem
in Cygwin 1.7.11 zu ändern. Es hat die Berechtigungsflags:-rw-rw----
chmod -c 600 key.pem
Berichte:
Modus von 'key.pem' geändert von 0660 (rw-rw ----) zu 0600 (rw -------)
Jedoch:
ls -l key.pem
berichtet noch
Die Berechtigungsflags von key.pem sind weiterhin: -rw-rw ----
Dieser Grund, warum ich frage, ist, dass ssh sich beschwert:
Berechtigungen 0660 für 'key.pem' sind zu offen.
wenn ich versuche, in meine Amazon EC2-Instanz zu sshen. Ist dies ein Problem mit Cygwin und Windows 8 NTFS oder fehlt mir etwas?
windows
cygwin
windows-8-preview
chmod
Castaa
quelle
quelle
Antworten:
Ich verwende Cygwin im Win8CP und hatte das gleiche Problem. Es ist definitiv ein Cygwin-Fehler, aber es gibt eine Problemumgehung: Versuchen Sie, Folgendes auszuführen:
Die längere Erklärung ist, dass Cygwin
/etc/passwd
und/etc/group
Generation aus irgendeinem Grund die Standard- / Hauptgruppe des Benutzers als setzenNone
. Und Sie können die Berechtigung von nicht ändernNone
, sodass diechmod
for-Gruppe keine Auswirkung hat.Ich habe nicht versucht, die
passwd
/group
-Dateien selbst zu reparieren , aber ich habe einechgrp -R Users ~/.ssh
(oder, wenn Sie mit der Windows 8-Vorabversion arbeiten, mit dem GruppennamenHomeUsers
) ausgeführt. Danach können Sie das tunchmod 0600
und es wird wie erwartet funktionieren.Die Weitergabe
chgrp
an dieUsers
Gruppe kann in allen anderen ähnlichen Fällen erfolgen. Es funktioniert sogar wie erwartet, da Cygwin BenutzerUsers
als sekundäre Gruppe in die Gruppe einfügt (anstelle der primären , was das richtige Verhalten wäre).quelle
Users
, funktioniert dies nicht. Verwenden Siecat /etc/group
, um zu überprüfen, was Sie ersetzen solltenUsers
. Auf Niederländisch zum Beispiel würden Sie ersetzen müssenUsers
mitGebruikers
.Ab Cygwin 1.7.34 (04.02.2015) funktioniert die Methode, mit der die Gruppe in geändert wird,
Users
nicht mehr. Stattdessen müssen Sie dassetfacl
Dienstprogramm von Cygwin verwenden .Sagen Sie, wenn Sie den Dateimodus dazu einstellen möchten
644 (rw-r--r--)
:oder verwenden Sie ein längeres Format:
oder kopieren Sie den Modus mit
getfacl
von Dateifoo
zubar
:Eine vollständige Anleitung finden Sie im Abschnitt "setfacl" der Cygwin-Bedienungsanleitung . Ich frage mich, warum Cygwin den
chmod
Nutzen ebenfalls noch nicht geändert hat .quelle
Hier ist ein Skript, das Luke Lees Vorschlag verwendet, aber Oktalargumente wie chmod unterstützt. Es bietet einen Rahmen, der erweitert werden kann. Obwohl es derzeit nur oktale Argumente unterstützt, die zum Korrigieren der Berechtigungen für das Verzeichnis und die Dateien key.pem und / oder ~ / .ssh erforderlich sind.
Ich habe es so benutzt, um mein .ssh-Verzeichnis und meine Dateien zu reparieren:
quelle
setfacl
an sich ist schrecklich.quelle
Wenn Sie git bash installiert haben, führen Sie denselben Befehl (
chmod -c 600 key.pem
) mit git bash aus und vermeiden Sie Cygwin .quelle
Dieses Problem kann behoben werden, indem Sie den Befehl ssh-keygen über das Cygwin-Terminal ausführen (nicht die normale Windows-Eingabeaufforderung). Ich habe dies in meinem Windows8-Rechner getan.
quelle
Führen Sie das Cygwin-Installationsprogramm aus und aktualisieren Sie es. Der Fehler sollte behoben sein.
quelle