Hur man fjärrstyra en Linux-server med SSH
Serverhantering är fortfarande en nödvändig och ibland besvärlig uppgift. Det är särskilt svårt med fjärrservrar eller huvudlösa servrar. Tack och lov finns det Secure Shell (SSH). Secure Shell är ett nätverksprotokoll som gör att nätverkstjänster kan köras över ett osäkert nätverk.
SSH har massor av funktionalitet. Det finns en anledning att det är en go-to för fjärrserverhantering. Lär dig hur du fjärrstyrer en Linux-server via SSH, från anslutning till installation av programvara och filöverföringar.
Vad är SSH?
SSH står för Secure Shell. Det är ett krypterat nätverksprotokoll. Med SSH kan du få terminalåtkomst och utföra olika kommandoradsfunktioner. Det finns också sätt att hantera en Linux-server med grafisk åtkomst. Det här är verkligen användbart för filöverföringar, särskilt när du inte vill eller kan inte komma ihåg en exakt filväg.
När du använder SSH för att hantera en fjärransluten Linux-server behöver du några saker. Först måste du förbereda din server för att acceptera SSH-anslutningar. På enheterna du kommer att ansluta från behöver du någon form av SSH-programvara. För att logga in på en server med SSH måste du känna till serverns IP-adress. Men logga in via SSH med en IP-adress fungerar bara om du är på samma lokala nätverk som servern. Om du befinner dig utanför ditt nätverk kan du ställa in en port framåt för att komma åt en server med SSH var som helst. Du kan lära dig mer om SSH i den här nybörjarguiden för att ställa in SSH på Linux Nybörjarhandbok för att ställa in SSH på Linux och testa din installationsbeginnersguide för att ställa in SSH på Linux och testa din inställning Förmodligen en av de viktigaste Linux-verktygen att lära dig är SSH eftersom du kan styra en annan maskin som om du satt direkt vid den. Vi tar dig igenom en grundläggande installation. Läs mer .
Förbereder din server för att acceptera SSH
Innan du börjar hantera din Linux-server via SSH måste du förbereda din server för att tillåta SSH-anslutningar. Jag har en huvudlös dedikerad Plex media server. Om jag saknar en bildskärm och kringutrustning använder jag SSH för att hantera min server. När jag installerar eller uppdaterar programvara och överför filer, sätter jag bara SSH på min server. Min exakta inställning är en ThinkServer TS140 som kör Ubuntu 16.04 LTS. Beroende på din hårdvaru- och Linux-distribution kan prepping för SSH variera något.
För att förbereda din Linux-server för att acceptera inkommande anslutningar måste du installera ett fjärrloggningsverktyg för SSH-protokollet. En av de vanligaste är OpenSSH. På Debians baserade utdelningar är OpenSSH tillgängligt via huvudregistren. Öppna en ny terminal (Ctrl + Alt + T) och ange följande kommando:
sudo apt-get uppdatering
Detta utför en uppdatering och säkerställer att du har de senaste repositoriesna. Innan du fortsätter installera OpenSSH, kolla även på eventuella uppgraderingar. I en terminal kör:
sudo apt-get uppgradering
När du har uppdaterat och uppgraderat öppnar du en ny kommandorad och skriver in:
sudo apt-get install openssh-server
Konfigurera SSH-inställningarna för din server
När Open SSH har installerats serverns sida kan du redigera grundläggande konfigurationsinformation. Dra upp en ny terminal och ange följande sträng för att öppna SSH-konfigurationsfilen:
sudo nano / etc / ssh / sshd_config
Här kan du ange olika inställningar. Som standard kommer din SSH-server att fungera på port 22. Så, till exempel, kan du manuellt ändra porten från 22 till en port som du väljer. Dessutom kan du öka säkerheten genom att ange ett maximalt inloggningsnummer. Under raden, hitta raden MaxAuthTries. Du kan ange vilket nummer som helst här. Så för att göra ett maximalt inloggningsförsök av fyra, skriv:
MaxAuthTries 4
Efter installationen av OpenSSH ska SSH-servern vara igång. Men för att kontrollera, öppna bara en terminal och springa:
sudo service ssh status
Detta ska returnera ett meddelande som SSH är aktiverat. För att starta SSH, öppna en kommandorad och skriv in:
sudo service ssh starta
Och för att stoppa SSH från att springa, kör:
sudo service ssh stop
Få åtkomst till en Linux-server via SSH
Nu när SSH är installerat och kört, kan du ansluta på distans. Om du loggar in på en Linux-server på distans, behöver du serverns IP-adress. Detta borde vara 192.168.0.x. Beväpnad med Linux-serverns IP-adress, behöver du också ett sätt att logga in via SSH från en annan maskin. Det finns flera metoder för att logga in på distans med SSH.
Använda SSH på Unix-baserade operativsystem
Om du använder ett Unix-baserat system som Linux, MacOS eller FreeBSD, är SSH tillgängligt i kommandoraden. I en terminal kör:
ssh [fjärrvärden]
... där [fjärrvärden] är den IP-adress du använder. Om ditt användarnamn skiljer sig från fjärrsystemet kan du ange exakt användarnamnet genom att ange:
ssh [fjärr användarnamn] @ [fjärrvärden]
Efter att du har skrivit in det här frågar du om du vill fortsätta att ansluta. Då blir du uppmanad att ange ditt användarnamn och sedan begärt ditt lösenord.
Om du vill hoppa över kommandoraden helt och hållet kan du logga in på din Linux-server via nätverket. På en Linux-maskin, navigera till Anslut till servern och skriv in din ssh: // [IP-adress]. Du kommer att bli ombedd att ange ditt användarnamn och lösenord.
Den största fördelen med den här metoden är att du ska ha fullständig grafisk mappnavigering. Detta kallas SSH File Transfer Protocol, eller SFTP. Detta gör filöverföringar mycket enklare. Eftersom min Linux-server är en dedikerad Plex-server, använder jag vanligtvis SFTP, om inte jag utför uppdateringar.
SSH Med PuTTY
Om du använder en PC eller Mac behöver du en SSH-klient. PuTTY är förmodligen den mest kända SSH-klienten. Installera PuTTY på din dator, MacOS eller Linux-maskin. Med PuTTY öppen, se under Session och i rutan märkt Värdnamn, ange din IP-adress. Var noga med att ange rätt port. Om du använder standardvärdet, lämna det som 22.
Nu ska du se en terminal med en inloggningsprompning. Ange ditt Linux-användarnamn här.
När du har skrivit in ditt användarnamn kommer du bli uppmanad till ett lösenord om du har din Linux-server lösenordsskyddad. Ange det och du bör se ett välkomstmeddelande med information om ditt system och en kommandorad som du skulle se på din Linux-server.
Alternativa SSH-klienter
Även om PuTTY är den mest populära SSH-klienten, finns det många alternativ. Min toppval är Bitvise (endast Windows). Anledningen? Det innehåller inte bara kommandoradsgränssnittet för fjärrstyrning av en Linux-server via SSH, men SFTP-funktioner. Således är den perfekt för både filöverföringar och generell hantering. När jag bara behöver uppdatera eller utföra en omstart använder jag Bitvise SSH Client för kommandoradsåtkomst. Men för filöverföringar använder jag det grafiska gränssnittet.
Gilla med PuTTY eller starta SSH via kommandoraden på Linux måste du ange din IP-adress, användarnamn och lösenord.
Du får en snabb fråga om du vill acceptera sessionen. Du kan acceptera för just den sessionen eller spara för framtida användning. Därefter kommer du att bli ombedd att skriva in lösenordet till din Linux-server som du hanterar på distans.
Plug in det och Bitvise öppnar både en kommandorad och ett grafiskt SSH-fönster.
SFTP-fönstret gör hanteringen av filöverföringar enkelt, plus det finns den traditionella SSH-kommandoraden för många funktioner.
Hur kan du hantera en fjärr Linux-server med SSH
Okej, bra! SSH är konfigurerat både på servern och den enhet som du ska använda för att hantera din server. Så vad kan du faktiskt göra? Något som är möjligt med Linux-kommandoraden. Vissa vanliga uppgifter du kan förforma är programinstallationer, uppdateringar, omstartar, kopierar filer och till och med kör GUI-applikationer. Du kan till exempel kopiera filer med följande kommandon:
scp [fjärrvärden]: [lokal fil] [målkatalog]
scp [lokal fil] [fjärrvärden]: [destinationskatalog]
Installera programvara innebär bara att plugga in rätt kommando. När jag installerade Plex på min huvudlösa TS140 via SSH skrev jag till exempel bara:
sudo apt-get installera plexmedia-server -y
På samma sätt, för att säga att skapa en WordPress-server, skulle du bara följa installationsdetaljerna, men via en SSH-kommandorad.
Vad du sannolikt beror på servern och vad den används till. När jag kör en huvudlös dedikerad Plex-server, är det mesta av vad jag använder SSH och SFTP för filöverföringar med tillfälliga programuppdateringar. Jag har också använt SSH för att komma åt loggfiler och kör riktmärken för att testa CPU-prestanda. Om du kör en webbserver kanske du vill säkerhetskopiera din webbplats med SSH-kommandoraden. Så säkerhetskopierar du din webbplats via SSH-kommandoraden. Så säkerhetskopierar du din webbplats via SSH-kommandoraden. Att säkerhetskopiera din webbplats eller blogg kan vara en dyr och svår uppgift, som kräver en mängd olika plugins eller ytterligare planer från din värdleverantör - men det behöver inte vara riktigt. Om du har SSH ... Läs mer. Kolla in denna snabbprimer till Linux-kommandoraden En snabbguide för att komma igång med Linux-kommandoraden En snabbguide för att komma igång med Linux-kommandoraden Du kan göra massor av fantastiska saker med kommandon i Linux och det är verkligen inte svårt att lära . Läs mer och dessa tre platser för att hjälpa dig att utvecklas till en Linux-kommandoradsmästare. Toppa webbplatser och böcker för att omvandla dig till en Linux Command Line Hero. Toppa webbplatser och böcker för att omvandla dig till en Linux Command Line Hero Linux-kommandoraden är ett extremt kraftfullt verktyg - men det kan också vara skrämmande. Använd dessa webbplatser och böcker för att ta hand om det. Läs mer .
SSH: Hitta fjärrkontrollen
Om du kör en Linux-server är SSH ett utmärkt sätt att hantera det på distans. Du behåller fullständig kommandoradsstyrning och kan även köra GUI-appar och utföra filöverföringar. Det finns nära gränslösa möjligheter till vad du kan uppnå när du hanterar en fjärr Linux-server via SSH. Du kan ställa in en filserver, mediaserver, Linux-spelserver Allt du behöver bygga en spelserver på Linux Allt du behöver bygga en spelserver på Linux Sedan starten har spel nästan alltid varit roligare med flera spelare, en övning som har flyttats online. För att vara värd för en onlineturnering måste du konfigurera din egen spelserver med Linux. Läs mer, och mer. Du kan till och med hantera en huvudlös Raspberry Pi Ställa in din Raspberry Pi för huvudlös användning med SSH Ställa in din Raspberry Pi för huvudlös användning med SSH Raspberry Pi kan acceptera SSH-kommandon när de är anslutna till ett lokalt nätverk (antingen via Ethernet eller Wi-Fi) , så att du enkelt kan konfigurera den. Fördelarna med SSH går utöver att störa den dagliga skärningen ... Läs mer server med SSH. Dessutom är många SSH-klientprogram överplattform.
Hur använder du SSH och vilken typ av server hanterar du?
Utforska mer om: Linux.