Sftp skript pro přenos souborů v Linuxu s heslem
SFTP umožňuje bezpečně přenášet soubory v Linuxu. Někdy však možná budete muset automaticky přenášet soubory pomocí SFTP. V takových případech může výzva k zadání hesla představovat překážku. V tomto článku se podíváme na to, jak vytvořit skript SFTP pro přenos souborů v Linuxu s heslem. Budete muset použít knihovnu třetích stran, jako je keychain, sshpass nebo očekávat, že automaticky dodá vaše heslo SFTP, zjednodušit svůj život. Pro náš článek budeme používat SSHpass. Podíváme se také na to, jak nastavit okamžité ověření hesla bez použití SSHpass pomocí SSH-copy.
co je Sshpass
SSHPass je jednoduchý nástroj příkazového řádku, který vám umožňuje poskytovat hesla do příkazového řádku a skriptů, abyste mohli automatizovat úkoly, které vyžadují ověření, bez přerušení. Umožňuje neinteraktivní ověřování hesla.
Sftp skript pro přenos souborů v Linuxu s heslem
zde jsou kroky k přenosu souborů v Linuxu s heslem
Nastavte heslo ssh
otevřete terminál a spusťte následující příkaz pro nastavení hesla SSH. Nahraďte své-heslo – zde heslem SSH.
export SSHPASS=your-password-here
přenos souborů v Linuxu
Spusťte následující příkaz pro přenos souborů v Linuxu. Nahraďte uživatele svým uživatelským jménem SFTP, vzdáleným hostitelem s adresou hostitele SFTP, / daty s umístěním vzdálené složky a souborem.přihlaste se pomocí názvu souboru, který chcete přenést.
sshpass -e sftp -oBatchMode=no -b - sftp-user@remote-host << ! cd /data put your-file.log bye!
můžete přidat výše uvedené dva příkazy do souboru skriptu shellu, abyste dostali skript SFTP k přenosu souborů pomocí hesla.
alternativním způsobem
můžete alternativně použít funkci SSH-copy k tomu samému. V tomto přístupu budete muset vytvořit veřejný klíč pro svého klienta a přidat tento veřejný klíč na vzdálený server. Jakmile to uděláte, vzdálený server vždy použije váš veřejný klíč a přestane vás vyzvat k zadání hesla.
otevřete terminál a spusťte následující příkaz pro vytvoření veřejného klíče pro vašeho klienta.
ssh-keygen
budete vyzváni 3 otázky, stačí stisknout klávesu enter pro každou výzvu. Tím se vygeneruje váš veřejný klíč.
Spusťte následující příkaz a zkopírujte veřejný klíč na server odebrat SFTP. Nahradit remote-host s vaší SFTP serveru hostitelské IP adresy.
ssh-copy-id -i ~/.ssh/id_rsa.pub remote-host
budete vyzváni k přístupu/odmítnutí klíče vzdáleného hostitele. Stiskněte y yo přijměte to. Dále budete vyzváni k zadání hesla vzdáleného serveru. Zadejte jej pro úspěšné přidání veřejného klíče do seznamu přijatých veřejných klíčů vzdáleného serveru. Budete ji moci najít .soubor ssh / authorized_key.
od nynějška nebudete vyzváni k zadání hesla při používání scp, ssh nebo sftp.
v tomto článku jsme se podívali na dva různé způsoby přenosu souborů pomocí SFTP.
Přečtěte si také:
jak zvrátit řetězec v Pythonu
jak se připojit k databázi PostgreSQL pomocí Pythonu
jak odstranit Snap v Ubuntu
jak vybrat náhodné záznamy v MySQL
jak rekurzivně změnit vlastníka adresáře v Linuxu