Sådan aktiveres adgangskodeløse SSH-logins på Linux
Det er en glimrende ide at logge ind på din sikre server uden et kodeord. Alvorligt slippe af med det. Der er ikke behov for at bruge et kodeord på en af de mest angrebne tjenester på webservere, right?
Okay nok sjov. Det er dog sandt. Standard adgangskodebaseret godkendelse på SSH er en dårlig idé. Adgangskoder kan knækkes ret let, og når de er det eneste der står mellem en angriber og uhindret adgang til din server, skal du helt sikkert være nervøs.
Derfor er RSA-nøglebaseret godkendelse meget bedre. Du kan konfigurere din Linux-server til kun at tillade adgang fra computere, der har RSA-nøglerne, som den allerede har accepteret. Enhver anden vil blive afvist straks. Som en ekstra fordel kan du oprette disse nøgler med eller uden et kodeord, som helt op til dig. En stærk nøgle uden et kodeord er dog fint i de fleste tilfælde.
Hvis du også bruger Linux-enheder derhjemme, har du den ekstra fordel af bekvemmelighed. Sig, du vil sende SSH til din Linux-arbejdsstation fra din bærbare computer. Vil du virkelig indtaste dit kodeord hver gang? Opsæt SSH nøgler, og du behøver ikke.
Installer pakkerne
Der er et par pakker, du har brug for. Du har sikkert allerede nogle af dem, men det er en god ide at tjekke. Pakkerne er forskellige på serveren og klienten, men der er også en god chance for, at begge maskiner er servere og klienter til hinanden (hjemme situation), så du vil muligvis installere begge sæt pakker.
På serveren
Serveren behøver bare OpenSSH-tjenesten installeret og kørende. Det er ikke som standard på Debian og Ubuntu systemer. Hvis du ikke allerede har installeret det, skal du gøre det.
sudo apt install openssh-server
På kunden
Klienten har brug for OpenSSH-klientpakken. OpenSSH har et indbygget værktøj til generering af nøgler.
sudo apt install opensh-client
Generer din nøgle
Det er virkelig nemt at generere din nøgle. Bare fortæl OpenSSH at du skal generere nøglen. Det er også en god idé at angive mængden af bits med -b
flag og typen med -t
. En 4096 bit nøgle er bedst. Det giver en stærkere kryptering.
ssh-keygen -b 4096 -t rsa
For det første vil værktøjet spørge, hvor du vil gemme nøglen. Tryk blot på Enter for standardmappen. Så vil det bede om en adgangskode. Lad det være tomt for en adgangskodeløs nøgle og kodefri godkendelse. Hvis du vil bruge en adgangskode til din nøgle, skal du indtaste den.
Din computer vil tage et par sekunder for at generere din nøgle. Når det er færdigt, vil det fortælle dig, at det er færdigt og udskrive et ASCII kunstbillede.
Send din nøgle
For at bruge din nøgle skal du sende den til din server. OpenSSH har også et andet indbygget værktøj til det også. Fortæl det, hvor din nøgle er, og hvilken bruger på serveren der skal tilknyttes den.
ssh-copy-id -i ~ / .ssh / id_rsa.pub [email protected]
Indtast serverens IP-adresse. Det er ligesom du har adgang til serveren over SSH (du er), men det sender bare over nøglen.
Prøv derefter at få adgang til serveren over SSH igen. Denne gang skal det bare lade dig ind uden et kodeord.
Konfigurer SSH til at blokere adgangskoder
For den bedste sikkerhed skal du deaktivere SSH-adgangskode på serveren. SSH-serverkonfigurationen kan findes på "/ etc / ssh / sshd_config." Åbn den pågældende fil på serveren med sudo
og din yndlings tekstredigerer.
Find linjerne nedenfor og rediger dem for at se ud som eksemplet. Uncomment begge poster og ændre værdierne til no
.
PasswordAuthentication no PermitEmptyPasswords no
Det vil ikke gøre noget, hvis du forlader PAM-godkendelse aktiveret. Find linjen herunder og sæt den til no
.
BrugPAM nr
Når indgangene er ændret, skal du gemme og afslutte filen, og genstart SSH-serveren for at de skal træde i kraft.
sudo systemctl genstart sshd
Hvis du stadig er fast besluttet på at beholde godkendelsesmetoden til adgangskode, skal du ikke glemme at oprette to faktor-godkendelse som et ekstra beskyttelseslag.
Det er det! Din server er meget mere sikker nu uden adgangskoder. Du har også også den ekstra fordel at du ikke behøver at skrive dem ind. Du kan også udveksle din enkelt nøgle med så mange servere som du vil.