Pagrindinis būdas prisijungti prie „Linux“ serverio yra per SSH protokolą . Šis ryšio tipas yra saugus, nes visi juo perduodami duomenys yra užšifruojami. Norėdami užmegzti SSH ryšį, turite jį sukonfigūruoti nuotoliniame serveryje, prie kurio norite prisijungti, ir kliento pusėje. Yra daugybė programinės įrangos, skirtos SSH ryšiui. Kalbant apie „Linux“, populiariausias yra „OpenSSH“ paketas, o „Windows“ sistemoje žmonės dažniausiai naudoja „PuTTY“.
Pažvelkime atidžiau į serverio konfigūraciją naudodami Ubuntu Server 18.04 kaip pavyzdį, tada pabandykite prisijungti prie serverio iš Linux ir Windows.
Viską darysime iš paprasto vartotojo paskyros. Šiuo atveju sukūrėme vartotoją „ mihail “, o „ root “ paskyra pagal numatytuosius nustatymus yra išjungta.
Serverio pusės nustatymas
Nustatykite paketą, kuriame vykdoma ši komanda:
sudo apt install openssh-server
Baigę diegti, įsitikinkite, kad paslauga veikia. Naudokite šią komandą:
systemctl status sshd
Būsena „ Aktyvi (veikia) “ reiškia, kad paslauga įjungta ir veikia normaliai.
Kad ugniasienė neblokuotų įeinančių ryšių, būtinai ją išjunkite, nes šiame straipsnyje tinklo užkardos konfigūruosime.
Naudokite šią komandą:
sudo ufw disable
Šiame etape jau galite prisijungti prie serverio. Naudodami numatytuosius nustatymus serveris leidžia prisijungti prie standartinio 22 prievado su slaptažodžiu pagrįstu autentifikavimu.
SSH ryšys iš Linux
Paprastai OpenSSH klientas yra įdiegtas Linux pagal numatytuosius nustatymus ir nereikalauja papildomos rankinės konfigūracijos. Ryšį galima užmegzti iš terminalo ssh komandos pagalba. Parametrai šiuo atveju būtų vartotojo vardas ir nuotolinio serverio IP adresas. Mūsų bandomajame serveryje, kurį naudojame kaip pavyzdį, yra tik viena paskyra „mihail“, todėl naudosime ją.
ssh [email protected]
Pirmą kartą prisijungdami turėsite patvirtinti serverio viešojo rakto pridėjimą prie duomenų bazės, todėl atsakykite „ taip “. Po to galėsite įvesti slaptažodį. Jei ryšys bus sėkmingai užmegztas, serverio komandinėje eilutėje pamatysite pasveikinimo tekstą. Dabar visos komandos bus vykdomos tiesiogiai nuotoliniame serveryje.
SSH iš Windows
Atidarykite „Putty“ ir nustatykite ryšio parametrus. Įsitikinkite, kad jungiklis „ Ryšio tipas “ yra nustatytas į SSH . Įveskite IP adresą į laukelį „ Host Name “, numatytąją reikšmę „ Port “ lauke – 22 ir spustelėkite „ Atidaryti “.
Pirmą kartą prisijungus, „Putty“ paprašys patvirtinti, kad pasitikite šiuo serveriu, todėl spustelėkite „ Taip “.
Įvedę prisijungimo vardą ir slaptažodį, pamatysite nuotolinio serverio komandų eilutę.
Autentifikavimas raktu. Saugumo lygio didinimas
Kai klientas bando užmegzti saugų ryšį su serveriu per SSH, prieš leisdamas prisijungti, serveris turi autentifikuoti (patikrinti) klientą. Kaip minėta anksčiau, slaptažodžiu pagrįstas autentifikavimas paprastai naudojamas pagal numatytuosius nustatymus. Tai neužtikrina tvirto saugumo, nes visada yra būdas tai padaryti žiauriai. Be to, slaptažodžio autentifikavimas netaikomas SSH ryšiams naudojant scenarijus.
Šio tipo užduotims yra specialus autentifikavimo pagal raktą metodas. Esmė ta, kad klientas generuoja privačius ir viešuosius raktus, o tada viešasis raktas siunčiamas į serverį. Po to prisijungti prie serverio nereikia slaptažodžio, nes autentifikavimas atliekamas pagal viešuosius ir privačius kliento raktus. Siekiant užtikrinti gerą saugumo lygį, prieiga prie privataus rakto turėtų būti apribota. Kadangi privatus raktas yra saugomas kliento pusėje ir neperduodamas per tinklą, manoma, kad šis metodas yra saugesnis.
Autentifikavimas raktu Linux sistemoje
Sugeneruokime viešuosius ir privačius kliento raktus naudodami ssh-keygen programinę įrangą. Įrankis pasiūlys pakeisti kelią į privatųjį raktą ir įvesti slaptafrazę, kad būtų užtikrintas didesnis saugumas. Palikite visus parametrus pagal numatytuosius nustatymus, paspausdami Enter visoms užklausoms.
Todėl pagrindiniame kataloge, .ssh aplanke, rasite du sugeneruotus failus: „id_rsa“ ir „id_rsa.pub“ , kuriuose atitinkamai yra privatusis ir viešasis raktai.
Po to turėsite nusiųsti viešąjį raktą į serverį. Norėdami tai padaryti, nukopijuokite failo „ id_rsa.pub “ turinį į serveryje esantį failą „ ~/.ssh/authorized_keys “. Pabandykime lengviausiu būdu – naudodami įrankį „ ssh-copy-id “. Įveskite serverio prisijungimo vardą ir IP adresą, kaip ir įprasto ryšio atveju. Įvedus slaptažodį, kliento viešasis raktas bus automatiškai nukopijuotas į serverį. Paleiskite šią komandą:
ssh-copy-id [email protected]
Kai visa tai padarysite, serveriui nebereikės įvesti slaptažodžio.
Autentifikavimas raktu sistemoje Windows
Atidarykite „PUTTYGEN“ ir spustelėkite „ Generuoti “. Norėdami sugeneruoti raktus, tiesiog užveskite pelės žymeklį ant ekrano, ir įrankis atsitiktinai sugeneruos raktus.
Sugeneravus raktus, spustelėkite „ Išsaugoti privatųjį raktą “ ir išsaugokite jį diske esančiame faile su privačiuoju raktu. Galite nurodyti bet kokį kelią, bet šiek tiek vėliau turėsite jį nurodyti programoje „Putty“. Tada nukopijuokite viešąjį raktą iš lango viršaus.
Nusiųskime viešąjį raktą tiesiog nukopijuodami jį į terminalą. Atidarykite „Putty“ ir prisijunkite prie serverio kaip įprasta. Dabar sukurkime „ .ssh/authorized_keys “ ir apribokime kitų vartotojų prieigą prie failo, kad jis būtų prieinamas tik kūrėjui.
mkdir .ssh
touch .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
Sukūrę failą, įdėkite į jį viešąjį kliento raktą. Ankstesniame etape mes nukopijavome viešąjį raktą į mainų sritį. Norėdami įrašyti, kas yra iškarpinėje, į failą, naudokite komandą cat ir išvesties peradresavimą.
cat > .ssh/authorized_keys
Įvedę komandą, terminalo lange spustelėkite dešinįjį pelės mygtuką ir įklijuokite iškarpinėje esantį tekstą. Norėdami patvirtinti įvestį, paspauskite „ Ctrl+D “ spartųjį klavišą ir atsijunkite nuo serverio.
Dabar nurodykime kelią iki privataus rakto „Putty“ ir vėl prisijunkite prie serverio.
Nuo šiol, norėdami prisijungti prie serverio, turėsite įvesti tik vartotojo vardą. Jei bandote prisijungti prie serverio iš kito įrenginio, kuriame nėra tinkamo privataus rakto, serveris paprašys slaptažodžio. Kai nustatomas raktu pagrįstas autentifikavimas, galite neleisti prieigą naudojant slaptažodį.