ssh key
我们为zhangjie这个用户为例来介绍ssh key 免密码认证
1、我们准备三台机器
A-Server 中心分发服务器
B-Client 接收客户服务器
C-Client 接收客户服务器
2、添加系统帐号 我们在这三台机器上分别建立一个名为zhangjie的用户,并且设置密码为123456
useradd zhangjie
echo "123456" |passwd --stdin zhangjie
3、开始部署
因为A服务器为中心分发服务器,所以我们选择在A服务器建立
Public Key(锁)与
Private Key(钥匙)
4、在A-Server 上建立密钥对
如同上超市买锁。。。。。。
在A机器上建立dsa key, 生成Public Key(锁) 与 Private Key(钥匙),执行步骤如下:
(1)创建dsa认证密钥对 ssh-keygen -t dsa
执行完如上命令后就会在/home/zhangjie这个目录下建立了一个隐藏目录
.ssh 然后在这个目录下面生成两个文件
id_dsa(私钥) id_dsa.pub(公钥)
注:这里生成的.ssh目录的权限是700
id_dsa(私钥)这个文件的权限是600 id_dsa.pub(公钥) 这个文件的权限是644
(2)推送公钥 ssh-copy-id -i id_dsa.pub 10.0.0.162 如果有特殊端口可以使用ssh-copy-id -i id_dsa.pub "-p 888 10.0.0.162"
注:实际上使用ssh-copy-id命令就干了一件事,就是在接收客户服务器的家目录下创建一个隐藏目录叫.ssh然后将id_dsa.pub改名为
authorized_keys
为什么改名为authorized_keys呢,是因为在ssh 的主配置文件中指定了这个文件目录及文件名
[root@A-Server ~]# grep authorized_keys /etc/ssh/sshd_config
#AuthorizedKeysFile .ssh/authorized_keys
(3)登录ssh zhangjie@10.0.0.162
######################################################################
5、使用scp命令分发内容
ssh服务使用scp命令批量分发脚本fenfa.sh
#!/bin/sh
for ip in `cat ip_list`
do
echo "$ip==========================="
scp -r -p $1 $ip:$2
done
#####################################################################
使用ssh服务,批量查看设备信息 可以写个简单的脚本manage.sh内容如下
#!/bin/sh
for ip in `cat ip_list`
do
ssh $ip $1
done
转载于:https://blog.51cto.com/zhangjie/1220402