Linux ssh免密登录
2016-06-16 17:07
337 查看
linux跨服务器命令调用(scp,ssh等)都需要输入密码, 为了使一键安装脚本能够更顺畅, 设置免密登录是必要的. 下面列出步骤(参考自: 来源):
把公钥放到B的(~/.ssh/authorized_keys)文件中, 自己保留好私钥.
在使用ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配.如果匹配成功就可以登录了。
把id_rsa.pub追加到授权的key里面去(.ssh/authorized_keys)
修改authorized_keys的权限为600(-rw——-)
修改ssh配置文件,去掉如图中的三行注释(约第48行)
重启ssh服务,测试链接
A机器上密钥对已做好,且ssh也配置好.现在把公钥发送给服务器B
重复上述 第3和第4步: 修改权限,去掉注释, 然后重启ssh服务
回到A上 ,
主要原理
在A上创建一对公私钥 (公钥文件:~/.ssh/id_rsa.pub; 私钥文件:~/.ssh/id_rsa)。把公钥放到B的(~/.ssh/authorized_keys)文件中, 自己保留好私钥.
在使用ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配.如果匹配成功就可以登录了。
步骤
假设 服务器A 要免密登录 服务器B在服务器A上:
ssh-keygen -t rsa -P ” 直接回车生成密钥对:id_rsa和id_rsa.pub把id_rsa.pub追加到授权的key里面去(.ssh/authorized_keys)
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
修改authorized_keys的权限为600(-rw——-)
chmod 600 ~/.ssh/authorized_keys
修改ssh配置文件,去掉如图中的三行注释(约第48行)
vim /etc/ssh/sshd_config
重启ssh服务,测试链接
service sshd restart ssh localhost #查看连接本机是否成功
A机器上密钥对已做好,且ssh也配置好.现在把公钥发送给服务器B
scp ~/.ssh/id_rsa.pub root@服务器B的ip:~/ #把id_rsa.pub发送到B的/root目录下
在服务器B上:
登录B, 把发送过来的id_rsa.pub追加到authorized_keys 上(注意chmod 700 .ssh权限)cat ~/id_rsa.pub >> ~/.ssh/authorized_keys #追加公钥到授权key中 rm ~/id_rsa.pub #保险起见,删除公钥
重复上述 第3和第4步: 修改权限,去掉注释, 然后重启ssh服务
回到A上 , ssh B的ip
应该可以了
相关文章推荐
- Linux下的常用性能查询命令top、vmstat、gprof、pidstat
- 手把手教你调试Linux C++ 代码
- centos安装snort
- linux php编译安装
- 查看所有系统环境变量
- centos6.6 安装htop
- Centos6.4下安装Ganglia监控hadoop
- linux根-文件系统-目录管理-文件管理-用户及权限详解-用户组-用户管理-权限管理
- centos6.6 安装 glances
- linux重启系统
- Mac/Linux多版本Python共存之Pyenv,PyCharm多版本切换
- linux命令——Sync
- 系统构造-linux启动过程及系统初始化
- 64bit Centos系统中 Daq-2.0.6 编译
- 正则表达式grep、egrep--already
- liunx centos 下安装 mysql
- Linux基础命令快速入门
- CentOS7之搭建lamp环境
- [转]Linux sendmail 详解
- linux下强制修改mysql密码