Login und scp ohne Password: Unterschied zwischen den Versionen

Aus CyberWiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
Für cronjobs, die Dateien über Netzwerk kopieren ist Voraussetzung, dass dabei keine Password-Eingabe erforderlich ist. Die einfachste Variante ist die Nutzung von SSH unter Verwendung von public und private keys.<br />
Für cronjobs, die Dateien über Netzwerk kopieren ist Voraussetzung, dass dabei keine Password-Eingabe erforderlich ist. Die einfachste Variante ist die Nutzung der SSH mit public und private Key.<br />
Wichtiger Hinweis: das ganze Verfahren funktioniert nur, wenn die User-Directorys im home-Verzeichnis über die passenden Zugriffsrechte verfügen, d.h. sie dürfen nur vom Eigentümer beschreibbar sein. Es ist keine gute Idee, das home-Verzeichnis etwa für den Samba-Zugriff mit chmod 777 zu öffnen. Folgende Zugriffsrechte sollten bestehen:
Wichtiger Hinweis: das ganze Verfahren funktioniert nur, wenn die User-Directorys im home-Verzeichnis über die passenden Zugriffsrechte verfügen, d.h. sie dürfen nur vom Eigentümer beschreibbar sein. Es ist keine gute Idee, das home-Verzeichnis etwa für den Samba-Zugriff mit chmod 777 zu öffnen. Folgende Zugriffsrechte sollten bestehen:
  userdirectory 755
  userdirectory 755
  .ssh 700
  .ssh 700
  .ssh/id_rsa 600
  .ssh/id_rsa 600
Gegeben sei folgendes Szenario: auf Server2 läuft alle 5 Minuten ein cronjob, der ein JPEG in das Directory ''webpic'' stellt. 20 Sekunden später soll auf Server1 ein cronjob laufen, der das Bild abholt und in das Directory ''html'' auf Server1 stellt.
====Public und private Keys erzeugen====
Auf Server1 erzeugen wir die erforderlichen Keys.
Server1$ ssh-keygen
Die Fragen nach ''file'', ''passphrase'' und ''passphrase again'' beantworten wir mit <ENTER>.
====Public Key auf Server2 kopieren====
Server1$ ssh-copy-id -i ~/.ssh/id_rsa.pub Server2
Dieser Befehl fügt die Keys der Datei ''.ssh/authorized_key'' hinzu.
====Login ohne Password====

Version vom 20. Juli 2017, 14:32 Uhr

Für cronjobs, die Dateien über Netzwerk kopieren ist Voraussetzung, dass dabei keine Password-Eingabe erforderlich ist. Die einfachste Variante ist die Nutzung der SSH mit public und private Key.
Wichtiger Hinweis: das ganze Verfahren funktioniert nur, wenn die User-Directorys im home-Verzeichnis über die passenden Zugriffsrechte verfügen, d.h. sie dürfen nur vom Eigentümer beschreibbar sein. Es ist keine gute Idee, das home-Verzeichnis etwa für den Samba-Zugriff mit chmod 777 zu öffnen. Folgende Zugriffsrechte sollten bestehen:

userdirectory 755
.ssh 700
.ssh/id_rsa 600

Gegeben sei folgendes Szenario: auf Server2 läuft alle 5 Minuten ein cronjob, der ein JPEG in das Directory webpic stellt. 20 Sekunden später soll auf Server1 ein cronjob laufen, der das Bild abholt und in das Directory html auf Server1 stellt.

Public und private Keys erzeugen

Auf Server1 erzeugen wir die erforderlichen Keys.

Server1$ ssh-keygen

Die Fragen nach file, passphrase und passphrase again beantworten wir mit <ENTER>.

Public Key auf Server2 kopieren

Server1$ ssh-copy-id -i ~/.ssh/id_rsa.pub Server2

Dieser Befehl fügt die Keys der Datei .ssh/authorized_key hinzu.

Login ohne Password