多台机器建立ssh pub key登录方式的脚本

目的

公司内部有很多台Linux机器需要维护,每次ssh登录都要输入密码,非常麻烦。因此偷个懒,写了一个脚本,运行该脚本之后,下次再连接就不需要输入密码了。

使用提示

使用该脚本之前,请务必使用ssh-keygen生成公钥。
目前这个脚本运行时还需要输入多次密码,这是不足之处。

#!/bin/bash

# Declare an array of string with type
declare -a hostList=(
"192.168.129.3"
"192.168.129.5"
"192.168.129.7"
"192.168.129.11"
"192.168.129.12"
)

passwd=mypasswd

set -x

setSSH() {
for host in ${hostList[@]}; do
    echo "===========set ssh login without passwd on host $host ==========="
    echo ${passwd}  | ssh  -o StrictHostKeyChecking=no -tt hicode@$host  'mkdir -p ~/.ssh/ && touch ~/.ssh/authorized_keys && chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys'  && cat ~/.ssh/id_rsa.pub | ssh hicode@$host 'cat >> .ssh/authorized_keys'
done
}

setSSH
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在CentOS 7上创建一个脚本以便使用SSH登录新用户是相对简单的。下面是一个简单的步骤: 1. 以root用户身份登录到CentOS 7系统。 2. 打开一个文本编辑器,并创建一个名为`create_user_ssh_login.sh`的新文件。 3. 在文件中输入以下内容: ```bash #!/bin/bash # 设置新用户的用户名 USERNAME="newuser" # 创建新用户 useradd $USERNAME # 设置新用户的密码 PASSWORD="newpassword" echo $PASSWORD | passwd --stdin $USERNAME # 为新用户创建.ssh目录并设置权限 mkdir /home/$USERNAME/.ssh chown $USERNAME:$USERNAME /home/$USERNAME/.ssh chmod 700 /home/$USERNAME/.ssh # 将公钥复制到新用户的authorized_keys文件中 cat /path/to/public_key.pub >> /home/$USERNAME/.ssh/authorized_keys chown $USERNAME:$USERNAME /home/$USERNAME/.ssh/authorized_keys chmod 600 /home/$USERNAME/.ssh/authorized_keys # 允许新用户通过SSH登录 sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/g' /etc/ssh/sshd_config systemctl restart sshd ``` 4. 保存并关闭文件。 5. 使用以下命令将脚本文件设置为可执行: ```bash chmod +x create_user_ssh_login.sh ``` 6. 运行脚本以创建用户和配置SSH登录: ```bash ./create_user_ssh_login.sh ``` 7. 根据需要替换`USERNAME`和`PASSWORD`变量的值,并将公钥的路径替换为你的公钥路径。 注意:脚本中的默认用户名为`newuser`,默认密码为`newpassword`,请根据实际需要进行修改和替换。 这个脚本将创建一个新用户,指定的用户名和密码,并为该用户创建.ssh目录,将公钥添加到authorized_keys文件中,然后禁用密码身份验证,并重新启动SSH服务器以使更改生效。这样,新用户就可以使用SSH登录到系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值