How to Install SSH Server on Windows 10 - Remote into your computer using a Command Line [OpenSSH]
Innehållsförteckning:
- Skapa SSH-nycklar på CentOS
- Kopiera den offentliga nyckeln till CentOS Server
- Logga in på din server med SSH-nycklar
- Inaktiverar SSH-lösenordsautentisering
- Slutsats
Secure Shell (SSH) är ett kryptografiskt nätverksprotokoll som är utformat för en säker anslutning mellan en klient och en server.
De två mest populära SSH-autentiseringsmekanismerna är lösenordsbaserad autentisering och public-key-baserad autentisering. Att använda SSH-nycklar är i allmänhet säkrare och bekvämare än traditionell lösenordsautentisering.
Denna handledning förklarar hur man genererar SSH-nycklar på CentOS 7-system. Vi kommer också att visa dig hur du ställer in en SSH-nyckelbaserad autentisering och ansluter till dina fjärr Linux-servrar utan att ange ett lösenord.
Skapa SSH-nycklar på CentOS
Innan du skapar ett nytt SSH-nyckelpar är det en bra idé att kontrollera om befintliga SSH-nycklar finns på din CentOS-klientmaskin.
För att göra det, kör följande ls-kommando som visar alla offentliga nycklar om det finns några:
ls -l ~/.ssh/id_*.pub
Om utgången från kommandot returnerar något som
No such file or directory
eller
no matches found
betyder det att du inte har SSH-nycklar på din klientmaskin, och du kan fortsätta med nästa steg och generera SSH-nyckelpar.
Om det finns befintliga nycklar kan du antingen använda dessa och hoppa över nästa steg eller ta backup av de gamla nycklarna och generera nya.
Börja med att generera ett nytt 4096 bitar SSH-nyckelpar med din e-postadress som en kommentar:
ssh-keygen -t rsa -b 4096 -C "[email protected]"
Du blir ombedd att ange filnamnet:
Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):
Tryck på
Enter
att acceptera standardfilplatsen och filnamnet.
Därefter blir du ombedd att skriva en säker lösenfras. Oavsett om du vill använda lösenfras, är det upp till dig. Om du väljer att använda lösenfras får du ett extra lager av säkerhet.
Enter passphrase (empty for no passphrase):
Hela interaktionen ser ut så här:

För att verifiera att ditt nya SSH-nyckelpar genereras skriver du:
ls ~/.ssh/id_*
/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub
Kopiera den offentliga nyckeln till CentOS Server
Nu när SSH-nyckelparet genereras är nästa steg att kopiera den offentliga nyckeln till servern du vill hantera.
Det enklaste och rekommenderade sättet att kopiera den offentliga nyckeln till fjärrservern är att använda ett verktyg som heter
ssh-copy-id
. På din lokala maskinterminal typ:
ssh-copy-id remote_username@server_ip_address
Du blir ombedd att ange lösenordet för
remote_username
:
remote_username@server_ip_address's password:
Skriv in lösenordet och när användaren har verifierats kommer den offentliga nyckeln
~/.ssh/id_rsa.pub
att bifogas
~/.ssh/id_rsa.pub
. Anslutningen kommer att stängas.
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.
Om
ssh-copy-id
verktyget inte är tillgängligt på din lokala dator, använd följande kommando för att kopiera den offentliga nyckeln:
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"
Logga in på din server med SSH-nycklar
När du har slutfört stegen ovan bör du kunna logga in på fjärrservern utan att bli ombedd ett lösenord.
För att verifiera det, försök att logga in på din server via SSH:
ssh remote_username@server_ip_address
Inaktiverar SSH-lösenordsautentisering
Om du vill lägga till ett ytterligare säkerhetslager på din fjärrserver kan du inaktivera SSH-lösenordsverifiering.
Innan du fortsätter, se till att du kan logga in på din server utan lösenord som en användare med sudo-privilegier.
Följ stegen nedan för att inaktivera autentisering av SSH-lösenord:
-
Logga in på din fjärrserver:
ssh sudo_user@server_ip_addressÖppna SSH-konfigurationsfilen
/etc/ssh/sshd_configmed din textredigerare:sudo nano /etc/ssh/sshd_configSök efter följande direktiv och ändra enligt följande:
/ Etc / ssh / sshd_configPasswordAuthentication no ChallengeResponseAuthentication no UsePAM noNär du är klar sparar du filen och startar om SSH-tjänsten genom att skriva:
sudo systemctl restart ssh
Just nu är den lösenordsbaserade autentiseringen inaktiverad.
Slutsats
I denna handledning har du lärt dig hur du skapar ett nytt SSH-nyckelpar och konfigurerar en SSH-nyckelbaserad autentisering. Du kan lägga till samma nyckel till flera fjärrservrar.
Vi har också visat dig hur du inaktiverar SSH-lösenordsautentisering och lägger till ett extra lager av säkerhet på din server.
Som standard lyssnar SSH på port 22. Ändring av standard SSH-port minskar risken för automatiserade attacker.
centos ssh säkerhetI det här inlägget ser vi hur du kan begränsa eller ställa in en tidsgräns för något användarkonto i Windows 10 / 8/7, med kommandot Net User. Netanvändare är ett kommandoradsverktyg som hjälper systemadministratörer till att lägga till eller ändra användarkontobeteende. Vi har redan tittat på några nätverkskommandon för administratörer, nu kan vi se hur du ställer in tidsgränser för lokala konton.
Begränsa eller ställa in tidsgräns för användarkonton
Hur man ställer in ssh-tunneling för att kringgå en brandvägg
En brandvägg är bra, men om det hindrar dig från att göra något är SSH-tunneln ett bra alternativ att utforska.
Så här ställer du in en brandvägg med brandvägg på centos 7
FirewallD är en komplett brandväggslösning som hanterar systemets iptablesregler och tillhandahåller ett D-Bus-gränssnitt för att använda dem. I den här tutorialen visar vi dig hur du ställer in en brandvägg med FirewallD på ditt CentOS 7-system och förklarar de grundläggande FirewallD-koncepten.







