Android

Paano mag-set up ng mga ssh key sa debian 9

Linux Tutorial for Beginners - 15 - SSH Key Authentication

Linux Tutorial for Beginners - 15 - SSH Key Authentication

Talaan ng mga Nilalaman:

Anonim

Ang Secure Shell (SSH) ay isang protocol ng network ng cryptographic na ginamit para sa isang ligtas na koneksyon sa pagitan ng isang kliyente at isang server at sumusuporta sa iba't ibang mga mekanismo ng pagpapatunay.

Ang dalawang pinakatanyag na mekanismo ay batay sa password at pagpapatunay na batay sa publiko-key. Ang paggamit ng SSH key ay mas ligtas at maginhawa kaysa sa tradisyunal na pagpapatunay ng password.

Sa tutorial na ito, ilalarawan namin kung paano makabuo ng mga pindutan ng SSH sa mga Debian 9 system. Ipapakita rin namin sa iyo kung paano mag-set up ng isang pagpapatunay na batay sa SSH key at kumonekta sa iyong malayong Linux server nang hindi pumapasok sa isang password.

Ang paglikha ng SSH key sa Debian

Bago makabuo ng isang bagong pares ng SSH key, suriin para sa umiiral na mga SSH key sa iyong Debian client machine. Maaari mong gawin iyon sa pamamagitan ng pagpapatakbo ng sumusunod na utos ng ls:

ls -l ~/.ssh/id_*.pub

Kung ang output ng utos sa itaas ay naglalaman ng isang bagay tulad ng No such file or directory o no matches found nangangahulugan ito na wala kang mga SSH key, at maaari kang magpatuloy sa susunod na hakbang at makabuo ng isang bagong pares ng SSH key.

Kung may mga umiiral na mga susi, maaari mong gamitin ang mga iyon at laktawan ang susunod na hakbang o backup ang mga dating key at makabuo ng mga bago.

Magsimula sa pamamagitan ng pagbuo ng isang bagong 4096 bits SSH key pares sa iyong email address bilang isang puna gamit ang sumusunod na utos:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

Ang output ay magiging katulad ng mga sumusunod:

Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

Pindutin ang Enter upang tanggapin ang default na lokasyon ng file at pangalan ng file.

Susunod, sasabihan ka na mag-type ng isang ligtas na passphrase. Kung nais mong gumamit ng passphrase, nasa iyo ito. Sa passphrase, isang dagdag na layer ng seguridad ay idinagdag sa iyong key.

Enter passphrase (empty for no passphrase):

Ang buong pakikipag-ugnay ay ganito:

Upang mapatunayan na nabuo ang pares ng SSH key, uri:

ls ~/.ssh/id_*

Ang output ay dapat magmukhang ganito:

/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub

Kopyahin ang Public Key sa Server

Ngayon na mayroon ka ng iyong SSH key pares, ang susunod na hakbang ay kopyahin ang pampublikong susi sa server na nais mong pamahalaan.

Ang pinakamadali at inirekumendang paraan upang kopyahin ang pampublikong susi sa liblib na server ay ang paggamit ng tool na ssh-copy-id .

Sa iyong lokal na makina terminal tun ang sumusunod na utos:

ssh-copy-id remote_username@server_ip_address

remote_username upang ipasok ang remote_username password:

remote_username@server_ip_address's password:

Kapag napatunayan ng gumagamit, ang pampublikong key ~/.ssh/id_rsa.pub ay idadagdag sa malayong gumagamit ~/.ssh/authorized_keys file, at ang koneksyon ay isasara.

Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'username@server_ip_address'" and check to make sure that only the key(s) you wanted were added.

Kung ang ssh-copy-id utility ay hindi magagamit sa iyong lokal na computer, maaari mong gamitin ang sumusunod na utos upang kopyahin ang pampublikong susi:

cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

Mag-login sa Server gamit ang SSH Keys

Sa puntong ito, dapat mong mag-log in sa liblib na server nang hindi sinenyasan para sa isang password.

Upang subukan ito, subukang kumonekta sa server sa pamamagitan ng SSH:

ssh remote_username@server_ip_address

Hindi pagpapagana ang pagpapatunay ng SSH Password

Upang magdagdag ng isang karagdagang layer ng seguridad sa iyong server, maaari mong paganahin ang pagpapatunay ng password para sa SSH.

Bago paganahin ang pagpapatunay ng SSH password, tiyaking maaari kang mag-log in sa iyong server nang walang password, at ang gumagamit na iyong pinapasukan ay may mga pribilehiyo ng sudo.

Mag-log in sa iyong liblib na server:

ssh sudo_user@server_ip_address

Buksan ang SSH pagsasaayos file /etc/ssh/sshd_config :

sudo nano /etc/ssh/sshd_config

Maghanap para sa mga sumusunod na direktiba at baguhin tulad ng sumusunod:

/ etc / ssh / sshd_config

PasswordAuthentication no ChallengeResponseAuthentication no UsePAM no

Kapag tapos ka na, i-save ang file at i-restart ang serbisyo ng SSH gamit ang sumusunod na utos:

sudo systemctl restart ssh

Sa puntong ito, ang pagpapatunay na nakabase sa password ay hindi pinagana.

Konklusyon

Sa tutorial na ito, nalaman mo kung paano makabuo ng isang bagong pares ng SSH key at mag-set up ng isang pagpapatunay na batay sa SSH. Maaari kang magdagdag ng parehong key sa maraming mga malayuang server.

Ipinakita namin sa iyo kung paano paganahin ang pagpapatotoo ng SSH password at magdagdag ng isang karagdagang layer ng seguridad sa iyong server.

Bilang default, nakikinig ang SSH sa port 22. Ang pagpapalit ng default na SSH port ay binabawasan ang panganib ng mga awtomatikong pag-atake.

seguridad ng debian ssh