通过证书登录OpenWrt的ssh

必要条件

要证书登录,必须满足以下条件:

1. 在Ubuntu下通过“ssh-keygen”产生公钥和私钥文件,即“id_dsa.pub”和“id_dsa”文件;

2. OpenWrt上保存有证书的公钥,即“id_dsa.pub”里的内容(保存在“/etc/dropbear/authorized-keys”里,文件可能不存在);

3. 在Ubuntu的~/.ssh/文件夹下,有“id_dsa”文件;

4. 在Ubuntu下执行:

$ ssh root@192.168.1.20

即可自动登录。

以下为具体操作步骤

1. 通过“ssh-keygen”生成公钥和私钥

在Ubuntu上执行:

$ cd .ssh/

$ ssh-keygen -t rsa

2. 上传公钥至ssh服务

将生成的“id_rsa.pub”传到OpenWrt,然后在OpenWrt上执行:

# cat id_rsa.pub >> /etc/dropbear/authorized_keys

上面这步非常重要,请不要直接将id_rsa.pub拷贝成authorized_keys,会造成不识别证书。

3. 尝试登录

在Ubuntu下执行(假设OpenWrt的IP为192.168.1.20):

$ ssh root@192.168.1.20

即自动登录成功!

4. 保存和备份私钥

在Ubuntu上执行:

$ cd ~/.ssh/

将“id_rsa”保存好,只需要分发“id_rsa.pub”到目标即可。


通过putty来实现证书登录

“Putty”的证书是需要转换一下才能使用的。

(参考自“丶Source”同学的博客,地址为:http://blog.sina.com.cn/s/blog_4da051a60102ux9x.html

1. 下载“puttygen”

puttygen的下载地址:

http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

直接下载链接:

http://the.earth.li/~sgtatham/putty/latest/x86/puttygen.exe

2. 转换证书

打开“puttygen”,载入私钥“id_rsa”,点击“Save private key”,保存为“.ppk”格式的“putty”证书;

3. 设置、保存并连接

3.1 打开“putty”,填写地址,端口号,选择“ssh”协议;

3.2 在左侧找到“Connection”,在“Data”项,在“Auto-login username”项填写用户名;

3.3 在“SSH”->“Auth”,在“Private key file for authentication”项,点击“Browse...”,选择第2步转换的“.ppk”格式的证书;

3.4保存当前的“Session”后;

3.5 点击“Open”,即可自动登录。



本文章由作者:佐须之男 整理编辑,原文地址: 通过证书登录OpenWrt的ssh
本站的文章和资源来自互联网或者站长的原创,按照 CC BY -NC -SA 3.0 CN协议发布和共享,转载或引用本站文章应遵循相同协议。如果有侵犯版权的资 源请尽快联系站长,我们会在24h内删除有争议的资源。欢迎大家多多交流,期待共同学习进步。

相关推荐