Paano Mag-set up ng Mga SSH Key sa Ubuntu 20.04

How Set Up Ssh Keys Ubuntu 20



Ito ay isang walkthrough kung saan matututunan mo kung paano mag-set up ng mga SSH key sa Ubuntu 20.04. Tinitiyak ng mga susi ng SSH na ang kaligtasan ng iyong mga server at ang proseso ng pag-log in ng mga gumagamit dito ay hindi mapanganib ang seguridad nito. Ginagawa ito sa pamamagitan ng paggawa ng karaniwang sistema ng pagpapatotoo ng password bilang isang tabi.

Sa madaling sabi, ang SSH o 'secure shell' ay isang naka-encrypt na protokol, kung saan maaari kang kumonekta sa isang server nang malayuan at magkaroon ng access sa impormasyong nauugnay dito. Nagbibigay ito ng isang mas ligtas na paraan ng pag-log upang magbigay ng isang ligtas na paraan ng pag-log in nang hindi nakompromiso sa seguridad.







Hakbang 1: Lumikha ng Key Pair

Magsisimula kami sa paglikha ng isang pangunahing pares sa system ng kliyente na may root access ayon sa uri sa mga sumusunod:



$ssh-keygen



Ito ay nagpapalitaw ng pinakabagong ssh-keygen sa paglikha ng isang 3072-bit na pares ng RSA key bilang default. Maaari kang magdagdag ng flag ng –b 4086 upang makabuo ng isang mas malaking key. Pindutin ang ipasok, at itatabi nito ang pangunahing pares sa .ssh / subdirectory. Tandaan na kung ikaw ay isang panauhin sa isang server na mayroon nang naka-install na isang key, tatanungin ka ng prompt kung nais mong i-overlap ito o hindi. Kung iyon ang kaso, i-type ang 'y' upang mag-signal ng oo.





Susunod, tatanungin ka ng prompt kung nais mong magdagdag ng isang passphrase. Maaari kang mag-opt-out, ngunit inirerekumenda naming magdagdag ka ng isa. Pinapatibay nito ang security protocol sa pamamagitan ng paghahatid ng isang karagdagang layer ng proteksyon upang mag-bypass para sa isang hindi awtorisadong gumagamit.

Hakbang 2: Kopyahin ang pampublikong key sa iyong server

Susunod, kailangan naming ilipat ang pampublikong key sa iyong ubuntu server.



Maaari mong gamitin ang ssh-copy-id utility sa pamamagitan ng paggamit ng sumusunod na utos:

$ssh-copy-id username@server_host

Dapat nitong gawin ang bilis ng kamay sa loob lamang ng ilang segundo. Kung ang susi ay matagumpay na nakopya, lumipat sa pangatlong hakbang.

Minsan, nangyayari na nabigo ang paraan ng ssh-copy-id, o simpleng hindi magagamit. Sa kasong ito, kakailanganin mong kopyahin ito sa pamamagitan ng SSH na nakabatay sa password. Magagawa mo ito sa pamamagitan ng paggamit ng utos ng pusa at tiyaking idagdag ang >> simbolo upang idagdag sa nilalaman sa halip na mai-o-overlap ito.

$pusa~/.ssh/id_rsa.pub| sshremote_username@IP address ng server
'mkdir -p ~ / .ssh && cat >> ~ / .ssh /uthor_keys'

Kung ito ang kauna-unahang pagkakataon na kumokonekta ka sa isang bagong host, ipapakita sa iyo ng iyong system ang isang bagay tulad ng:

I-type lamang ang oo at pindutin ang Enter button. Pagkatapos ay ipasok ang password sa account sa pag-access ng gumagamit, at ang pampublikong key ay makopya sa iyong Ubuntu server.

Kung sakaling ang pag-access sa SSH na batay sa password ay tinanggihan sa iyo sa ilang kadahilanan na hindi ka maaaring mag-pin down, maaari mo lamang kopyahin nang manu-mano ang pampublikong key nang manu-mano. Idagdag ang ~ / .ssh / licensed_keys sa id_rsa.pub file sa iyong remote machine. Susunod, mag-log on sa iyong remote server account at suriin kung mayroon ang ~ SSH direktoryo. Kung hindi, i-type ang:

$mkdir -p~/.ssh

Ngayon mo lang idagdag ang susi:

$itinaponpublic_key_string>>~/.ssh/pinahintulutan_keys

$chmod -R punta ka na= ~/.ssh

Gayundin, tiyaking gumagamit ka ng ~ SSH / USER direktoryo at HINDI ang direktoryo ng ugat:

$chown -Ryounis: younis ~/.ssh

Hakbang 3: Patunayan ang mga SSH Key

Ang susunod na hakbang ay upang patunayan ang mga SSH key sa Ubuntu server. Una, mag-log in sa iyong remote host:

$sshusername@remote_host

Ipo-prompt sa iyo na ipasok ang passphrase key na idinagdag mo sa hakbang 2. I-type ito pababa at magpatuloy. Ang pagpapatotoo ay magtatagal, at kapag tapos na ito, dadalhin ka sa isang bagong interactive shell sa iyong Ubuntu server

Hakbang 4: Huwag paganahin ang pagpapatotoo ng password

Gamit ang mga SSH key na napatunayan, hindi mo na kailangan ang sistema ng pagpapatotoo ng password.

Kung ang pagpapatotoo ng password ay pinagana sa iyong server, magiging madaling kapitan ng pag-access sa hindi awtorisadong pag-access ng gumagamit sa pamamagitan ng pag-atake ng malupit na puwersa. Kaya't magiging mas mabuti kung hindi mo pinagana ang anumang pagpapatotoo batay sa password.

Una, suriin kung mayroon ka o nauna na ang pagpapatotoo na batay sa SSH para sa ugat account sa server na ito. Kung ito ay, dapat mo itong palitan sa sudo na may pribilehiyong pag-access ng account ng server sa server na ito, upang ang pag-access ng admin ay bukas sa iyo sakaling magkaroon ng emerhensiya o kapag ang system ay nakaharap sa ilang kahina-hinalang aktibidad.

Ang pagkakaroon ng pagbibigay ng mga pribilehiyo ng admin sa iyong remote access account, mag-log in sa remote server na may mga SSH key na may alinman sa mga pribilehiyo ng root o sudo. Pagkatapos ay gamitin ang sumusunod na utos upang ma-access ang file ng pagsasaayos ng SSH daemon:

$sudogedit/atbp/ssh/sshd_config

Sa pagbukas ng file ngayon, hanapin ang direktoryo ng ‘PasswordAuthentication’, at i-type ang sumusunod upang hindi paganahin ang pagpapatotoo ng password at mga pag-login sa SSH na nakabatay sa password.

$/atbp/ssh/sshd_config
. . .
Ang PasswordAuthentication no
. . .

Upang makita ang mga pagbabagong ito sa bisa, kailangan mong i-restart ang serbisyong sshd gamit ang sumusunod na utos:

$sudoi-restart ang systemctlssh

Bilang pag-iingat, buksan ang isang bagong window ng terminal at subukan na ang serbisyo ng SSH ay gumagana nang tama bago isara ang iyong kasalukuyang session.

Sa iyong na-verify na mga susi ng SSH, dapat mong makita ang lahat na gumagana nang normal. Maaari kang lumabas sa lahat ng kasalukuyang mga session ng server.

Konklusyon

Ngayon na mayroon kang isang SSH-key-based na pagpapatotoo na sistema sa lugar, hindi mo na kailangan ang mahina na sistema ng pagpapatotoo ng password, dahil maaari ka lamang mag-sign in nang walang isang password. Inaasahan kong nahanap mo na kapaki-pakinabang ang tutorial na ito.