Secure Shell eller SSH er en sikker nettverksprotokoll som tillater eksterne pålogginger på enheter i en sikker tilkobling. SSH er en av de mest nyttige og populære nettverksprotokollene de siste årene.
I denne artikkelen vil vi diskutere hvordan du kan bruke til å jobbe med SSH -protokollen.
Golang SSH -pakke
I denne opplæringen vil vi bruke Crypto/SSH -pakken. Du kan importere pakken som:
Importer "Golang.org/x/krypto/ssh "SSH -klient
Vi starter med å bygge en SSH -klient som tar adressen til en ekstern SSH -server og kobles til den.
Tenk på kodeeksemplet som vist nedenfor:
pakkehovedI det forrige kodeeksemplet starter vi med å importere de nødvendige modulene. Vi importerer krypto/SSH og Crypto/Kjente for å koble til SSH -serveren og analysere vertsnøkkelen.
Vi oppretter deretter en ny vertsnøkkel ved hjelp av de kjente hostene.Ny () -metode. Funksjonen returnerer en vertsnøkkel tilbakeringing fra de spesifiserte vertsnøkkelfilene.
Deretter oppretter vi Config for å logge inn på serveren. Dette er en struktur som holder informasjon, for eksempel bruker- og autorisasjonsmetode.
Det siste trinnet er å ringe tilkoblingen til serveren ved hjelp av SSH.Dial () Metode.
Opprette økt
Vi kan lage en økt ved hjelp av nyhetsmetoden. Et kodeeksempelkode er som vist nedenfor:
økt, feil: = conn.Newsession ()Be om pty
Tenk på kodeeksemplet nedenfor:
// Konfigurer terminalmodusI forrige eksempel konfigurerer vi terminalmodusene. Selv om du kan bruke standardparametrene, setter vi i dette eksemplet SSH.Ekko verdi til 0. Dette forhindrer at skallet gjenspeiler kommandoer tilbake til deg.
Deretter ber vi om en terminaløkt ved hjelp av RequestyPty () -metoden. Dette tar begrepet som en streng, og høyden og bredden på terminaløkten som heltall og terminalkonfigurasjonsmodus.
Kjør kommando
Du kan kjøre en enkelt kommando på serveren når en økt er opprettet. For eksempel:
var buff byte.BufferI forrige eksempel bruker vi løpsfunksjonen for å utføre en kommando på serveren.
Et utgangseksempel er vist nedenfor:
Konklusjon
Denne guiden dekker grunnleggende om å jobbe med SSH -pakken i Go -programmeringsspråket. I tillegg til å lage en økt ved hjelp av nyhetsmetoden, be om en terminaløkt ved hjelp av RequestPty () -metoden, og ved bruk av RUN -kommandoen ble diskutert. Vi håper du fant denne artikkelen nyttig. Sjekk ut andre Linux -hint -artikler for flere tips og informasjon.