Linux laptop na nagpapakita ng isang prompt ng shell

Isaalang-alang ang cybersecurity at gamitin ang mga SSH key upang ma-access ang mga malalayong logins. Ang mga ito ay isang mas ligtas na paraan upang kumonekta kaysa sa mga password. Ipinapakita namin sa iyo kung paano makabuo, mag-install, at gumamit ng mga pindutan ng SSH sa Linux.

Ano ang Maling Sa Mga Password?

Ang secure na shell (SSH) ay ang naka-encrypt na protocol na ginamit upang mag-log in sa mga account ng gumagamit sa malayong Linux o Unix na tulad ng mga computer. Karaniwan ang nasabing mga account sa gumagamit ay ligtas gamit ang mga password. Kapag nag-log in ka sa isang malayong computer, dapat mong ibigay ang pangalan ng gumagamit at password para sa account na iyong nai-log in.

Ang mga password ay ang pinaka-karaniwang paraan ng pag-secure ng pag-access sa mga mapagkukunan ng computing. Sa kabila nito, ang seguridad na nakabase sa password ay may mga bahid nito. Ang mga tao ay pumili ng mga mahina na password, nagbabahagi ng mga password, gumamit ng parehong password sa maraming mga system, at iba pa.

Ang mga SSH key ay mas ligtas, at sa sandaling naka-set up ito, madali silang gamitin bilang mga password.

Ano ang Gumagawa ng Secure ng SSH Keys?

Ang mga pindutan ng SSH ay nilikha at ginagamit nang pares. Ang dalawang mga susi ay naka-link at secure ang cryptograpically. Ang isa ay ang iyong pampublikong susi, at ang isa pa ay ang iyong pribadong susi. Ang mga ito ay nakatali sa iyong account sa gumagamit. Kung maraming mga gumagamit sa isang solong computer ang gumagamit ng SSH key, makakatanggap sila ng bawat isa sa kanilang mga pares ng mga susi.

Ang iyong pribadong key ay naka-install sa iyong home folder (karaniwan), at ang pampublikong susi ay naka-install sa malayong computer — o mga computer — na kakailanganin mong ma-access.

Ang iyong pribadong key ay dapat na panatilihing ligtas. Kung naa-access ito sa iba, nasa parehong posisyon ka na parang natuklasan nila ang iyong password. Ang isang makatwirang-at lubos na inirerekomenda - pag-iingat ay para sa iyong pribadong key na mai-encrypt sa iyong computer ng isang matatag na passphrase.

Ang pampublikong susi ay maaaring malayang ibinahagi nang walang kompromiso sa iyong seguridad. Hindi posible upang matukoy kung ano ang pribadong susi mula sa isang pagsusuri ng pampublikong susi. Ang pribadong key ay maaaring mag-encrypt ng mga mensahe na tanging ang pribadong key ay maaaring mag-decrypt.

Kapag gumawa ka ng isang kahilingan sa koneksyon, ang remote computer ay gumagamit ng kopya ng iyong pampublikong key upang lumikha ng isang naka-encrypt na mensahe. Ang mensahe ay naglalaman ng isang session ID at iba pang metadata. Tanging ang computer na nagtataglay ng pribadong key - ang iyong computer - ang maaaring i-decrypt ang mensaheng ito.

Na-access ng iyong computer ang iyong pribadong key at decrypts ang mensahe. Pagkatapos ay ipinapadala nito ang sariling naka-encrypt na mensahe pabalik sa malayong computer. Sa gitna ng iba pang mga bagay, ang naka-encrypt na mensahe na ito ay naglalaman ng session ID na natanggap mula sa malayong computer.

Alam ng malayuang computer na ngayon na dapat mong sabihin na ikaw ay dahil lamang sa iyong pribadong key na maaaring kunin ang session Id mula sa mensahe na ipinadala nito sa iyong computer.

Siguraduhin na Maaari mong ma-access ang Remote Computer

Tiyaking maaari mong madaling kumonekta, at mag-log in, ang malayong computer. Pinatunayan nito na ang iyong pangalan ng gumagamit at password ay may isang wastong account na naka-set up sa remote na computer at tama ang iyong mga kredensyal.

Huwag subukang gumawa ng anuman sa mga pindutan ng SSH hanggang sa napatunayan mo na maaari mong gamitin ang SSH gamit ang mga password upang kumonekta sa target na computer.

Sa halimbawang ito, ang isang tao na may isang account sa gumagamit na tinatawag na dave ay naka-log in sa isang computer na tinatawag na howtogeek. Pupunta silang kumonekta sa isa pang computer na tinatawag na Sulaco.

Pinasok nila ang sumusunod na utos:

ssh dave @ sulaco
ssh dave @ sulaco sa isang window window

Tatanungin sila para sa kanilang password, ipinasok ito, at konektado sila sa Sulaco. Ang kanilang command line ay agad na nagbago upang kumpirmahin ito.

gumagamit ng dave konektado sa sulaco gamit ang ssh at isang password

Iyon lang ang kumpirmasyon na kailangan namin. Kaya maaaring idiskonekta ng dave ng gumagamit mula sa Sulaco sa exit utos:

labasan
naka-disconnect ang dave ng gumagamit mula sa sulaco

Natatanggap nila ang disconnect na mensahe at ang kanilang command line prompt ay bumalik sa dave @ howtogeek.

RELATED: Paano Kumonekta sa isang SSH Server mula sa Windows, macOS, o Linux

Paglikha ng Pares ng SSH Keys

Ang mga tagubiling ito ay nasubok sa Ubuntu, Fedora, at Manjaro na pamamahagi ng Linux. Sa lahat ng mga kaso ay magkapareho ang proseso, at hindi na kailangang mag-install ng anumang bagong software sa alinman sa mga machine ng pagsubok.

Upang makabuo ng iyong mga pindutan ng SSH, i-type ang sumusunod na utos:

ssh-keygen
ssh-keygen sa isang window window

Magsisimula ang proseso ng henerasyon. Tatanungin ka kung saan nais mong maimbak ang iyong mga susi sa SSH. Pindutin ang Enter key upang tanggapin ang default na lokasyon. Ang mga pahintulot sa folder ay mai-secure ito para sa iyong paggamit lamang.

Ang pagkumpirma ng lokasyon ng ssh key storage sa isang terminal window

Hihilingin ka ngayon para sa isang passphrase. Lalakas naming pinapayuhan ka na magpasok ng isang passphrase dito. At tandaan kung ano ito! Maaari mong pindutin ang Enter upang walang passphrase, ngunit hindi ito isang magandang ideya. Ang isang passphrase na binubuo ng tatlo o apat na hindi magkakaugnay na mga salita, magkadikit ay gagawa ng isang napakalakas na passphrase.

Prompt para sa passphrase sa isang window ng terminal

Hihilingin kang ipasok ang parehong passphrase nang isang beses upang mapatunayan na na-type mo ang naisip mong na-type.

Ang mga SSH key ay nabuo at nakaimbak para sa iyo.

Nakumpleto ang henerasyon ng mga key at random na art na ipinapakita sa isang window window

Maaari mong balewalain ang "randomart" na ipinapakita. Ang ilang mga malayuang computer ay maaaring magpakita sa iyo ng kanilang mga random art sa tuwing kumonekta ka. Ang ideya ay makikilala mo kung nagbago ang random art, at maging kahina-hinala ang koneksyon dahil nangangahulugan ito na binago ang mga susi ng SSH para sa server na iyon.

Pag-install ng Public Key

Kailangan naming i-install ang iyong pampublikong susi sa Sulaco, ang malayong computer, upang malaman na ang pampublikong susi ay pag-aari mo.

Ginagawa namin ito gamit ang command na ssh-copy-id. Ang utos na ito ay gumagawa ng isang koneksyon sa malayong computer tulad ng regular na utos ng ssh, ngunit sa halip na pahintulutan kang mag-log in, inililipat nito ang pampublikong SSH key.

ssh-copy-id dave @ sulaco
ssh-copy-id dave @ sulaco

Bagaman hindi ka nag-log in sa remote na computer, dapat mo pa ring patunayan ang paggamit ng isang password. Ang malayuang computer ay dapat tukuyin kung aling gumagamit ng account ang bagong susi ng SSH.

Tandaan na ang password na dapat mong ibigay dito ay ang password para sa account ng gumagamit na iyong na-log in. Hindi ito ang passphrase na nilikha mo lamang.

ssh-copy-id na may password prompt ina terminal window

Kapag napatunayan ang password, inililipat ng ssh-copy-id ang iyong pampublikong susi sa malayong computer.

Babalik ka sa command prompt ng iyong computer. Hindi ka naiwan na konektado sa malayong computer.

matagumpay na mailipat ang pulic key sa isang window window

Pagkonekta gamit ang SSH Keys

Sundin natin ang mungkahi at subukang kumonekta sa malayong computer.

ssh dave @ sulaco
ssh dave @ sulaco sa isang window window

Dahil ang proseso ng koneksyon ay mangangailangan ng pag-access sa iyong pribadong key, at dahil naingatan mo ang iyong mga susi ng SSH sa likod ng isang passphrase, kakailanganin mong ibigay ang iyong passphrase upang ang koneksyon ay maaaring magpatuloy.

kahon ng dialog ng kahilingan ng passphrase

Ipasok ang iyong passphrase at mag-click sa pindutan ng I-Unlock.

Kapag naipasok mo ang iyong passphrase sa isang terminal session, hindi mo na kailangang ipasok muli ito hangga't nabuksan mo ang terminal window na iyon. Maaari kang kumonekta at mag-disconnect mula sa maraming mga libing session na gusto mo, nang hindi na muling ipinasok ang iyong passphrase.

Maaari mong tiktikan ang checkbox para sa "Awtomatikong i-unlock ang key na ito tuwing naka-log in ako" na pagpipilian, ngunit bawasan nito ang iyong seguridad. Kung iniwan mo ang iyong computer na walang pag-aalaga, maaaring may makakonekta sa mga malalayong computer na mayroong iyong susi sa publiko.

Kapag ipinasok mo ang iyong passphrase, nakakonekta ka sa malayong computer.

koneksyon sa remote computer sa isang window ng terminal

Upang mapatunayan ang proseso sa sandaling higit pang pagtatapos upang tapusin, idiskonekta ang exit command at muling kumonekta sa malayong computer mula sa parehong window ng terminal.

ssh dave @ sulaco
ssh key na koneksyon at pagkakakonekta sa isang window ng terminal

Makakakonekta ka sa liblib na computer nang hindi nangangailangan ng isang password o passphrase.

Walang mga password, Ngunit Pinahusay na Seguridad

Ang mga eksperto sa cybersecurity ay nag-uusap tungkol sa isang bagay na tinatawag na security friction. Iyan ang menor de edad na sakit na kailangan mong tiyakin upang makuha ang karagdagang seguridad. Mayroong karaniwang ilang dagdag na hakbang o dalawa na kinakailangan upang magpatibay ng isang mas ligtas na pamamaraan ng pagtatrabaho. At ang karamihan sa mga tao ay hindi gusto nito. Mas gusto nila ang mas mababang seguridad at ang kakulangan ng alitan. Ito ay kalikasan ng tao.

Sa mga pindutan ng SSH, nakakakuha ka ng mas mataas na seguridad at isang pagtaas sa kaginhawaan. Iyon ay isang tiyak na win-win.