用密碼登錄總是不大安全的,最大的問(wèn)題就是總是要修改密碼,,那么你能有多少密碼呢,,用密鑰的話,隔斷時(shí)間重新生成密鑰,免去了想密碼的煩惱,。
基本方法是在客戶端生成自己的私鑰和密鑰,,將客戶端生成的密鑰傳到服務(wù)端的密鑰文件里,配置下服務(wù)器用密鑰登錄,,就完成了,。
以下以centos為服務(wù)器,客戶端為windows,,用putty
1.先用密碼登錄,,在用戶目錄下建立目錄.ssh,將此目錄的權(quán)限設(shè)置為700,,然后在此目錄下建立一個(gè)新文件authorized_keys
[root@test1 .ssh]# chmod 600 authorized_keys ##這一部是必須的
2.配置服務(wù)器,,去掉密碼登錄,使用密鑰登錄
- vi /etc/ssh/sshd_config
- Protocol 2
- PasswordAuthentication no
- PubkeyAuthentication yes ##使用key登錄
- AuthorizedKeysFile .ssh/authorized_keys ##key的名字
3.然后就可以用客戶端的私鑰來(lái)登錄了,,這樣客戶端的公鑰被添加到服務(wù)器上的哪個(gè)用戶文件里,,就可以擁有哪個(gè)用戶的權(quán)限。
這樣其實(shí)很好解釋?zhuān)闪藘蓚€(gè)文件,,這兩個(gè)文件可以互為驗(yàn)證,。你先用密碼登錄,然后你就被驗(yàn)證過(guò)了,,你將客戶端的一個(gè)公鑰導(dǎo)入當(dāng)前用戶,,那么這個(gè)公鑰對(duì)應(yīng)的客戶端私鑰就有了這個(gè)用戶的權(quán)限(因?yàn)槟阋呀?jīng)用密碼登錄過(guò)了)。
4.客戶端用puttygen生成密鑰
打開(kāi)puttygen,,點(diǎn)擊generate,,然后開(kāi)始生成密鑰,需要不斷移動(dòng)鼠標(biāo),,生成客戶端的私鑰和公鑰,,
如公鑰保存為key_pub,私鑰保存為key_private.ppk ,,把上邊文本框里的內(nèi)容復(fù)制到linux服務(wù)器的
authorized_keys里面,,不要直接用key_pub里面的內(nèi)容,否則可能出現(xiàn)
Putty證書(shū)登陸出現(xiàn)server refused our key問(wèn)題5.上傳客戶端客戶端的公鑰到服務(wù)端,,也就是將key_pub里的內(nèi)容添加到authorized_keys里
6.完成后重啟,,完成服務(wù)器的配置
7.使用,客戶端用putty的時(shí)候,,點(diǎn)擊SSH-Auth,,選擇剛才生成的私鑰,然后就可以免密碼登錄了,。
---------------------------來(lái)個(gè)不華麗的分割線-----------------------------
附linux下生成密鑰對(duì)的過(guò)程
1.首先在服務(wù)器上生成密鑰(當(dāng)前是哪個(gè)用戶,,生成的就是這個(gè)用戶的密鑰,,我先用root來(lái))
- [root@test1 .ssh]# ssh-keygen -t rsa
- Generating public/private rsa key pair.
- Enter file in which to save the key (/root/.ssh/id_rsa): ##直接回車(chē)
- Enter passphrase (empty for no passphrase): ##先不輸入密碼
- Enter same passphrase again: ##不輸入密碼
- Your identification has been saved in /root/.ssh/id_rsa.
- Your public key has been saved in /root/.ssh/id_rsa.pub.
- The key fingerprint is:
- e0:21:b6:16:08:30:e2:c9:ad:a4:d0:be:00:b0:2f:ea root@test1.frady.info
- [root@test1 .ssh]# ls
- id_rsa id_rsa.pub##自動(dòng)生成兩個(gè)文件
- [root@test1 .ssh]# mv id_rsa.pub authorized_keys ##重命名密鑰,保持和/etc/sshd/sshd_config里的名稱(chēng)一致
參考:http://www.cnblogs.com/ggjucheng/archive/2012/08/19/2646346.html