Galvenais veids, kā izveidot savienojumu ar Linux serveri, ir, izmantojot SSH protokolu . Šis savienojuma veids ir drošs, jo visi caur to pārsūtītie dati tiek šifrēti. Lai izveidotu SSH savienojumu, tas jākonfigurē attālajā serverī, ar kuru vēlaties izveidot savienojumu, un klienta pusē lietotāja pusē. SSH savienojumam ir pieejama ļoti daudz programmatūras. Linux vidē vispopulārākā ir OpenSSH pakotne, bet Windows vidē cilvēki galvenokārt izmanto PuTTY.
Sīkāk apskatīsim servera konfigurāciju, piemēram, izmantojot Ubuntu Server 18.04, un pēc tam mēģināsim izveidot savienojumu ar serveri no Linux un Windows.
Viss, ko mēs darīsim, tiks veikts no parasta lietotāja konta. Šajā gadījumā mēs izveidojām lietotāju “ mihail ”, un “ root ” konts pēc noklusējuma ir atspējots.
Servera puses iestatīšana
Iestatiet pakotni, kurā darbojas šī komanda:
sudo apt install openssh-server
Kad instalēšana ir pabeigta, pārliecinieties, vai pakalpojums darbojas. Izmantojiet šo komandu:
systemctl status sshd
Statuss “ Aktīvs (darbojas) ” nozīmē, ka pakalpojums ir iespējots un darbojas normāli.
Lai ugunsmūris nebloķētu ienākošos savienojumus, noteikti atspējojiet to, jo šajā rakstā mēs nekonfigurēsim tīkla ugunsmūri.
Izmantojiet šo komandu:
sudo ufw disable
Šajā posmā jūs jau varat izveidot savienojumu ar serveri. Ar noklusējuma iestatījumiem serveris ļauj izveidot savienojumu ar standarta portu 22 ar paroli balstītu autentifikāciju.
SSH savienojums no Linux
Parasti OpenSSH klients ir instalēts Linux pēc noklusējuma, un tam nav nepieciešama papildu manuāla konfigurēšana. Savienojumu var izveidot no termināļa, izmantojot ssh komandu. Parametri šajā gadījumā būtu attālā servera lietotājvārds un IP adrese. Mūsu testa serverī, ko izmantojam kā piemēru, ir tikai viens konts “mihail”, tāpēc mēs izmantosim šo.
ssh [email protected]
Pirmajā savienojumā jums būs jāapstiprina servera publiskās atslēgas pievienošana datubāzei, tāpēc atbildiet ar “ jā ”. Pēc tam varat ievadīt paroli. Ja savienojums ir veiksmīgi izveidots, servera komandrindā redzēsiet apsveikuma tekstu. Tagad visas komandas tiks izpildītas tieši attālinātajā serverī.
SSH no Windows
Atveriet Putty un iestatiet savienojuma parametrus. Pārliecinieties, vai slēdzis “ Connection type ” (Savienojuma veids) ir pārslēgts uz SSH . Laukā “ Host Name ” (Resursdatora nosaukums) ievadiet IP adresi , laukā “ Port” (Ports ) noklusējuma vērtību 22 un noklikšķiniet uz “ Open” (Atvērt ).
Pirmajā savienojuma reizē Putty lūgs apstiprināt, ka uzticaties šim serverim, tāpēc noklikšķiniet uz “ Jā ”.
Pēc pieteikšanās vārda un paroles ievadīšanas jūs redzēsit attālā servera komandrindu.
Autentifikācija ar atslēgu. Drošības līmeņa paaugstināšana
Kad klients mēģina izveidot drošu savienojumu ar serveri, izmantojot SSH, pirms savienojuma atļaušanas serverim ir nepieciešams autentificēt (pārbaudīt) klientu. Kā minēts iepriekš, uz paroli balstīta autentifikācija parasti tiek izmantota pēc noklusējuma. Tas nenodrošina spēcīgu drošību, jo vienmēr ir veids, kā to brutāli piespiest. Turklāt paroles autentifikācija nav piemērojama SSH savienojumiem, izmantojot skriptus.
Šāda veida uzdevumiem ir īpaša autentifikācijas metode pēc atslēgas. Lieta ir tāda, ka klients ģenerē privātās un publiskās atslēgas un pēc tam publiskā atslēga tiek nosūtīta serverim. Pēc tam nav nepieciešama parole, lai izveidotu savienojumu ar serveri, jo autentifikācija tiek veikta, pamatojoties uz publiskajām un privātajām klienta atslēgām. Lai nodrošinātu labu drošības līmeni, piekļuve privātajai atslēgai ir jāierobežo. Tā kā privātā atslēga tiek glabāta klienta pusē un netiek pārsūtīta caur tīklu, šī metode tiek uzskatīta par drošāku.
Autentifikācija ar atslēgu operētājsistēmā Linux
Ģenerēsim klienta publiskās un privātās atslēgas ar utilīta ssh-keygen palīdzību. Rīks ieteiks mainīt ceļu uz privāto atslēgu un ievadīt ieejas frāzi, lai nodrošinātu papildu drošību. Pēc noklusējuma atstājiet visus parametrus, pie visiem pieprasījumiem nospiežot taustiņu Enter.
Rezultātā mājas direktorijā .ssh mapē atradīsiet divus ģenerētus failus: id_rsa un id_rsa.pub , kas satur attiecīgi privāto un publisko atslēgu.
Pēc tam jums būs jānosūta publiskā atslēga uz serveri. Lai to izdarītu, nokopējiet faila “ id_rsa.pub ” saturu servera failā “ ~/.ssh/authorized_keys ”. Izmēģināsim vienkāršāko ceļu, izmantojot rīku “ ssh-copy-id ”. Ievadiet servera lietotājvārdu un IP adresi, tāpat kā parasta savienojuma gadījumā. Pēc paroles ievadīšanas klienta publiskā atslēga tiks automātiski kopēta uz serveri. Palaidiet šo komandu:
ssh-copy-id [email protected]
Kad tas viss būs izdarīts, serverim vairs nebūs jāievada parole.
Autentifikācija ar atslēgu operētājsistēmā Windows
Atveriet PUTTYGEN un noklikšķiniet uz “ Ģenerēt ”. Lai ģenerētu atslēgas, vienkārši pārvietojiet peli virs ekrāna, un rīks nejauši ģenerēs atslēgas.
Pēc atslēgu ģenerēšanas noklikšķiniet uz “ Saglabāt privāto atslēgu ” un saglabājiet to failā ar privāto atslēgu savā diskā. Varat iestatīt jebkuru vēlamo ceļu, bet nedaudz vēlāk tas būs jānorāda programmā Putty. Pēc tam nokopējiet publisko atslēgu no loga augšdaļas.
Nosūtīsim publisko atslēgu, vienkārši kopējot to terminālī. Atveriet Putty un izveidojiet savienojumu ar serveri kā parasti. Tagad izveidosim “ .ssh/authorized_keys ” un ierobežosim citu lietotāju piekļuvi failam, lai tas būtu pieejams tikai tā veidotājam.
mkdir .ssh
touch .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
Pēc faila izveides ievietojiet tajā klienta publisko atslēgu. Iepriekšējā posmā mēs kopējām publisko atslēgu starpliktuvē. Lai failā ierakstītu starpliktuvē esošo saturu, izmantojiet komandu cat un izvades novirzīšanu.
cat > .ssh/authorized_keys
Pēc komandas ievadīšanas ar peles labo pogu noklikšķiniet termināļa logā un ielīmējiet starpliktuvē esošo informāciju. Lai apstiprinātu ievadi, nospiediet īsinājumtaustiņu “ Ctrl+D ” un atvienojieties no servera.
Tagad norādīsim ceļu uz privāto atslēgu programmā Putty un atkal izveidosim savienojumu ar serveri.
Turpmāk, lai izveidotu savienojumu ar serveri, jums būs jāievada tikai lietotājvārds. Ja mēģināt izveidot savienojumu ar serveri no citas ierīces, kurai nav īstās privātās atslēgas, serveris pieprasīs paroli. Kad uz atslēgu balstīta autentifikācija ir iestatīta, varat liegt piekļuvi, izmantojot paroli.