SSH单向无密码访问

来源:互联网 发布:php strcamp == 编辑:程序博客网 时间:2024/05/20 05:04

ssh免密码登录

post by rocdk890 / 2011-12-20 20:43 Tuesday linux技术
发表评论
   最近在服务器与服务器之间传文件,老是输入密码让我很烦躁,决定采用ssh key的方式来进行无密码互传,好了,看教程吧.
  系统:centos 5.4
  客户机A:192.168.1.253
  远端主机B:192.168.1.254
 原理:密钥相当于一把钥匙,而公钥就相当于一把门锁,我们当然是拿着钥匙去开锁,同样的道理,我们密钥放在本地服务器,也就是客户机A,把公钥放在远程服务器,也就是远端主机B,那么我们就可以从客户机A ssh免密码登陆远端主机B.

1.如果用户主目录下没有.ssh文件夹,可以执行以下命令

点击查看原图

点击查看原图

点击查看原图

2.在客户机以root用户执行下述命令:

ssh-keygen -t rsa (连续三次回车,即在本地生成了公钥和私钥,不设置密码)

点击查看原图

该命令将在用户的主目录/.ssh目录下面产生一对密钥
点击查看原图

一般采用的ssh的rsa密钥:
id_rsa     私钥
id_rsa.pub 公钥
后面的rsa是加密方式,下述命令产生不同类型的密钥
ssh-keygen -t dsa
ssh-keygen -t rsa
ssh-keygen -t rsa1

3.把公钥传到远端主机B的.ssh文件夹下
scp root@192.168.1.253:/root/.ssh/id_rsa.pub /root/.ssh/

点击查看原图
mv id_rsa.pub authorized_keys

4.操作完毕,登陆检查.
到客户机A执行ssh 192.168.1.254
点击查看原图
可以看到登录成功!
ps:
1.默认启用公钥认证及密码认证(Secure Shell Client 登录不了,用 SecureCRT 5.0 没问题)
2.如果ssh连接缓慢可以修改/etc/ssh/sshd_config,设置GSSAPIAuthentication no,同时设置UseDNS no,问题解决.
原创粉丝点击