Die primêre manier om aan 'n Linux-bediener te koppel, is deur SSH protokol. Hierdie tipe verbinding is veilig, want al die data wat daardeur oorgedra word, is geïnkripteer. In volgorde om SSH-verbinding tot stand te bring jy moet dit konfigureer op die afgeleë bediener waarmee jy wil koppel, en die kliënt aan die gebruiker se kant. Daar is 'n ton sagteware vir SSH-verbinding. Wat Linux betref, is die OpenSSH-pakket die gewildste en vir Windows gebruik mense meestal PuTTY.
Kom ons kyk van naderby na bedienerkonfigurasie deur Ubuntu Server 18.04 as voorbeeld te gebruik, en probeer dan om vanaf Linux en Windows aan die bediener te koppel.
Alles wat ons doen sal van 'n gewone gebruiker se rekening wees. In hierdie geval het ons 'n gebruiker geskep "mihail", En"wortel”-rekening is by verstek gedeaktiveer.
Bedienerkant-opstelling
Stel die pakket op wat hierdie opdrag uitvoer:
sudo apt install openssh-server
Nadat die installasie voltooi is, maak seker dat die diens aan die gang is. Gebruik hierdie opdrag:
systemctl status sshd
Status "Aktief (hardloop)” beteken dat die diens geaktiveer is en normaal werk.
Om te verhoed dat inkomende verbindings deur die firewall geblokkeer word, maak seker dat jy dit deaktiveer, want ons gaan nie netwerk-firewall in hierdie artikel opstel nie.
Gebruik hierdie opdrag:
sudo ufw disable
Op hierdie stadium kan jy reeds aan die bediener koppel. Met verstekinstellings laat bediener verbinding met die standaardpoort 22 toe met wagwoordgebaseerde verifikasie.
SSH-verbinding vanaf Linux
As 'n reël is OpenSSH-kliënt by verstek op Linux geïnstalleer en vereis nie addisionele handkonfigurasie nie. Verbinding kan vanaf terminale tot stand gebring word met behulp van ssh-opdrag. Parameters in hierdie geval sal die gebruikernaam en IP-adres van die afgeleë bediener wees. Op ons toetsbediener wat ons as voorbeeld gebruik, is daar net een rekening "mihail", so ons sal dit gebruik.
ssh [email protected]
By die eerste verbinding sal jy die toevoeging van die bediener se publieke sleutel tot die databasis moet bevestig, so reageer "ja". Daarna kan jy die wagwoord invoer. As verbinding suksesvol gemaak is, sal jy 'n welkomsteks van die bediener se opdragreël sien. Nou sal al die opdragte direk op die afgeleë bediener uitgevoer word.
SSH vanaf Windows
Maak Putty oop en stel verbindingsparameters in. Maak seker dat die skakelaar “Verbindingstipe” word na gedraai SSH. Voer die IP-adres in in "Gasheernaam”-veld, verstekwaarde 22 in “Port"En klik"Opening".
By die eerste verbinding Putty sal jou vra om te bevestig dat jy hierdie bediener vertrou, so klik "Ja"
Nadat u die login en wagwoord ingevoer het, sal u die opdragreël van die afgeleë bediener sien.
Stawing deur sleutel. Toenemende vlak van sekuriteit
Wanneer 'n kliënt probeer om 'n veilige verbinding met die bediener te bewerkstellig deur SSH, voordat die verbinding toegelaat word, wat die bediener vereis om die kliënt te verifieer (verifieer). Soos voorheen genoem, word wagwoordgebaseerde verifikasie gewoonlik by verstek gebruik. Dit bied nie robuuste sekuriteit nie, want daar is altyd 'n manier om dit bruteforce te maak. Boonop is wagwoordverifikasie nie van toepassing op SSH-verbindings met die gebruik van skrifte nie.
Vir hierdie tipe take is daar 'n spesiale verifikasiemetode per sleutel. Die punt is dat die kliënt private en publieke sleutels genereer en dan word publieke sleutel na die bediener gestuur. Daarna het jy nie 'n wagwoord nodig om aan die bediener te koppel nie, want stawing word uitgevoer op grond van publieke en private kliëntsleutels. Om 'n goeie vlak van sekuriteit te bied, moet toegang tot die private sleutel beperk word. Vanweë die feit dat die private sleutel aan die kliënt se kant gestoor word en nie deur die netwerk oorgedra word nie, word geglo dat hierdie metode veiliger is.
Stawing deur sleutel op Linux
Kom ons genereer publieke en private sleutels op die kliënt met behulp van ssh-keygen-nutsprogrammatuur. Die instrument sal voorstel dat die pad na die private sleutel verander word en 'n wagwoordfrase vir ekstra sekuriteit invoer. Los al die parameters by verstek deur Enter by alle versoeke te druk.
As gevolg hiervan, in die tuisgids in die .ssh-lêergids sal jy twee lêers vind wat gegenereer is: id_rsa en id_rsa.pub wat dienooreenkomstig private en publieke sleutels bevat.
Daarna sal jy die publieke sleutel na die bediener moet stuur. Om dit te kan doen, kopieer die inhoud van die "id_rsa.pub"lêer in"~/.ssh/authorized_keys"-lêer op die bediener. Kom ons gaan die maklikste manier met die hulp van "ssh-kopie-id"-instrument. Voer login en IP-adres van die bediener in, net soos in geval met gewone verbinding. Nadat jy wagwoord ingevoer het, sal die publieke sleutel van die kliënt outomaties na die bediener gekopieer word. Voer hierdie opdrag uit:
ssh-copy-id [email protected]
Nadat u dit alles gedoen het, sal die bediener nie meer 'n wagwoord hoef in te voer nie.
Stawing deur sleutel op Windows
Opening PUTTYGEN en klik "GenereerOm die sleutels te genereer, hoef jy net jou muis oor die skerm te beweeg en die instrument sal die sleutels lukraak genereer.
Nadat die sleutels gegenereer is, klik op "Stoor privaat sleutel” en stoor dit in die lêer met private sleutel op jou skyf. Jy kan enige pad stel wat jy wil, maar 'n bietjie later sal jy dit in Putty moet spesifiseer. Kopieer dan die publieke sleutel vanaf die bokant van die venster.
Kom ons stuur die publieke sleutel deur dit eenvoudig na die terminale te kopieer. Maak oop Putty en koppel aan die bediener soos gewoonlik. Kom ons skep nou ".ssh/authorized_keys” en beperk die ander gebruikers om toegang tot die lêer te kry, sodat dit slegs vir die skepper beskikbaar is.
mkdir .ssh
touch .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
Nadat u die lêer geskep het, plaas die kliënt se publieke sleutel daarin. In die vorige stadium het ons publieke sleutel na knipbord gekopieer. Om op te teken wat in die knipbord is na die lêer, gebruik cat command en output redirection.
cat > .ssh/authorized_keys
Nadat jy die opdrag ingevoer het, klik met die regtermuisknoppie in die terminale venster en plak wat in die knipbord is. Om die invoer te bevestig, druk "Ctrl + D” kortpad en ontkoppel van die bediener.
Kom ons spesifiseer nou die pad na die private sleutel in Putty en koppel weer aan die bediener.
Van nou af hoef jy net jou gebruikersnaam in te voer om aan die bediener te koppel. As jy probeer om aan die bediener te koppel vanaf 'n ander toestel wat nie die regte private sleutel het nie, sal die bediener wagwoord versoek. Nadat sleutelgebaseerde stawing opgestel is, kan jy toegang per wagwoord weier.