通过公钥进行ssh连接
                    目录
                    
                
                
            这篇文章介绍了使用ssh公钥连接设备的方法
            注意
        
        注1、建议使用1.2法二在本地生成密钥。
        1 生成密钥
1.1 法一:在设备生成密钥[不推荐]
我们先正常的ssh连接到设备,输入如下命令,然后一直回车,生成密钥。
ssh-keygen -m PEM -t rsa -b 4096
然后我们进入自己家目录下的.ssh文件夹。
cd .ssh
如果输入ls命令可以看到生成了两个文件,id_rsa和id_rsa.pub,id_rsa.pub就是我们的公钥文件,我们用如下命令将公钥保存在验证文件中。
cat id_rsa.pub >> authorized_keys
然后我们分别授予验证文件和.ssh文件夹对应的读写权限
chmod 600 authorized_keys
chmod 700 ~/.ssh
然后我们将私钥文件id_rsa下载到本地,用我们的ssh工具导入私钥文件,进行连接尝试。
 
1.2 法二:在本地生成密钥
我们Win+R再打开的界面输入cmd回车,然后输入如下命令,一直回车生成密钥。
ssh-keygen -m PEM -t rsa -b 4096
然后我们正常ssh连接到设备,然后创建并进入.ssh文件夹
mkdir -p .ssh && cd .ssh
然后创建authorized_keys验证文件
nano authorized_keys
在c盘下的用户文件夹,自己用户名的文件夹,.ssh文件夹,将里面的id_rsa.pub文件右键打开方式,使用记事本打开,将全部内容复制到authorized_keys内,并保存退出。
然后我们分别授予验证文件和.ssh文件夹对应的读写权限
chmod 600 authorized_keys
chmod 700 ~/.ssh
然后我们可以直接断开连接,然后ssh到设备查看是否需要密码,如已经不再需要密码直接连接,公钥即已经配置好了。
我们也可以在任意支持ssh连接的软件导入.ssh文件夹内的私钥文件id_rsa即可实现直接连接。
2 关闭ssh的账号密码登陆
我们尝试公钥连接成功后,我们关闭ssh的密码连接,我们打开ssh的配置文件
sudo nano /etc/ssh/sshd_config
我们找到#PasswordAuthentication yes这行,将其修改为
PasswordAuthentication no
然后保存退出,重启sshd配置生效
sudo service sshd restart
3 结语
到此我们要保存好自己的私钥文件,导入私钥文件后即可链接到ssh。