Primarni način povezave s strežnikom Linux je prek protokol SSH. Ta vrsta povezave je varna, saj so vsi podatki, ki se preko nje prenašajo šifrirani. Po vrstnem redu do vzpostaviti SSH povezavo morate ga konfigurirati na oddaljenem strežniku, s katerim se želite povezati, in odjemalca na strani uporabnika. Obstaja ogromno programske opreme za povezavo SSH. Kar zadeva Linux, je paket OpenSSH najbolj priljubljen, za Windows pa ljudje večinoma uporabljajo PuTTY.
Oglejmo si podrobneje konfiguracijo strežnika na primeru Ubuntu Server 18.04 in se nato poskusimo povezati s strežnikom iz Linuxa in Windows.
Vse, kar počnemo, bo iz računa navadnega uporabnika. V tem primeru smo ustvarili uporabnika "Michael"In"koren” račun je privzeto onemogočen.
Nastavitev na strani strežnika
Nastavite paket, ki izvaja ta ukaz:
sudo apt install openssh-server
Ko je namestitev končana, se prepričajte, da storitev deluje. Uporabite ta ukaz:
systemctl status sshd
Stanje “Aktiven (teče)” pomeni, da je storitev omogočena in deluje normalno.
Če se želite izogniti blokiranju dohodnih povezav s strani požarnega zidu, ga onemogočite, ker v tem članku ne bomo konfigurirali omrežnega požarnega zidu.
Uporabite ta ukaz:
sudo ufw disable
Na tej stopnji se že lahko povežete s strežnikom. S privzetimi nastavitvami strežnik omogoča povezavo na standardna vrata 22 z avtentikacijo na podlagi gesla.
SSH povezava iz Linuxa
Odjemalec OpenSSH je praviloma privzeto nameščen v sistemu Linux in ne zahteva dodatne ročne konfiguracije. Povezavo je mogoče vzpostaviti s terminala s pomočjo ukaza ssh. Parametra bi bila v tem primeru uporabniško ime in naslov IP oddaljenega strežnika. Na našem testnem strežniku, ki ga uporabljamo kot primer, je samo en račun »mihail«, zato bomo uporabili tega.
ssh [email protected]
Pri prvi povezavi boste morali potrditi dodajanje javnega ključa strežnika v bazo podatkov, zato odgovorite “ja". Po tem lahko vnesete geslo. Če je povezava uspešno vzpostavljena, boste videli pozdravno besedilo ukazne vrstice strežnika. Zdaj bodo vsi ukazi izvedeni neposredno na oddaljenem strežniku.
SSH iz sistema Windows
Odprite Putty in nastavite parametre povezave. Prepričajte se, da je stikalo "Vrsta povezave« se obrne na SSH. Vnesite naslov IP v »Ime gostitelja”, privzeta vrednost 22 vport"In kliknite"Odprto".
Pri prvi povezavi Kiti vas bo prosil, da potrdite, da zaupate temu strežniku, zato kliknite »Da"
Ko vnesete prijavo in geslo, boste videli ukazno vrstico oddaljenega strežnika.
Avtentikacija po ključu. Povečanje stopnje varnosti
Ko poskuša odjemalec vzpostaviti varno povezavo s strežnikom prek SSH, mora strežnik pred dovolitvijo povezave potrditi (preveriti) odjemalca. Kot smo že omenili, se običajno privzeto uporablja preverjanje pristnosti na podlagi gesla. Ne zagotavlja robustne varnosti, ker vedno obstaja način, da jo bruteforcerate. Poleg tega preverjanje pristnosti z geslom ni uporabno za povezave SSH z uporabo skriptov.
Za to vrsto nalog obstaja posebna metoda avtentikacije po ključu. Bistvo je, da odjemalec ustvari zasebne in javne ključe, nato pa se javni ključ pošlje strežniku. Po tem za povezavo s strežnikom ne potrebujete gesla, saj se avtentikacija izvaja na podlagi javnih in zasebnih ključev odjemalca. Za zagotavljanje dobre stopnje varnosti mora biti dostop do zasebnega ključa omejen. Zaradi dejstva, da je zasebni ključ shranjen na odjemalčevi strani in se ne prenaša po omrežju, je ta metoda bolj varna.
Preverjanje pristnosti s ključem v sistemu Linux
Ustvarimo javne in zasebne ključe na odjemalcu s pomočjo programske opreme ssh-keygen. Orodje bo predlagalo spremembo poti do zasebnega ključa in vneslo geslo za dodatno varnost. Pustite vse parametre privzete tako, da ob vseh zahtevah pritisnete Enter.
Posledično boste v domačem imeniku v mapi .ssh našli dve ustvarjeni datoteki: id_rsa in id_rsa.pub ki ustrezno vsebujejo zasebne in javne ključe.
Po tem boste morali strežniku poslati javni ključ. Če želite to narediti, kopirajte vsebino »id_rsa.pub»datoteka v«~/.ssh/authorized_keys" na strežniku. Pojdimo na najlažji način s pomočjo "ssh-copy-id"Orodje. Vnesite prijavo in naslov IP strežnika, tako kot v primeru običajne povezave. Ko vnesete geslo, bo javni ključ odjemalca samodejno kopiran na strežnik. Zaženite ta ukaz:
ssh-copy-id [email protected]
Ko vse to storite, strežnik ne bo več zahteval vnosa gesla.
Preverjanje pristnosti s ključem v sistemu Windows
Odprto PUTTYGEN in kliknite "Ustvarjajo". Če želite ustvariti ključe, morate samo premakniti miško čez zaslon in orodje bo naključno ustvarilo ključe.
Ko so ključi ustvarjeni, kliknite »Shrani zasebni ključ" in ga shranite v datoteko z zasebnim ključem na vašem disku. Nastavite lahko poljubno pot, vendar jo boste morali malo kasneje določiti v Putty. Nato kopirajte javni ključ z vrha okna.
Pošljimo javni ključ tako, da ga preprosto kopiramo na terminal. Odpri Kiti in se povežite s strežnikom kot običajno. Zdaj pa ustvarimo ".ssh/authorized_keys” in drugim uporabnikom omejite dostop do datoteke, tako da je na voljo samo ustvarjalcu.
mkdir .ssh
touch .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
Ko ustvarite datoteko, vanjo vstavite odjemalčev javni ključ. Na prejšnji stopnji smo kopirali javni ključ v odložišče. Za snemanje tega, kar je v odložišču, v datoteko uporabite ukaz cat in preusmeritev izhoda.
cat > .ssh/authorized_keys
Ko vnesete ukaz, kliknite desni gumb miške v terminalskem oknu in prilepite, kar je v odložišče. Za potrditev vnosa pritisnite “Ctrl + D” bližnjico in prekinite povezavo s strežnikom.
Zdaj pa določimo pot do zasebnega ključa v Putty in se ponovno povežimo s strežnikom.
Od zdaj naprej boste morali za povezavo s strežnikom vnesti le uporabniško ime. Če se poskušate povezati s strežnikom iz druge naprave, ki nima pravega zasebnega ključa, bo strežnik zahteval geslo. Ko je nastavljeno preverjanje pristnosti na podlagi ključa, lahko onemogočite dostop z geslom.