一、背景

很多时候运维或安全工作人员需要维护大量的服务器,其中就包括判断是否存在root弱口令,

如果服务器数量很多一一修改的话的确是要好花费不少时间精力的。如果通过脚本来实现密码更改,

再做一个定期任务的话,会节省很多人力。

二、设计思路

 1. 配置服务器使用公钥登录

 2. 编写远程密码更改脚本

 3. 配置定时任务执行

三、具体步骤

 1.1 配置服务器使用公钥登录

# ssh-keygen -t rsa

1.2 将本地生成的公钥scp到远程要更改密码的所有服务器主机上(如果远程服务器上没有/root/.ssh目录的话需要手动新建)

scp /root/.ssh/id_rsa.pub root@192.168.1.1:/root/.ssh/authorized_keys

2.1 创建远程密码更改脚本/root/test.sh

   (密码:abc123456,要更改的远程主机:192.168.1.1,如果主机很多可以加在ip_array列表里)

#!/bin/bash

remote_cmd="echo abc123456 | passwd --stdin root"
ip_array=(
"192.168.1.1"
)
for ip in ${ip_array[*]}
do
ssh root@$ip $remote_cmd
done

3.  配置定时任务执行(每天16:36分执行密码更改,可使用crontab -e -u user来编辑,以下命令来查看)

#crontab -l -u root

  * * * /root/test.sh

需要注意的是,所谓“定期”其实还是需要借助人工的,因为密码的更改每次都需要不一样,而每次更改为什么类型的强密码还是需要管理员自行判断,变更的时候只需要变更脚本里的“abc123456”密码部分即可。

定期批量修改远程服务器root密码的更多相关文章

  1. ansible批量修改linux服务器密码的playbook

    从网上找到批量修改Linux服务器root密码的playbook. 使用方法: 1.输入要修改的inventory组 2.按需要,在playbook中输入要修改的IP.新密码,如下: - hosts: ...

  2. 利用expect批量修改Linux服务器密码

    一个执着于技术的公众号 背景 修改Linux系统密码,执行passwd即可更改密码.可如果有成千上百台服务器呢,通过ssh的方式逐一进行修改,对我们来说,工作量是非常大,且效率非常低下.因此采用批量修 ...

  3. 利用phpmyadmin修改mysql的root密码及如何进入修改密码后的phpmyadmin

    1.利用phpmyadmin修改mysql的root密码 很多人利用phpmyadmin或者命令行来修改了mysql的root密码,重启后发现mysql登录错误,这是为什么呢?修改mysql的root ...

  4. Linux下修改MySql的root密码

    linux下如何修改Mysql的root密码     今天,忘了mysql下的root密码,想重置一下,但找了多个网站上的方法均有问题,最后参考几家的过程,经过不断尝试获得,终于成功了,下面特将过程分 ...

  5. 使用ansible批量管理远程服务器

    使用ansible批量管理远程服务器 背景 本地需要管理远程的一批服务器,主要执行以下任务: 1) 将本地的文件复制到远端所有服务器: 2) 需要在远程服务器中执行一个个命令: 远端服务器路径并非完全 ...

  6. My sql添加远程用户root密码为password

    添加远程用户root密码为password grant all privileges on *.* to root@localhost identified by '123321' with gran ...

  7. Windows如何修改MySQL用户root密码

    听语音 浏览:16925 | 更新:2015-06-12 14:49 | 标签:windows 1 2 3 4 5 6 分步阅读 MySQL是一个关系型数据库管理系统,在 WEB 应用方面 MySQL ...

  8. windows环境下修改Mysql的root密码

    最近一直没用Mysql,root密码给忘了,然后就自己修改了一下,现在整理一下步骤.(我的版本是5.1) 启动MySQL服务:>>net start mysql 关闭MySQL服务:> ...

  9. [XenServer] XenServer修改IP 以及 root密码

     A.修改IP以及DNS 1. root用户登录console 2.输入命令获得UUID xe pif-list 3.利用UUID查看之前的IP,注意替换下面的1111111111 xe pif-pa ...

随机推荐

  1. 阿里云k8s私有仓库registry操作管理

    1. 登录阿里云Docker Registry $ sudo docker login --username=*****技 registry.cn-hangzhou.aliyuncs.com 用于登录 ...

  2. ios中coredata

    http://blog.csdn.net/q199109106q/article/details/8563438 // // MJViewController.m // 数据存储5-Core Data ...

  3. kafka和websocket实时数据推送

    需求 ​ 已有Kafka服务,通过kafka服务数据(GPS)落地到本地磁盘(以文本文件存储).现要根据echarts实现一个实时车辆的地图. 分析 前端实时展现:使用websocket技术,实现服务 ...

  4. c++ remove_if

    #include <algorithm> 函数remove_if()移除序列[start, end)中所有应用于谓词p返回true的元素. 此函数返回一个指向被修剪的序列的最后一个元素迭代 ...

  5. python web中的并发请求

    python web可以选择django,也可以选择flask,它们的原理差不多.flask比较轻量,下面写一段flask程序来说明python web对并发请求的处理. app.py import ...

  6. Linux shell命令:用 !$ 防止误操作

    shell 的通配符匹配非常强大,不过也非常危险,不少同学都碰到这样的问题,比如 rm a*,结果一个手抖,a 和星号之间多了个空格,结果目录下的文件都灰飞烟灭了…… bash 支持一个特殊的变量 ! ...

  7. 树莓派进阶之路 (023) - Windows下用串行连接控制树莓派(转)

    转载:http://shumeipai.nxez.com/2014/05/04/under-windows-serial-connection-control-raspberry-pi.html 在没 ...

  8. fedora装机运行第一脚本

    博主原创: #!/bin/bash echo "更换源&更新源......" yum install wget -y yum install yum-fastestmirr ...

  9. ubuntu源列表(清华,阿里,官方,选一即可)

    Ubuntu的源列表在/etc/apt/sources.list中,替换即可 #清华的源deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial m ...

  10. java string截取两个字符串之间的值

    java string截取两个字符串之间的值 import java.util.regex.Matcher; import java.util.regex.Pattern; public class ...