ssh远程访问自动登录方法
前言:linux端
服务器管理往往需要频繁切换,每次切换都需要输入被访问
服务器的账号和密码。对于管理员来说也是带来一定的不便。
ssh 全称为secure shell,中文翻译为
安全外壳协议。主要用来
服务器之间提供
安全的远程登录会话,这个协议是基于运用层和传输层的基础之上。
ssh有两种认证方式:一种是通过用户名密码认证登陆,最常用的方式,但是这种方式存在暴力破解的危险。一种是通过密钥认证,更加
安全。
www.atcpu.com 在整个通讯过程中,为实现 SSH的
安全连接,
服务器端与客户端要经历如下五个阶段:
1、版本号协商阶段,SSH目前包括 SSH1和SSH2两个版本, 双方通过版本协商确定使用的版本
2、密钥和算法协商阶段,SSH支持多种加密算法, 双方根据本端和对端支持的算法,协商出最终使用的算法
3、认证阶段,SSH客户端向
服务器端发起认证请求,
服务器端对客户端进行认证
4、会话请求阶段, 认证通过后,客户端向
服务器端发送会话请求
5、交互会话阶段 ,会话请求通过后,
服务器端和客户端进行信息的交互
具体操作:
1、ssh的公钥和密钥信息存在在/root/.ssh/目录下。这个目录存放四类文件、1.公钥 2.私钥 3.已知访问账号记录 4.已认证公钥.
-rw-r--r--. 1 root root 405 6月 12 04:56 authorized_keys
-rw-------. 1 root root 1675 6月 12 04:49 id_rsa
-rw-r--r--. 1 root root 405 6月 12 04:49 id_rsa.pub
-rw-r--r--. 1 root root 391 6月 12 04:54 known_hosts
www.atcpu.com 2、首选需要用命令【ssh-keygen】生成公钥(id_rsa.pub)和密钥(id_rsa)文件。
3、把你要访问的
服务器的公钥(id_rsa.pub)拷贝到本机的/root/.ssh/目录下,修改命名为authorized_keys。
注:如果有多个被访问
服务器的公钥,只需要在文件authorized_keys最后一行添加信息。如 cat *** >>authorized_keys
4、修改ssh配置文件(/etc/ssh/sshd_config),设置公钥认证登录
将下边2行的注释去掉,重启ssh服务
RSAAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
5、ok了,赶紧试试看吧,ssh *.*.*.*(ip地址)。再试试看scp命令,是不是也不需要用户认证了呢。
注:参考
http://itercast.com it博客
视频讲解
作者 HYHOLINE