This’s a article show you howto use pubkey authtication under CentOS. Ok, let’s continue.
First, we need enable Pubkey Authtication.
uncomment and modify these lines below:
PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys PasswordAuthentication no
save file and quit vi. what we did is tell ssh daemon to use PubkeyAuthentication instead of traditional PasswordAuthenrication. avoid middleman attack.
right now restart ssh daemon service.use command below:
service sshd restart
Second, generate our pubkey through this command
ssh-keygen. and i think you should have a good habit, when you find an unknown well command, you should use man to understand and know it.
ssh-keygen -t dsa
okay, follow instructions to complete your key generation.
right now we have 2 files under
id_dsa.pub. what should we do next? set proper permission and rename iddsa.pub to authorizedkeys.
mv /home/USERNAME/.ssh/id_dsa.pub /home/USERNAME/.ssh/authorized_keys chmod 644 /home/USERNAME/.ssh/authorized_keys chmod 700 /home/USERNAME/.ssh
After that, download your id_dsa for secureCRT by any SFTP clients or scp. Well, right now we have done with Server’s work. Below it’ll show you how to use pubkey to log in your Server.
Open SecureCRT, Click “New Session”, fill with your server’s ip, specified port, your username, click ok to close dialog window. Then, right click the session you created just now, click Properties, and choose SSH2 Category on the left, authentication area, uncheck PasswordAuthentication, single click “PublicKey”, then click “Properties”, “Use Identify or certificate file”, browser your id_dsa downloaded just now, click ok to close dialog.
Well, i think you can connect to your server without any password. Of course, for secure reason, you still need set passphrase and keep your files iddsa and iddsa.pub safe. Hypothetically, if you have more then one server, you can use your id_dsa.pub as many as you wish.