File tree 2 files changed +5
-3
lines changed
2 files changed +5
-3
lines changed Original file line number Diff line number Diff line change 15
15
< meta property ="og:description " content ="SSHSSH(Secure Shell )是一种网络协议,用于计算机之间的加密登录。
16
16
公钥登录公钥(Public Key)与私钥(Private Key)是通过一种算法得到的一个密钥对(即一个公钥和一个私钥),公钥是密钥对中公开的部分,私钥则是非公开的部分。所谓”公钥登录”,原理很简单,就是用户将自己的公钥储存在远程主机上。登录的时候,远程主机会向用户发送一段随机字符串,用户用自己的私钥加密后,再 ">
17
17
< meta property ="og:image " content ="http://dn-yuankeqiang.qbox.me/0F6F97CD-7321-47A2-872A-5D881797572D.png?imageView/2/w/500 ">
18
- < meta property ="og:updated_time " content ="2016-03-31T08:19:14 .000Z ">
18
+ < meta property ="og:updated_time " content ="2016-04-01T03:24:17 .000Z ">
19
19
< meta name ="twitter:card " content ="summary ">
20
20
< meta name ="twitter:title " content ="SSH免密码登录 ">
21
21
< meta name ="twitter:description " content ="SSHSSH(Secure Shell )是一种网络协议,用于计算机之间的加密登录。
@@ -237,7 +237,8 @@ <h3 id="SSH">SSH</h3><p>SSH(Secure Shell )是一种网络协议,用于计
237
237
< h3 id ="公钥登录 "> 公钥登录</ h3 > < p > 公钥(Public Key)与私钥(Private Key)是通过一种算法得到的一个密钥对(即一个公钥和一个私钥),公钥是密钥对中公开的部分,私钥则是非公开的部分。< br > 所谓”公钥登录”,原理很简单,就是用户将自己的公钥储存在远程主机上。登录的时候,远程主机会向用户发送一段随机字符串,用户用自己的私钥加密后,再发回来。远程主机用事先储存的公钥进行解密,如果成功,就证明用户是可信的,直接允许登录shell,不再要求密码。</ p >
238
238
< h3 id ="具体步骤 "> 具体步骤</ h3 > < h5 id ="1-_通过ssh-keygen生成秘钥 "> 1. 通过ssh-keygen生成秘钥</ h5 > < pre > < code > < span class ="variable "> $ </ span > ssh-keygen -t rsa
239
239
</ code > </ pre > < p > -t指定加密类型为rsa,运行该命令以后,会在$HOME/.ssh/目录下,会新生成两个文件:id_rsa和id_rsa.pub。前者是你的私钥,后者是你的公钥。< br > < img src ="http://dn-yuankeqiang.qbox.me/0F6F97CD-7321-47A2-872A-5D881797572D.png?imageView/2/w/500 " alt ="袁克强的博客 "> </ p >
240
- < h6 id ="2-_复制公钥到远程服务器 "> 2. 复制公钥到远程服务器</ h6 > < pre > < code > $ scp id_rsa< span class ="class "> .pub</ span > root@myhost< span class ="class "> .com</ span > :~/.ssh/id_rsa.pub
240
+ < h6 id ="2-_复制公钥到远程服务器 "> 2. 复制公钥到远程服务器</ h6 > < p > 复制到/home/$USER/.ssh (.ssh目录不存在则创建一个,< strong > 保证.ssh和authorized_keys都只有用户自己有写权限,否则验证无效: chmod 700 -R .ssh</ strong > ) </ p >
241
+ < pre > < code > $ scp id_rsa< span class ="class "> .pub</ span > root@myhost< span class ="class "> .com</ span > :~/.ssh/id_rsa.pub
241
242
</ code > </ pre > < h6 id ="3-_将公钥保存到authorized_keys文件 "> 3. 将公钥保存到authorized_keys文件</ h6 > < p > 登录远程服务器后,将公钥保存到authorized_keys文件。 </ p >
242
243
< pre > < code > $ cd ~/< span class ="class "> .ssh</ span >
243
244
$ cat id_rsa< span class ="class "> .pub</ span > >> authorized_keys
Original file line number Diff line number Diff line change @@ -223,7 +223,8 @@ <h3 id="SSH">SSH</h3><p>SSH(Secure Shell )是一种网络协议,用于计
223
223
< h3 id ="公钥登录 "> 公钥登录</ h3 > < p > 公钥(Public Key)与私钥(Private Key)是通过一种算法得到的一个密钥对(即一个公钥和一个私钥),公钥是密钥对中公开的部分,私钥则是非公开的部分。< br > 所谓”公钥登录”,原理很简单,就是用户将自己的公钥储存在远程主机上。登录的时候,远程主机会向用户发送一段随机字符串,用户用自己的私钥加密后,再发回来。远程主机用事先储存的公钥进行解密,如果成功,就证明用户是可信的,直接允许登录shell,不再要求密码。</ p >
224
224
< h3 id ="具体步骤 "> 具体步骤</ h3 > < h5 id ="1-_通过ssh-keygen生成秘钥 "> 1. 通过ssh-keygen生成秘钥</ h5 > < pre > < code > < span class ="variable "> $ </ span > ssh-keygen -t rsa
225
225
</ code > </ pre > < p > -t指定加密类型为rsa,运行该命令以后,会在$HOME/.ssh/目录下,会新生成两个文件:id_rsa和id_rsa.pub。前者是你的私钥,后者是你的公钥。< br > < img src ="http://dn-yuankeqiang.qbox.me/0F6F97CD-7321-47A2-872A-5D881797572D.png?imageView/2/w/500 " alt ="袁克强的博客 "> </ p >
226
- < h6 id ="2-_复制公钥到远程服务器 "> 2. 复制公钥到远程服务器</ h6 > < pre > < code > $ scp id_rsa< span class ="class "> .pub</ span > root@myhost< span class ="class "> .com</ span > :~/.ssh/id_rsa.pub
226
+ < h6 id ="2-_复制公钥到远程服务器 "> 2. 复制公钥到远程服务器</ h6 > < p > 复制到/home/$USER/.ssh (.ssh目录不存在则创建一个,< strong > 保证.ssh和authorized_keys都只有用户自己有写权限,否则验证无效: chmod 700 -R .ssh</ strong > ) </ p >
227
+ < pre > < code > $ scp id_rsa< span class ="class "> .pub</ span > root@myhost< span class ="class "> .com</ span > :~/.ssh/id_rsa.pub
227
228
</ code > </ pre > < h6 id ="3-_将公钥保存到authorized_keys文件 "> 3. 将公钥保存到authorized_keys文件</ h6 > < p > 登录远程服务器后,将公钥保存到authorized_keys文件。 </ p >
228
229
< pre > < code > $ cd ~/< span class ="class "> .ssh</ span >
229
230
$ cat id_rsa< span class ="class "> .pub</ span > >> authorized_keys
You can’t perform that action at this time.
0 commit comments