SSH认证使用RSA密钥认证免密码登录方法


一:安装SSH服务

安装方法:

apt-get install ssh

        安装完成后验证是否SSH安装成功,验证方法:

        在命令行模式下执行命令:

ssh -v

        有显示ssh版本证明成功:

2015-01-25/54c46d4d1faf9.jpg

二:Server服务端

        查看Server端用户目录下是否存在隐藏目录".ssh",如果是root用户,那么进入相应的用户目录查看即可,如果没有需要新建目录.

        检查完毕后可生成公钥秘钥,建立方法如下:

ssh-keygen

        执行过程中,它先要求你确认保存公钥的位置(默认为:.ssh/id_rsa),然后它会让你重复输入一个密码两次,如果不想在使用公钥的时候输入密码,可以留空,执行完毕后,就会生成数据Client端的一对密钥.

SSH 密钥默认储存在用户目录下的 .ssh 目录中,看有没有用 id_rsa 和 id_rsa.pub 来命名的一对文件,有 .pub 后缀的文件就是公钥,另一个文件则是密钥。

        生成的一对公私钥,顾名思义:公钥是公开的,不需要保密,而私钥是由个人自己持有,并且必须妥善保管和注意保密。

三:将Client客户端的公钥添加到用于认证的Server服务端的公钥文件中

        首先检查Server端需要认证的用户目录下,隐藏目录“ssh”目录下是否存在一个名为“authorized_keys”的文件,若不存在,使用命令:touch authorized_keys 创建一个空文件.

执行步骤如下:

1,将Clinet客户端公钥的内容复制

2,将复制到的Client客户端公钥内容,粘贴至Server服务端刚才创建的 authorized_keys 文件中,保存文件。

3,更改 authorized_keys 文件的权限

执行命令:

chmod 600  authorized_keys

最后保存,重启

sudo /etc/init.d/ssh restart

好了,大功告成了.

四:如果需要禁止SSH密码登录的方式,只使用key登录,那么可以这样做

vi /etc/ssh/sshd_config
RSAAuthentication yes
#RSA认证
PubkeyAuthentication yes
#开启公钥验证
AuthorizedKeysFile    .ssh/authorized_keys
#验证文件路径 
PasswordAuthentication no
#禁止密码认证
PermitEmptyPasswords no
#禁止空密码
UsePAM no
#禁用PAM

最后保存,重启

sudo /etc/init.d/ssh restart





上一篇 下一篇

评论



分享

我的公众号

恩波的公众号

最新加入

最新评论

恩波: 你是抓app客户端么?如果客户端做了证书验证,用此类抓包https的方法是无法成功的,很多app已经做了此类防范抓包了 查看原文 12月07日 11:19
Buke: 网上看了一大把教程,还有什么死活就是抓包不了https之类的,无非网上解决的方式就是证书重装,删了,重来...试了N次,http没有问题,但是https就是抓取的host那一列,tunnel to都加锁了,看不到具体的参数..实在试了N多方式,答主知道是什么问题吗? 查看原文 12月06日 19:51
蜉蝣: 微信无法连入,配置失败 查看原文 11月26日 01:22
天意: 可以要个源码吗? heize@qq.com,谢谢! 查看原文 11月03日 16:59
叫我金夫人有糖吃: 现在还有邀请码吗????1104190614@qq.com 求求求 查看原文 07月30日 10:45

赞助商