Shell脚本实现服务器多台免密】的更多相关文章

在实际运维的过程中,经常需要用到免密登录,下面这个脚本实现服务器之间的免密登录,如下 比如,要实现A服务器与B.C.D服务器的免密登录,只需要将B.C.D服务器的IP地址写在serverlist.txt中,然后在A服务器上执行下面这一段命令即可. #!/bin/bash #免密登录脚本 #作者:海蓝之心赛 #使用说明 #在和本脚本同级目录下,创建一个名为serverlist.txt的文件,将需要做免密登录的服务器ip地址列表写在serverlist.txt中,每个IP地址占用一行. #特殊说明,…
一.环境 centos7.x 三台 node1.node2.node3 二.实现免密登陆 2.1.node1上,生成公钥与私钥 [root@node1 ~]# ssh-keygen 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 passphr…
关于脚本 服务器使用之前,都需要先配置静态IP,那就将这种简单重复的工作,交给脚本来处理吧,让我们运维有更多的时间喝茶看报刷微博 脚本使用 sh ssh.sh ip.txt ssh.sh 为脚本的名称,自行设定,不是固定项 ip.txt 为ip.密码.主机名的记录文件,文件名称可以自行设定,不是固定项,内容格式如下: 192.168.72.46 123.com k8s-01 192.168.72.47 123.com k8s-02 192.168.72.48 123.com k8s-03 192…
目录 一.SSH远程管理基础 1.ssh协议 2.ssh原理 3.配置文件解析 4.登录方法 5.使用ssh协议传输的命令 二.免密连接的实现 1.免密连接原理 2.免密实现环境准备 3.在客户端生成秘钥文件 4.将秘钥发送给服务器 5.验证免密登录 一.SSH远程管理基础1.ssh协议ssh协议是基于C/S机构的安全通道协议,通信数据进行加密处理,用于远程管理. ssh的服务名称为sshd. 默认端口号:tcp的22端口 2.ssh原理使用公钥传输 第一步:客户端请求连接,服务端返回一个公钥(…
Linux shell脚本判断网络畅通 介绍 在编写shell脚本时,有的功能需要确保服务器网络是可以上网才可以往下执行,那么此时就需要有个函数来判断服务器网络状态 我们可以通过curl来访问 www.baidu.com,从而判断服务器网络状态是否可以畅通的 网络状态判断 #!/bin/bash #检测网络链接畅通 function network() { #超时时间 local timeout=1 #目标网站 local target=www.baidu.com #获取响应状态码 local…
概述 我们原先在服务器上想分析性能指标,需要执行一系列的linux命令.对于linux命令不熟悉的人来说,比较困难 现在有一套集成的shell脚本,把常用的linux命令都包含在里面,一键式分析性能瓶颈 脚本功能 1.查看CPU利用率与负载(top.vmstat.sar) 2.查看磁盘.Inode利用率与I/O负载(df.iostat.iotop.sar.dstat) 3.查看内存利用率(free.vmstat) 4.查看TCP连接状态(netstat.ss) 5.查看CPU与内存占用最高的10…
一 ,SHELL 是什么 (1)shell是一种命令行解释器. (2)是用户和Linux内核之间沟通的桥梁,属于中间件.见下图 (3)交互流程:shell接受用户输入的指令 =>将指令传达给Linux内核 =>内核处理完毕后返回给shell解释器=>返给用户能够看懂的内容 二, 接下来看看shell如何完成取出服务器图片动作. 取出服务器下所有图片,为了方便展示 我值取出前10行. find /home/wwwroot/default/ -name "*.png" -…
前言: ssh命令, 没有指定密码的参数. 以至于在脚本中使用ssh命令的时候, 必须手动输入密码, 才能继续执行. 这样使得脚本的自动化执行变得很差, 尤其当ssh对应的机器数很多的时候, 会令人抓狂.本文讲解了两种方式, 一种借助expect脚本, 一种借助sshpass来实现. *) 借助expect脚本来实现1. expect不是系统自带的工具, 需要安装yum install expect -y 2. expect脚本的编写规则 1. [#!/usr/bin/expect] 告知系统脚…
#!/bin/sh #电脑概览 #电脑型号 ComputerModel=`/usr/bin/sudo /usr/sbin/dmidecode | grep -A2 "System Information" | awk -F ':' '{print $2}' | grep -v '^$' |sed -e 's/Inc//g' -e 's/ //g' -e ':a;N;s/\n/ /g;ta' -e 's/.//g'` x86_64=`getconf LONG_BIT` #系统版本 Sys…
1. 生成密钥对 # -t 指定加密算法: -b 指定生成的密钥长度: -C 一句话,一般都填邮箱地址. # 更多参数说明可以在终端输入:ssh-keygen --help 查看 ssh-keygen -t rsa -b -C "你的邮箱地址" 2. 将公钥传到远程 # i后面接的参数是保存你公钥的文件(我们这里是.ssh/id_rsa.pub): # git是远程主机的用户,这条指令会往git这个用户的主目录下的 # .ssh/authorized_keys文件写入id_rsa.pu…