2023-06-29 07:24AM
理解:
命令1:$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
这个命令会产生一个公钥(~/.ssh/id_rsa.pub)和密钥(~/.ssh/id_rsa),
-t dsa:表示使用密钥的加密类型,可以为'rsa'和'dsa'
-P '':表示不需要密码登录
-f ~/.ssh/id_dsa:表示密钥存放的路径为${USER}/.ssh/id_dsa
命令2:$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
将本机的公钥添加进authorized_keys中,这样允许本机通过ssh的形式免密码登录
注意使用>>,而不是>,因为如果其它主机(如A)也采用免登陆的形式登录,也可以把主机A的公钥添加到authorized_keys文件中。这样主机A就可以免登陆ssh到本机了。
step 1 制作密钥对
在客户端(本地机器)终端下输入以下命令
ssh-keygen -t [rsa|dsa]
rsa和dsa代表不同的算法
例如:
ssh-keygen -t rsa
一直回车就对了(不用设置密码)
将会生成密钥文件和私钥文件 id_rsa,id_rsa.pub(如果用dsa则生成id_dsa,id_dsa.pub)
生成位置在/root/.ssh/文件夹下(我用的是root用户所以在root下,生成过程会有提示文件位置)
.ssh 是隐藏文件夹 使用 ls -a查看
将公钥放到服务器指定位置
方法一、直接复制
1、将公钥复制到服务器的root用户下的.ssh文件夹(用哪个用户登录就复制到哪个用户下的.ssh文件夹下)
scp /root/.ssh/id_rsa.pub root@172.16.0.164:/root/.ssh/
2、安装公钥
登录到服务器cd /root/.ssh/
cat id_rsa.pub >> authorized_keys
方法二、使用ssh-copy-id命令复制(推荐)
一个命令直接就ok了
ssh-copy-id root@172.16.0.164
不需要密码就OK
现在,你可以尝试使用SSH登录目标主机,不再需要输入密码。注意,这种设置需要确保你的私钥文件(通常是`~/.ssh/id_rsa`)保持安全,不被他人获取。
登录
请登录后再发表评论。
评论列表:
目前还没有人发表评论