`
zhengdl126
  • 浏览: 2542986 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

批量修改远程linux服务器密码

 
阅读更多

#!/bin/bash
# BY kerryhu
# MAIL:king_819@163.com
# BLOG:http://kerry.blog.51cto.com
# Please manual operation yum of before Operation.....

 

 

 

一、建立信任关系
192.168.9.203 为管理机
192.168.9.201 192.168.9.202 为远程linux服务器
1、在管理机生成证书、
[root@manage ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.   (私钥)
Your public key has been saved in /root/.ssh/id_rsa.pub. (公钥)
The key fingerprint is:
36:ec:fc:db:b0:7f:81:7e:d0:1d:36:5e:29:dd:5b:a0
 
2、将管理机上的公钥传送到各远程服务器
如远程服务器更改了默认的ssh端口号,就使用scp -P 17173,17173为端口号
[root@manage .ssh]# scp id_rsa.pub 192.168.9.201:/root/.ssh/authorized_keys
[root@manage .ssh]# scp id_rsa.pub 192.168.9.202:/root/.ssh/authorized_keys
 
管理机与远程主机信任关系建立完毕
 
二、通过shell脚本批量修改远程服务器密码
如果要调用mkpasswd就得安装expect,使用mkpasswd可以随机产生密码
usage: mkpasswd [args] [user]
 where arguments are:
    -l #      (length of password, default = 10)
    -d #      (min # of digits, default = 2)
    -c #      (min # of lowercase chars, default = 2)
    -C #      (min # of uppercase chars, default = 2)
    -s #      (min # of special chars, default = 1)
    -v        (verbose, show passwd interaction)
    -p prog   (program to set password, default = passwd)
比如说你要指定一个长度为8,而且至少有三个大写字母的密码,那么可以这样输入:
mkpasswd -l 8 - C 3,好了,密码就会按你的要求随机产生了
 
yum -y install expect
 
ip_list.txt为远程服务器IP列表
[root@manage .ssh]# cat ip_list.txt
192.168.9.201
192.168.9.202
如果远程服务器修改了默认ssh的端口号,就使用ssh -p 17173,17173为端口号
 
#!/bin/bash
#============== Though ssh remote server ,auto modify ROOT passwd =============#
for IP in `cat /root/ip_list.txt` #导入远程要修改主机的IP 
do
#========================= 创建远程主机密码 ==========================#
TMP_PWD=`mkpasswd -l 8 -C 3`
R_PWD=`echo ${IP}_${TMP_PWD}`
echo "${IP}_${TMP_PWD}" > R_PWD.txt
 
#=========================== 修改远程主机密码 ========================#
if [ $? = 0 ] ; then
   ssh $IP passwd root --stdin < R_PWD.txt
   echo -e "$(date "+%Y-%m-%d %H:%M:%S")\t${IP}\t${R_PWD}\t" >> R_Server.log
else
   echo -e "$(date "+%Y-%m-%d %H:%M:%S")\t${IP} R_PWD.txt is create fail\tplease check!\t" >> M_pass.log
fi
if [ $? = 0 ] ; then
   echo -e "$(date "+%Y-%m-%d %H:%M:%S")\tThe ${IP} passwd is modify OK\t" >> M_pass.log
else
   echo -e "$(date "+%Y-%m-%d %H:%M:%S")\tThe ${IP} passwd is modify fail\tplease check!\t" >> M_pass.log
fi
done
分享到:
评论

相关推荐

    远程批量修改linux服务器密码的脚本归类.pdf

    远程批量修改 Linux 服务器密码的脚本归类 本文档主要介绍如何使用 Expect 脚本来批量修改远程 Linux 服务器的密码。该方法可以快速地对多台服务器进行密码修改,并且可以实现自动化操作。 知识点: 1. Expect ...

    批量修改远程linux服务器密码.docx

    批量修改远程Linux服务器密码是一项常见的系统管理任务,特别是在拥有大量服务器的环境中。下面将详细介绍如何进行这个过程,以及其中涉及的关键知识点。 首先,我们需要建立管理机(也称为控制机)与远程Linux...

    远程批量修改linux服务器密码的脚本

    需要对服务器进行批量的修改root密码,还要在每台服务器新建一个用户,如果一个一个登到的服务器上进行修改的话,估计一个下午又没有了,首先想到的是我最喜欢的php,其中有个ssh2 模块,不得不承认用php 来处理这样...

    批量修改linux密码的脚本

    在Linux系统管理中,批量修改用户密码是一项常见的任务,特别是在多用户环境或者服务器集群中。本文将详细解析如何使用批量脚本来实现这一操作,主要基于提供的"change_pass.vbs"脚本,结合SecureCRT终端模拟器进行...

    批量获取linux服务器厂商/cpu/内存/磁盘/网卡等信息(适用于centos7系x86和arm架构)

    无需做免密,通过expect利用ssh批量获取linux服务器厂商/cpu/内存/磁盘/网卡等信息 1、设置数组变量,并指定服务器ip列表 #需要检查的服务器列表 IP@@ssh端口@@用户名@@密码 serverInfo=( 192.168.195.129@@22@@...

    Linux批量命令执行工具 可批量对多个Linux主机执行命令 重启后依然可以 方便省力 适合统一化管理Linux服务器 Linux 远程管理

    通过一次性的设置,你可以针对多个远程Linux服务器同时发送并执行一系列命令,无论是简单的文件操作、系统配置调整还是复杂的脚本执行,都能轻松实现。 批量命令执行功能对于IT运维人员来说极其方便。例如,当需要...

    Linux批量scp命令执行工具 可批量对多个Linux主机执行传输文件命令 方便省力 适合统一化管理Linux服务器

    总的来说,Linux批量scp命令执行工具是Linux服务器管理员的得力助手,它简化了多主机文件传输的过程,提高了工作效率,同时也降低了出错的可能性。对于那些管理着众多Linux服务器的人来说,掌握并合理运用这样的工具...

    Linux通过Shell脚本命令修改密码的两种方式

    交互方式修改密码 ...很多时候我们可能需要远程执行服务器上的脚本来修改账号密码,此时就没有办法进行交互了。 此时可以使用如下两种方式修改密码: 方式1: echo password | passwd testuser --stdin &gt; /dev

    Window 下批量管理批量操作万台Linux Solaris Aix HP-Unix Windows 服务器图形管理软件

    可以有效分类的对服务器,工作站,进行分实验室,分组管理,Unix linux服务器远程批量操作模式,批量操作模式 可以多线程操控Unix,Linux,服务器执行命令,获 取状态,输出命令执行结果,可以实现大批量修改文 件,...

    批量上传文件到Linux服务器

    这通常涉及到将一组文件从本地计算机高效地传输到多台远程Linux服务器。为了实现这一目标,我们需要掌握一些关键技术和工具,这些技术和工具使得批量上传变得更加便捷和高效。 1. **SSH(Secure Shell)**:SSH是...

    windows、linux下sqlite远程管理工具及服务器

    windows、linux操作系统下都可以运行的SQLITE远程服务器。 只要在WINDOWS下运行sqlitemanage.exe就可以统一管理WINDOWS及LINUX平台下的SQLITE数据库,功能强大。 服务器运行方法: 1、WINDOWS下只要在数据库所在目录...

    史上图形最简单Linux-Unix批量管理服务器软件工具

    可以有效分类的对服务器,工作站,进行分实验室,分组管理,Unix linux服务器远程批量操作模式,批量操作模式 可以多线程操控Unix,Linux,服务器执行命令,获 取状态,输出命令执行结果,可以实现大批量修改文 件,...

    搭建PXE远程安装linux服务器

    ### 搭建PXE远程安装Linux服务器 #### 一、引言 PXE(Preboot Execution Environment)是一种网络引导技术,它允许计算机通过网络启动操作系统。本文将详细介绍如何搭建一个PXE远程安装Linux服务器的过程,使用户...

    远程上传及同步文件夹工具,MS_Win7客户端到Linux服务器

    远程上传及同步文件夹工具,从MS-Win7客户端上传文件夹到远程Linux服务器,如文件夹的部分内容已存在远程服务器,则可根据选项进行同步更新。可用于部署和同步本地开发的服务器代码到远程服务器。 完全用Java开发的...

    windows系统使用批量配置LInux服务器和网络设备

    为了解决这一问题,Windows系统提供了多种工具和技术,使得用户可以在Windows环境下批量配置Linux服务器和网络设备,极大地提升了工作效率。本篇将围绕这个主题,详细介绍批量配置的方法和相关工具。 首先,我们要...

    windows远程linux工具

    1. **PuTTY**: PuTTY是最受欢迎的开源SSH客户端之一,它支持SSH、Telnet和Serial协议,允许用户通过命令行界面连接到远程Linux服务器。PuTTY还提供了会话管理功能,可以保存多个服务器的登录信息。 2. **MobaXterm...

    基于python轻松实现批量ssh工具管理多台linux服务器.docx

    ### 基于Python轻松实现批量SSH工具管理多台Linux服务器 #### 概述 本文档旨在介绍一种利用Python编写的工具——`JSSH`,该工具能够帮助用户轻松地管理多台Linux服务器,实现批量的SSH连接、命令执行以及文件上传...

    Linux下的自动化和批量管理教程集锦

    教程名称:Linux下的自动化和批量管理教程集锦课程目录:【】linux下kickstart自动化部署安装【】Linux运维...远程批量修改linux服务器密码的脚本【IT教程 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    windows界面下批量操作,监控管理上万台Linux Unix 服务器

    可以有效分类的对服务器,工作站,进行分实验室,分组管理,Unix linux服务器远程批量操作模式,批量操作模式 可以多线程操控Unix,Linux,服务器执行命令,获 取状态,输出命令执行结果,可以实现大批量修改文 件,...

    批量配置linux免密登陆

    标题“批量配置Linux免密登陆”指的是通过自动化脚本实现无需密码验证就能通过SSH连接到多台Linux服务器的技术。这主要依赖于SSH密钥对认证机制,即生成一对公钥和私钥,将公钥部署到目标服务器的`~/.ssh/authorized...

Global site tag (gtag.js) - Google Analytics