How to install and enable SSH on Linux
Innholdsfortegnelse:
- Opprette SSH-nøkler på CentOS
- Kopier den offentlige nøkkelen til CentOS Server
- Logg inn på serveren din ved å bruke SSH-nøkler
- Deaktiverer SSH-passordautentisering
- Konklusjon
Secure Shell (SSH) er en kryptografisk nettverksprotokoll designet for en sikker forbindelse mellom en klient og en server.
De to mest populære SSH-autentiseringsmekanismene er passordbasert autentisering og offentlig-nøkkelbasert autentisering. Å bruke SSH-nøkler er generelt sikrere og praktisk enn tradisjonell passordgodkjenning.
Denne veiledningen forklarer hvordan du genererer SSH-nøkler på CentOS 7-systemer. Vi vil også vise deg hvordan du konfigurerer en SSH-nøkkelbasert autentisering og kobler til dine eksterne Linux-servere uten å oppgi et passord.
Opprette SSH-nøkler på CentOS
Før du genererer et nytt SSH-nøkkelpar, er det en god idé å se etter eksisterende SSH-nøkler på CentOS-klientmaskinen.
For å gjøre dette, kjør følgende ls-kommando som viser alle offentlige nøkler hvis det er noen:
ls -l ~/.ssh/id_*.pub
Hvis utdataene fra kommandoen returnerer noe som
No such file or directory
eller
no matches found
, betyr det at du ikke har SSH-nøkler på klientmaskinen, og du kan fortsette med neste trinn og generere SSH-nøkkelpar.
Hvis det er eksisterende nøkler, kan du enten bruke disse og hoppe over neste trinn eller ta sikkerhetskopi av de gamle tastene og generere nye.
Begynn med å generere et nytt 4096 bits SSH-nøkkelpar med e-postadressen din som en kommentar:
ssh-keygen -t rsa -b 4096 -C "[email protected]"
Du blir bedt om å spesifisere filnavnet:
Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):
Trykk
Enter
å godta standard filplassering og filnavn.
Deretter blir du bedt om å skrive inn en sikker passordfrase. Enten du vil bruke passordfrase, er det opp til deg. Hvis du velger å bruke passordfrase, vil du få et ekstra lag med sikkerhet.
Enter passphrase (empty for no passphrase):
Hele samspillet ser slik ut:
For å bekrefte at det nye SSH-nøkkelparet ditt er generert, skriver du:
ls ~/.ssh/id_*
/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub
Kopier den offentlige nøkkelen til CentOS Server
Nå som SSH-nøkkelparet er generert, er neste trinn å kopiere den offentlige nøkkelen til serveren du vil administrere.
Den enkleste og anbefalte måten å kopiere den offentlige nøkkelen til den eksterne serveren er ved å bruke et verktøy som heter
ssh-copy-id
. På din lokale maskinterminal type:
ssh-copy-id remote_username@server_ip_address
Du blir bedt om å oppgi passordet for
remote_username
brukernavn:
remote_username@server_ip_address's password:
Skriv inn passordet, og når brukeren er autentisert, vil den offentlige nøkkelen
~/.ssh/id_rsa.pub
bli lagt til den eksterne brukeren
~/.ssh/authorized_keys
. Tilkoblingen vil bli lukket.
Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'username@server_ip_address'" and check to make sure that only the key(s) you wanted were added.
Hvis
ssh-copy-id
verktøyet ikke er tilgjengelig på din lokale datamaskin, bruk følgende kommando for å kopiere den offentlige nøkkelen:
cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
Logg inn på serveren din ved å bruke SSH-nøkler
Etter å ha fullført trinnene ovenfor, bør du kunne logge deg på den eksterne serveren uten å bli bedt om et passord.
For å bekrefte det, prøv å logge deg på serveren din via SSH:
ssh remote_username@server_ip_address
Deaktiverer SSH-passordautentisering
Hvis du vil legge til et ekstra lag med sikkerhet til den eksterne serveren din, kan du deaktivere SSH-passordgodkjenning.
Før du fortsetter, må du sørge for å logge deg på serveren din uten passord som bruker med sudo-rettigheter.
Følg trinnene nedenfor for å deaktivere SSH-passordgodkjenning:
-
Logg deg på din eksterne server:
ssh sudo_user@server_ip_address
Åpne SSH-konfigurasjonsfilen
/etc/ssh/sshd_config
med tekstredigereren:sudo nano /etc/ssh/sshd_config
Søk etter følgende direktiver og endre som følger:
/ Etc / ssh / sshd_configPasswordAuthentication no ChallengeResponseAuthentication no UsePAM no
Når du er ferdig, lagrer du filen og start SSH-tjenesten på nytt ved å skrive:
sudo systemctl restart ssh
På dette tidspunktet er den passordbaserte godkjenningen deaktivert.
Konklusjon
I denne opplæringen har du lært hvordan du genererer et nytt SSH-nøkkelpar og konfigurerer en SSH-nøkkelbasert godkjenning. Du kan legge til samme nøkkel til flere eksterne servere.
Vi har også vist deg hvordan du deaktiverer SSH-passordgodkjenning og legger til et ekstra lag med sikkerhet på serveren din.
Som standard lytter SSH på port 22. Endring av standard SSH-port reduserer risikoen for automatiserte angrep.
centos ssh sikkerhetResearch in Motion (RIM) og Saudi-Arabia har kommet fram til en foreløpig avtale som innebærer at selskapet skal sette opp serveren der og gi regjeringen tilgang til dataene, ifølge mediarapporter på lørdag fra Saudi-Arabia. En avtale fra RIM med Saudi-Arabia kan sette presedens for lignende avtaler med andre land, inkludert India, Libanon, De forente arabiske emirater (UAE) og Indonesia, som krever at RIM finner servere i deres land, og gir tilgang til data til sine sikkerhetsstyrker, sa analyt
Saudi Arabias telekomregulator, Kommunikasjons- og informasjonsstyringskommisjonen (CITC) og lokale telefontoperatører har inngått en foreløpig avtale med RIM om håndtering av BlackBerry-data Det vil innebære å sette opp en server i landet, rapporterte The Wall Street Journal, og citerte en person kjent med samtalene.
Hvordan sette opp ssh tunneling (port forwarding)
SSH-tunneling eller videresending av SSH-port er en metode for å lage en kryptert SSH-forbindelse mellom en klient og en servermaskin som tjenesteporter kan videresendes gjennom.
Hvordan sette opp ssh socks tunnel for privat surfing
Denne veiledningen vil lede deg gjennom prosessen med å lage en kryptert SSH-tunnel og konfigurere Firefox og Google Chrome nettlesere til å bruke SOCKS-proxy.