shell脚本 双向登陆免密】的更多相关文章

一.简介 源码地址 日期:2018/4/23 介绍:用于hadoop的双向免密脚本,让填写机器互相之间免密登陆 效果图: 暂无 二.使用 适用:centos6+ 语言:中文 注意:执行前需要填写脚本里的ip数组,请勿修改脚本名 下载 wget https://raw.githubusercontent.com/goodboy23/shell/master/jobs/bidfree.sh 执行 bash bidfree.sh…
通过shell脚本配置免密登陆,分为两个脚本,一个是配置文件config.env,一个是正式脚本sshkey.sh. # config.envexport HOST_USER=(root) export PASSWD=(a) export SSH_HOST=(192.168.165.15 192.168.165.16 192.168.165.165) 以上congfig.env文件中,SSH_HOST参数可配置多个IP,可配置不同的用户 sshkey.sh脚本内容大致如下: 在本地用rsa加密方…
本节索引 场景分析 ssh免密登录 pssh工具批量管理 SHELL自动化脚本 本篇总结 场景分析 作为一个运维工程师,不是每个人工作的环境都想阿里.腾讯那样,动不动就上亿的PV量,上万台服务器.我们通常还是工作在,几十台上百台服务器这样的环境,而使用ansible或者puppet这样的自动化运维工具则显得大材小用,并且最终的效果可能还不如几个小工具达到的效果好.像ssh免密登录在配合pssh这样的推送工具,在配合自动化配置脚本,可以说是即方便也使用.这一节将详细带大家以shell脚本的形式实现…
原理 双向,顾名思义,双方互通,此处的意思是多台 linux 两两免密登录.双向比单向多了些操作,单向只需把某一个linux的公钥发送给其他linux即可,而双向要实现集群中的每一台机器都保存其他所有机器的公钥. 步骤 假设,你有两台机器,ip分别为A和B: 总共分为三步: 生成公钥 将A机器的公钥拷贝至B机器 将B机器的公钥拷贝至A机器 生成公钥 如下命令生成公钥,默认会在~/.ssh/下生成id_rsa和id_rsa.pub.先检查一下机器是否已有公钥,如果没有再执行: ssh-keygen…
主要命令:sshpass 这个命不是系统自带的,需要安装: # which sshpass/usr/bin/sshpass[root@666 tools]# rpm -qf /usr/bin/sshpass sshpass-1.06-2.el7.x86_64用yum安装: # yum installl sshpass sshpass -p [passwd] ssh -p [port] xxx@10.19.123.4注意首次登录需要先ssh -p [port] xxx@10.19.123.4,后才…
转至:https://www.cnblogs.com/gaohongyu/articles/12072594.html #!/bin/bash #Author:GaoHongYu #QQ:1061767621 #Time:2019-12-19 02:47:09 #Name:login.sh #Version:V1.0 FILE_PATH=/root/user_list read -p "Please enter user name:" user grep -w $user $FILE_…
ssh免密验证,shell批量设置 #ssh免密验证,shell自动设置 echo '#!/bin/sh . /etc/init.d/functions [[ -f /usr/bin/expect ]] || { echo "install expect";yum install expect -y; } #若没expect则安装 [ $? = ] || { echo "expect安装失败";exit; } #安装失败则退出 PUB=/'`whoami`'/.ss…
因为我的服务器集群需要回收日志到中央进行统一处理,所以需要建立ssh互信关系实现免密登录.关于ssh的使用大家可能都很熟悉了,我们今天主要来讲下ssh连接和免密登录的原理. scp 传输文件 scp(secure copy)是linux系统下基于ssh登录进行安全的远程文件拷贝的命令. # 传递文件到远程 scp local_file remote_username@remote_ip:remote_file # 传递文件夹到远程 scp -r local_folder remote_usern…
原题目: 一个文本类型的文件,里面每行存放一个登陆者的IP(某些行是反复的),写一个shell脚本输出登陆次数最多的用户. 之前刚看到这个题目时,立即没有想到一行直接解决的办法,尽管知道能够先进行排序,可是后面因为对uniq命令的參数不熟悉,所以用了比較背的办法,就是直接编写shell脚本程序来解决问题. 如今如果測试数据例如以下: 111.111.111.111 10.10.10.10 222.222.222.222 111.111.111.111 333.333.333.333 10.10.…
实验说明: 在自动化部署时,会经常SSH别的机器去操作,然而每次的密码认证却很令人烦躁,尤其是很长的密码,因此SSH免密登陆就显得必不可少: 在机器数目很多的时候,使用更过的往往是Ansible分发并执行SSH免密登陆脚本,使得每台机器之间都能免密登陆. 实验环境: 宿主机系统   :Fedora 28 WorkStation 虚拟机管理器 :Virt-Manager 1.5.1 虚拟机配置   :ha1  CentOS 7.2 1511 (minimal)   virbr0: 192.168.…
相关软件的使用: ######################################################################### 以上是相关软件的使用! 以下是免密登陆的配制 两台服务器之间,免密登陆的配制: ############################################################################################# putty 免密码登陆的配制: #################…
1.负载均衡中文件同步必不可少,我这边选择rsync来实现文件同步 rsync同步文件机制更适用于单向文件同步,可配合unison实现双向同步功能. 实现同步的两种方法 一:ssh方法 rsync -avz 用户名@服务器ip /文件地址 本地目录 回车 input password 二:rsync同步 首先安装yum install rsync 创建 /etc/rsyncd.conf uid = nobody gid = nobody use chroot = yes max connecti…
又来了,上头让小轩我在服务器中写一个Shell脚本,主要用来在机器B中定时备份机器A中的一些文件.那么,小轩是怎么想的呢? 在小轩的知识库里,现在有scp和ssh两个玩具.别的还真没有其他什么东西了.那就想直接用scp去远程复制好了,但是scp复制的时候还要输入密码.那就搞搞让使用scp的时候不用输入密码好了. 以下进入正文 忽略ssh安装scp安装过程.默认认为当前机器与远程机器含有完整的ssh,scp功能 首先在机器B中使用ssh-keygen -t rsa 命令 (想来玩git的童鞋应该知…
Ansible 密钥免密登陆使用重点 1.配置/etc/ansible/hosts 2.配置公钥以及秘钥 authorized_keys 放置公钥文件 .ssh 放置密钥文件 密钥文件名称必须为 id_rsa [重点] 3.如何使用su 到root 执行命令 ansible all  -b --become-method su -m shell -a "ls /root" 如何su到root 4.拷贝文件 执行文件 ansible all -b  --become-method su …
应用场景之一:java 程序调用shell脚本,通过ssh 免密登陆数据库服务器,进行数据的抽取打包工作. 免密设置步骤: 1.客户端生成公私钥,在任意目录下执行命令ssh-keygen(一路回车默认即可),会在当前用户的家目录下的.ssh目录下生成私钥id_rsa.公钥id_rsa.pub; 2.上传公钥到服务器,执行命令 ssh-copy-id -i ~/.ssh/id_rsa.pub username@serverip (username 服务器的用户名,serverip 服务器ip), …
SSH第一次连接远程主机 公钥交换原理 1.客户端发起链接请求2.服务端返回自己的公钥,以及一个会话ID(这一步客户端得到服务端公钥)3.客户端生成密钥对4.客户端用自己的公钥异或会话ID,计算出一个值Res,并用服务端的公钥加密5.客户端发送加密后的值到服务端,服务端用私钥解密,得到Res6.服务端用解密后的值Res异或会话ID,计算出客户端的公钥(这一步服务端得到客户端公钥)最终:双方各自持有三个秘钥,分别为自己的一对公.私钥,以及对方的公钥,之后的所有通讯都会被加密 首次登录提示信息 如果…
声明:作者原创,转载注明出处. 作者:帅气陈吃苹果 一.SSH简介 SSH(Secure Shell)是一种通信加密协议,加密算法包括:RSA.DSA等. RSA:非对称加密算法,其安全性基于极其困难的大整数的分解(两个素数的乘积): DSA:也是非对称加密算法,其安全性基于整数有限域离散对数难题: 二.SSH免密登陆原理 三.SSH免密登陆 服务器环境: 机器 用户名 密码 master hadoop hadoop slave1 hadoop hadoop slave2 hadoop hado…
场景:在linux A 上执行Linux B上的shell脚本和命令 步骤1.设置ssh免登陆 1.SSH无密码登录 # 本地服务器执行(A机器):生成密钥对 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cp  ~/.ssh/id_dsa.pub authorized_keys 如果有邮箱的话,使用 ssh-keygen -t rsa -C anl@163.comcat ~/.ssh/id_rsa.pub 然后使用winscp或者fileziall之类的文件…
应用场景: 在应用ansible的实际情况中,有一个很现实的问题,ansible是需要对主机做ssh免密登陆的,而挨个对主机做免密是非常的繁琐的,挨个敲IP不仅非常的繁琐而且容易出错,为解决这个问题,为以后使用ansible时的便捷,写了一个小脚本,实现批量对主机的免密配置: #!/bin/bash #在根目录下创建address文件,一行一个ip地址,将所有需要免密的主机ip填入 User=root #ssh免密的账户 passWord=123 #ssh免密主机的密码 address=`cat…
[root@node03 ~]# ssh-copy-id node02 root@node02's password: sh: .ssh/authorized_keys: Permission denied 无法自动登录node02,分发秘钥被拒绝 删除node02上的authorized_keys,重新ssh-copy-id node03,可以了 一.查看日志 Linux 日志系统 系统日志一般在/var/log下 # cd /var/log # less secure ##或者 # less…
ssh协议 为什么使用ssh协议? 在进行传输时,会对数据进行加密,保证会话安全:telnet协议不是加密传输,在传输过程中如果被抓包,就会造成信息泄露,telnet默认不支持root远程. # 常用协议端口 ftp 21 ssh 22 telnet 23 # 不支持root登陆 rsync 873 rdp 3389 ssh的相关命令 # 1.ssh远程登陆 ssh username@IP -p portnumber username 表示的是用户名 -p 指定端口 IP 表示的是远程主机的IP…
文章目录 单向免密 `expect` 免交互 `sshpass` 免交互 相互免密 单向免密 expect 免交互 注意修改脚本内的 your_password 为 远程主机用户的密码 脚本内的 "master node1 node2" 需要提前写好 /etc/hosts 文件,或者改为 ip 即可 #!/usr/bin/env bash ssh-keygen -t rsa -P "" -f /root/.ssh/id_rsa -q for host in mast…
证书登录: 这里说的证书其实就是密钥. 在非对称加密中, 密钥分为公钥和私钥. 私钥, 即密钥所有人持有. 公钥则公布给他人. 公钥和私钥成对使用, 互相解密. 公钥加密数据只能用私钥解密; 私钥加密则只能用公钥解密(验证) 证书登录原理: 密钥对生成后, 公钥存储于远程服务器. 登录时远程服务器向客户端发送随机字符串, 客户端以私钥加密后返回服务器, 服务器再以公钥解密. 解密成功则证明客户端合法, 允许登录,生成的密钥仅对当前用户有效. SSH免密码原理 1.client向Server 发出…
windows下面有xshell 这样的可视化ssh管理工具 macos 下面使用终端做下简单配置,也非常方便,具体过程如下 生成秘钥 cd ~/.sshssh-keygen -t rsa 生成了私钥和公钥,稍后免密登陆配置会用到 vim ~/.ssh/config 这是我的配置文件,可以添加多个host, 认证文件路径改为之前生成的私钥文件 连接服务器时直接执行  ssh host  即可 接下来,将公钥文件的内容拷贝到服务器上 cat id_rsa.pub >> .ssh/authoriz…
想必大家都有使用ssh登陆的过程了,那么,怎么设置ssh免密登陆呢?下面有一些我的总结: 环境:服务器主.从 主服务器:192.168.1.1 从服务器:192.168.1.2 实现主服务器ssh登录从服务器不需要输入登录密码(ssh 用户名@ip地址) 如果没有免密登陆,那么我们执行:ssh ip地址,会提示我们输出ip主机root的密码(默认是root用户的哦).但是小伙伴们有没有想过,如果我们执行的过程中,需要不输入密码登陆会怎么办呢?反正博主我就是个这么懒的人.所以博主就get了这个技能…
目的: 同台机器之间实现普通用户之间的免密登陆: NN01 的user1 免密登陆 user2 不同机器之间实现普通用户之间的免密登陆 :NN01 的user1 免密登陆 NN01 的user1 一.同台机器之间实现普通用户之间的免密登陆 普通用户之间的免密登陆和 使用root 进行免密登陆,基本设置都是一样的,只不过普通用户之间需要修改 .ssh 和 authorized_keys 的权限免密才能生效. 登陆 user1 的前提下, ssh-keygen #使用 ssh-keygen 命令,一…
正文: ssh免密登陆:sshpass -p [passwd] ssh -p [port] root@192.168.X.X…
[root@node2 ssh]# cat auto_ssh.sh #!/usr/bin/expect -f ########################################## #通过SSH服务将id.pas.pub公钥推送到目标服务器实现免密登陆 #参数:1.system_username # 2.system_password # 3.system_hostname # 4.CommandList [多个命令间:间隔] #返回值: # 0 成功 # 1 参数个数不正确 #…
0x01:  把远程服务器的公钥来获取到本地 #ssh-keyscan ip1 ip2 ip3 ip4 >> /root/.ssh/known_hosts 完成后,/root/.ssh/known_hosts 多了许多内容 0x02: 添加服务IP到 ansible 的 hosts #cat >> /etc/ansible/hosts << EOF ip1 ip2 ip3 ip4 EOF # 0x03: 添加免密登录(我的ROOT密码都一样,使用 -k 参数, 然后输入…
shell脚本批量ssh登陆主机并执行命令 今天在客户现场遇到了这个问题,客户没有管理工具,无法批量登陆主机下发命令,几个个C段啊,让我一个一个登陆,.................. 所以写了个shell脚本,批量使用用户名密码方式登陆Linux主机,执行命令,并判断是否执行成功. 功能: 读取IP地址文件,循环登陆主机执行命令,保存返回结果. 脚本已经上传到github https://github.com/b4zinga/UsefulScripts/blob/master/remote-…