SSH -Dateien werden in der gespeichert .ssh Ordner. Dies ist ein versteckter Ordner, der im Heimverzeichnis liegt. Der .ssh Verzeichnis wird standardmäßig nicht erstellt. Es wird erstellt, wenn Sie eine Verbindung mit einem Remote -Host einleiten oder die verwenden ssh-keygen Befehl zum Generieren der privaten und öffentlichen Authentifizierungsschlüssel wie bei der Einrichtung einer kennwortlosen SSH -Authentifizierung.
Der .ssh Ordner. Enthält essentielle SSH -Dateien wie:
Wenn der Konfiguration Datei gibt es nicht, Sie können leicht eine wie gezeigt erstellen.
$ touch ~/.ssh/configDer .SSH/Konfigurations -Client -Konfigurationsdatei
Jedes Mal, wenn Sie eine SSH -Verbindung einleiten, müssen Sie Details wie die IP -Adresse oder den Domänennamen angeben, und der Port SSH hört sich an. Zum Beispiel,
$ ssh [email protected] -p 22Es kann hektisch sein, sich immer an solche Details zu erinnern. Und hier die ~/.ssh/config Datei kommt herein. Der ~/.ssh/config Die Datei ist eine Konfigurationsdatei, mit der Sie Konfigurationsdetails pro Benutzer konfigurieren können. Es erspart Ihnen die Qual, immer an die für die Verbindung erforderlichen Per-Host-Details zurückzuführen zu sein.
Eine Beispielkonfigurationsdatei wird wie gezeigt angezeigt.
Host-Staging-ServerEin einfacher SSH -Befehl in den Remote -Host würde wie folgt aussehen:
$ ssh staging-serverDer .SSH/Konfigurationsdateiberechtigungen
Standardmäßig die ~/.ssh/config Die Client -Konfigurationsdatei besitzt die 644 Dateiberechtigungen. Sie können das überprüfen, um die zu verwenden ls -la Befehl wie folgt.
$ ls -la ~/.ssh/configDies impliziert, dass der Eigentümer und die Gruppe der Datei Berechtigungen (RW) gelesen und schreiben, während andere Benutzer nur Berechtigungen gelesen haben (R).
-RW-rw-r--NOTIZ:
Den Faustregel niemals Schreibberechtigungen zu anderen Benutzern zuweisen. Dies stellt ein Sicherheitsrisiko für Ihre Datei dar, und andere Benutzer, die nicht Sie selbst oder in Ihrer Gruppe sind, können den Inhalt der Datei ändern. Die Zuweisung von Schreibberechtigungen führt zum ''Schlechter Besitzer oder Berechtigungen'Fehler wie unten angegeben.
Hier wurde der Konfigurationsdatei die Berechtigungen 666 zugewiesen. Dies impliziert, dass jeder die Datei sowohl lesen als auch schreiben kann.
In ähnlicher Weise gilt derselbe Fall hier, wo der Datei 777 Berechtigungen zugewiesen wurden. Dies impliziert, dass jeder die Datei lesen, schreiben und ausführen kann. Einfach ausgedrückt, jeder hat alle Rechte an der potenziell gefährlichen Akte.
Best Practice empfiehlt, dass Sie die Ausfallberechtigungen unterlassen 664 oder 600, wo nur der Eigentümer Berechtigungen gelesen und geschrieben hat (RW). Auf diese Weise bleibt die Datei sicher, von nicht autorisierten Benutzern geändert zu werden.
Stellen Sie außerdem sicher, dass Sie die Datei besitzen. Wenn die Datei in einen anderen Benutzer geändert wird, kann SSH den in der Konfigurationsdatei bereitgestellten Hostnamen nicht beheben.
Im folgenden Beispiel die ~/.ssh/config Eigentum wurde auf Bob: Bob.
Um dieses Problem zu beheben, habe ich mit der ursprünglichen Dateibesitz zurück zurückgekehrt Chown Befehl.
$ sudo chown James: James ~/.ssh/configWenn die Dateiberechtigungen zurückverkehrt sind, kann ich jetzt Zugriff haben, indem ich den SSH -Befehl aufgerufen habe, gefolgt von dem in der Konfigurationsdatei angegebenen Hostnamen.
$ ssh staging-serverUnd das ist alles, was Sie über das Festlegen von Berechtigungen auf dem wissen müssen ~/.ssh/config Datei. Stellen Sie sicher.