Linux下实现SSH Key 批量分发管理

本文介绍了一种通过SSH免密码登录实现文件批量分发的方法。该方法利用shell脚本fenfa.sh完成从本地到多台远程服务器的文件分发工作,并通过sudo权限提升进行文件复制。文章还强调了中心分发服务器的安全管理措施。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1)首先先实现ssh免密码登陆,可参考http://blog.youkuaiyun.com/qq_30256711/article/details/78537472

2) 编辑分发脚本fenfa.sh

#!/bin/bash

file="$1"
remotedir="$2"

. /etc/init.d/functions

if [ $# -ne 2 ]
then
  echo "sh $0 arg1 arg2"
  exit 1
fi

for n in 29 30
do
    /usr/bin/scp -rp $file test@192.168.200.1$n:~ >/dev/null 2>&1 &&\
    /usr/bin/ssh -t test@192.168.200.1$n sudo /bin/cp -r ~/$file $remotedir
    if [ $? -eq 0 ]
    then
      action "scp $file to $remotedir is ok" /bin/true
    else
      action "scp $file to $remotedir is fail" /bin/false
    fi

done

测试脚本

[test@A ~]$ ./fenfa.sh ./hosts /opt/
Connection to 192.168.200.129 closed.
scp ./hosts to /opt/ is ok                                 [  OK  ]
Connection to 192.168.200.130 closed.
scp ./hosts to /opt/ is ok                                 [  OK  ]

总结:
一定要使用统一的账户进行分发管理,可通过普通用户进行sudo提权进行分发,先把文件拷贝到服务器家目录,然后sudo提权

利用root做ssh key验证也是未尝不可,有利也有弊,好处是简单方便,坏处是风险极大,一旦攻破了分发服务器,其他服务器也跟着遭殃。

重要安全思想:

一定要管理好中心分发服务器,因为他的权限很大,很重要
1.一定要取消中心分发服务器的外网IP
2.开启防火墙禁止SSH对外用户登录,并仅给某一台后端无外网机器A访问,然而这台后端机器A
依然没外网IP,仅能通过VPN连接,这样就比较安全了


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值