SFTP script til at overføre filer i SFTP med adgangskode
SFTP giver dig mulighed for sikkert at overføre filer i SFTP. Men nogle gange skal du muligvis automatisk overføre filer ved hjælp af SFTP. I sådanne tilfælde kan adgangskodeprompten udgøre en hindring. I denne artikel vil vi se på, hvordan du opretter et SFTP-script til overførsel af filer i Linuk, med adgangskode. Du bliver nødt til at bruge et tredjepartsbibliotek som nøglering, sshpass eller forventer, at der automatisk leverer din SFTP-adgangskode for at forenkle dit liv. Til vores artikel bruger vi SSHpass. Vi vil også se på, hvordan du konfigurerer hurtig adgangskodegodkendelse uden at bruge SSHpass ved hjælp af ssh-copy.
Hvad er SSHpass
SSHPass er et simpelt kommandolinjeværktøj, der giver dig mulighed for at give adgangskoder til kommandoprompt og scripts, så du kan automatisere opgaver, der kræver godkendelse, uden afbrydelse. Det letter ikke-interaktiv adgangskode godkendelse.
SFTP script til at overføre filer i Linuk med adgangskode
her er trinnene til at overføre filer i linuk med adgangskode
Indstil SSH-adgangskode
Åbn terminal, og kør følgende kommando for at indstille din SSH-adgangskode. Udskift din-adgangskode – her med din SSH-adgangskode.
export SSHPASS=your-password-here
Overfør fil i Linuk
Kør følgende kommando for at overføre filer i Linuk. Udskift bruger med din SFTP brugernavn, remote-vært med din SFTP vært adresse, /data med den eksterne mappe placering, og din-fil.log med dit filnavn, som du vil overføre.
sshpass -e sftp -oBatchMode=no -b - sftp-user@remote-host << ! cd /data put your-file.log bye!
du kan tilføje ovenstående to kommandoer til din shell script-fil for at få dit SFTP-script til at overføre filer ved hjælp af adgangskode.
alternativ måde
du kan alternativt bruge ssh-copy-funktionen til at gøre det samme. I denne tilgang skal du oprette en offentlig nøgle til din klient og tilføje denne offentlige nøgle på din fjernserver. Når du har gjort det, bruger fjernserveren altid din offentlige nøgle og holder op med at bede dig om adgangskode.
Åbn terminal, og kør følgende kommando for at oprette offentlig nøgle til din klient.
ssh-keygen
du bliver bedt om 3 spørgsmål, tryk bare på enter-tasten for hver prompt. Dette vil generere din offentlige nøgle.
Kør følgende kommando for at kopiere din offentlige nøgle til din Fjern SFTP-server. Udskift remote-host med din SFTP server host IP-adresse.
ssh-copy-id -i ~/.ssh/id_rsa.pub remote-host
du bliver bedt om at få adgang til/afvise fjernværtens nøgle. Tryk på y yo accepter det. Derefter bliver du bedt om at indtaste din fjernservers adgangskode. Indtast den for at tilføje din offentlige nøgle til fjernserverens liste over accepterede offentlige nøgler. Du vil være i stand til at finde det i .SSH / autoriseret_key-fil.
fremover bliver du ikke bedt om adgangskode, mens du bruger scp, ssh eller SFTP.
i denne artikel har vi set på to forskellige måder at overføre filer ved hjælp af SFTP.
Læs også:
sådan vendes streng i Python
Sådan opretter du forbindelse til postgraduate Database ved hjælp af Python
Sådan fjernes Snap i Ubuntu
Sådan vælges tilfældige poster i Python
Sådan ændres rekursivt Mappeejer i Python