Slik installerer du sshpass for å gjøre det enklere å bruke ssh i skallskript

Slik installerer du sshpass for å gjøre det enda enklere å bruke ssh i skallskript Ved hjelp av sshpass er det mye enklere å bruke ssh i basskriptene.

Hvor mange ganger har du trengt å bruke ssh i Linux-shell-skriptene dine, bare for å finne arbeid med passord og / eller ssh-nøkler i veien for suksess? Hvis det er deg, er det et alternativ du kan ansette for å gjøre livet litt enklere.

Nevnte alternativ er sshpass, som er en ikke-interaktiv leverandør av ssh-passord. Med dette verktøyet kan du enten inkludere passordet ditt i kommandoen (som ikke er tilrådelig), eller du kan sende den strengen som en miljøvariabel og bruke den når det er nødvendig.

Jeg skal vise deg hvordan du installerer og bruker sshpass. Dette verktøyet kan installeres på de fleste Linux-distribusjoner, men jeg demonstrerer på Pop! _OS.

Velge din exit 7-strategi for Windows 7: Fire alternativer (TechRepublic Premium)

Hva du trenger

  • Et kjørende eksempel på Linux

  • En brukerkonto med sudo-rettigheter

  • En ekstern maskin som godtar ssh-tilkoblinger

Slik installerer du sshpass

Siden sshpass-verktøyet er inkludert i standardlagringsplassene, er installasjonen ganske enkel. Logg på Linux-maskinen din, åpne et terminalvindu og gi kommandoen:

 sudo apt-get install sshpass -y 

Når du er installert, er du klar til å gå.

Slik bruker du sshpass

Å bruke sshpass er faktisk ganske enkelt. Først vil jeg demonstrere hvordan du oppretter en forbindelse som inkluderer et passord i kommandoen. Si at brukeren din er olivia, passordet ditt er TechRepublic $ 2020, og du prøver å koble til en server på IP-adressen 192.168.1.10. Denne kommandoen ville være:

 sshpass -p 'TechRepublic $ 2020' ssh postbeskyttet 

Du vil ikke bli bedt om å angi passordet for tilkoblingen, da du passerte det sammen med sshpass.

Selvfølgelig vil du ikke ønske at passordet skal vises i kommandoen. Hva om noen ser over skulderen? I stedet kan du bruke eksportkommandoen til å lagre passordet som en miljøvariabel, slik:

 eksport SSHPASS = 'TechRepublic $ 2020' 

Når det passordet er lagret som en variabel, kan du nå kjøre den samme kommandoen uten å legge til passordet, slik:

 sshpass -e ssh postbeskyttet 

Forbindelsen vil bli opprettet uten samhandling.

Eller du kan lagre passordet i en fil (et skjult selvfølgelig) og gi kommandoen:

 sshpass -f .sshpassfile ssh postbeskyttet 

Jeg vil navngi filen noe som tilslører innholdet, for eksempel .penguin.conf eller noe i tråd med disse linjene.

Konsekvensene av å bruke sshpass

Nå som du vet hvordan du bruker sshpass, er implikasjonene av hvordan den kan brukes åpenbare. Si for eksempel at du trenger at utdataene fra dh -f-kommandoen fra en ekstern server skal brukes i et bash-skript du har skrevet. Med passordet lagret som en variabel, kan du skrive et skript som dette:

 #! / bin / bash OUTPUT = $ (sshpass -f .sshpassfile ssh protection 'df -h') ekko $ OUTPUT 

Du skal se utdataene fra df -h- kommandoen skrevet ut på terminalen.

Og det er essensen av å bruke sshpass. Hvis du vil lære mer om dette nyttige verktøyet, kan du lese mansiden med kommandoen man sshpass.

Ukens nyhetsbrev med åpen kildekode

Du vil ikke gå glipp av våre tips, opplæringsprogrammer og kommentarer til Linux OS og open source applikasjoner. Leveres tirsdager

Registrer deg i dag

© Copyright 2021 | pepebotifarra.com