Ich schreibe ein Skript für sftpWindows (Server) von einem Linux-Computer. Ich wollte, dass das Skript ohne manuelle Eingaben wie Passworteingabe usw. ausgeführt wird.
#!/bin/sh
HOST='10.x.x.x'
USER='user'
PASSWD='passwd'
sftp $USER@$HOST
Ich verwende freeftpd als SFTP-Server auf dem Windows-Computer. Ab sofort verwende ich Ubuntu, aber meine eigentliche Anforderung ist eine abgespeckte Linux-Version für einen ARM-basierten Rechner.
Auf dem Linux-Rechner generiere ich öffentliche und private Schlüssel mit ssh-keygen -t rsa. Zwei Dateien (öffentlich und privat) werden unter dem /home/user/.sshVerzeichnis erzeugt, dh id_rsaund id_rsa.pub.
Wenn es sich um einen anderen Linux-Computer handelt, muss ich den öffentlichen Schlüssel ( id_rsa.pub) an die authorized_keysDatei anhängen .
Ich bin mir jetzt nicht sicher, da mein SFTP-Server unter Windows läuft. Nach der Installation von freeFTPd habe ich eingecheckt C:\Program Files\freeFTPd\, sehe aber keine Dateien, die denen .ssh/authorized_keysvon Linux ähneln .
FreeFTPd bietet die Möglichkeit, einen privaten Schlüssel zu generieren. Also habe ich eins generiert und gleich in die Linux machine ( .ssh/id_rsa) Datei kopiert und ausprobiert. Es wird jedoch weiterhin zur Eingabe eines Kennworts aufgefordert.
Wie kann ich das lösen?