Giunsa ang Pag-configure sa SSH Passwordless Authentication sa RHEL 9


Mubo alang sa Secure Shell, ang SSH usa ka luwas nga network protocol nga nag-encrypt sa trapiko tali sa duha ka endpoints. Gitugotan niini ang mga tiggamit nga luwas nga magkonektar ug/o magbalhin sa mga file sa usa ka network.

Ang SSH kasagarang gigamit sa mga tigdumala sa network ug sistema aron luwas nga ma-access ug madumala ang mga hilit nga kabtangan sama sa mga server ug mga aparato sa network sa usa ka network. Gigamit niini ang lig-on nga mga pamaagi sa pag-encrypt sama sa AES ug mga algorithm sa hashing sama sa SHA-2 ug ECDSA aron ma-encrypt ang trapiko nga gibaylo tali sa usa ka kliyente ug usa ka hilit nga sistema.

[ Tingali ganahan ka usab: Unsaon Pagsiguro ug Paggahi sa OpenSSH Server ]

Gipatuman sa SSH ang duha ka pamaagi sa pag-authenticate; panghimatuud nga gibase sa password ug panghimatuud sa yawe sa publiko. Ang naulahi mas gipalabi tungod kay naghatag kini og mas maayo nga seguridad gamit ang public key authentication nga nanalipod sa sistema batok sa brute force nga mga pag-atake.

Uban niana sa hunahuna, among ipakita kung giunsa nimo ma-configure ang SSH key-based authentication sa RHEL 9.

Mao ni ang hitsura sa among setup

  • Usa ka Linux/UNIX (Ubuntu-based o RHEL-based) nga sistema diin atong mabuhat ang key pair. Alang niini nga giya, akong gigamit ang Ubuntu distribution.
  • Usa ka pananglitan sa RHEL 9 ( Kini nga panganod usa ka on-premise o cloud VPS).

Lakang 1: Paghimo sa ECDSA SSH Key Pair

Pag-access sa imong Linux system ug paghimo sa SSH key pair sama sa mosunod. Niini nga giya, atong himoon ang key pair gamit ang ECDSA algorithm nga naghatag ug mas maayong encryption ug seguridad.

Busa, aron makamugna ang ECDSA key pair, padagana ang command:

$ ssh-keygen -t ecdsa

Ang mando maggiya kanimo pinaagi sa usa ka serye sa mga pag-aghat.

Sa kasagaran, ang yawe nga pares gitipigan sa direktoryo sa balay sa user sulod sa ~/.ssh nga direktoryo. Mahimo nimong dawaton kini ingon nga destinasyon sa pares sa SSH key pinaagi sa pagpindot sa ENTER sa keyboard, kung dili, mahimo nimong ipiho ang imong gusto nga agianan. Niini nga giya, nakahukom kami nga moadto sa default nga agianan.

Sunod, aghaton ka nga maghatag usa ka passphrase. Sa panguna kini usa ka password nga kinahanglan nimo nga ihatag sa pag-establisar og koneksyon sa hilit nga sistema sa RHEL 9. Naghatag kini usa ka dugang nga layer sa proteksyon sa ibabaw sa encryption nga gitanyag sa mga yawe sa SSH.

Bisan pa, kung ang imong plano mao ang pag-automate sa mga proseso sa proteksyon sa SSH o pag-configure sa walay password nga pag-authenticate, girekomenda nga biyaan kini nga blangko. Ug busa, atong biyaan kini nga blangko pinaagi sa, sa makausa pa, pag-igo sa ENTER.

Sa ubos mao ang output sa command runtime.

Mahimo nimong tan-awon ang pares sa SSH key gamit ang ls command sama sa gipakita.

$ ls -l ~/.ssh

Ang id_ecdsa mao ang pribado nga yawe samtang ang id_ecdsa.pub mao ang publiko nga yawe. Ang pribado nga yawe kinahanglan kanunay magpabilin nga sekreto ug dili kinahanglan ipaambit o ibutyag ni bisan kinsa. Sa laing bahin, ikaw adunay kagawasan sa pagpaambit sa publiko sa bisan unsang hilit nga sistema nga gusto nimong ikonektar.

Lakang 2: Kopyaha ang Public SSH Key sa Remote RHEL 9

Ang sunod nga lakang mao ang pagkopya sa yawe sa publiko sa hilit nga RHEL 9 nga pananglitan. Mahimo nimo kini sa manwal nga paagi o gamit ang ssh-copy-id command-line tool. Tungod kay ang ulahi mas sayon ug mas sayon gamiton, gamita kini gamit ang mosunod nga syntax.

$ ssh-copy-id [email 

Sa among kaso, ang command mao ang mosunod diin ang tecmint mao ang regular nga login user ug ang 192.168.254.129 mao ang IP address sa remote user.

$ ssh-copy-id [email 

I-type ang oo aron magpadayon sa pagkonektar. Dayon ihatag ang password sa remote user ug pindota ang ENTER.

Ang public key makopya sa authorized_keys file sa ~/.ssh directory sa home directory sa remote user. Kung makopya na ang yawe, mahimo ka na nga mag-login sa hilit nga RHEL 9 nga pananglitan gamit ang pag-authenticate sa publiko nga yawe.

PAHINUMDOM: Sa RHEL 9, ang pag-login sa ugat sa SSH gi-disable o gibalibaran sa default. Kini alang sa maayong mga hinungdan - gipugngan niini ang usa ka tig-atake sa pag-log in gamit ang root account nga maghatag kaniya sa tanan nga mga pribilehiyo sa sistema. Busa ang pagkopya sa yawe sa publiko sa sistema sa RHEL ingon nga gamut mapakyas.

Kung kinahanglan nimo nga mag-log in ingon gamut, kinahanglan nimo nga i-edit ang default nga pagsumpo sa SSH sama sa mosunod.

$ sudo vim /etc/ssh/sshd_config

Sunod, itakda ang PermitRootLogin attribute sa yes ug i-save ang mga pagbag-o ug paggawas sa file.

Aron magamit ang mga pagbag-o nga gihimo, i-restart ang serbisyo sa SSH.

$ sudo systemctl restart ssh

Lakang 3: I-verify ang SSH Public Key Authentication

Karon atong kumpirmahon ang panghimatuud sa yawe sa publiko. Aron mahimo kini, pag-log in sama sa mosunod.

$ ssh [email 

Niining higayona, dili ka maaghat alang sa usa ka password ug ihulog ka diretso sa hilit nga RHEL 9 shell sama sa gipakita. Mahimo usab nimo nga pamatud-an ang presensya sa authorized_keys file sama sa nahisgutan sa sayo pa.

$ ls -l ~/.ssh 

Mahimo usab nimo nga tan-awon ang cryptographic public key file gamit ang cat command.

$ cat ~/.ssh/authorized_keys

Sa desktop sa Linux diin namugna namo ang SSH keys, usa ka file nga gitawag ug known_hosts ang namugna sa ~/.ssh directory. Naglangkob kini sa fingerprint sa tanan nga layo nga mga server nga konektado sa sistema.

Niini nga giya, malampuson namong na-configure ang SSH key-based authentication sa RHEL 9. Giabiabi pag-ayo ang imong feedback.