CentOS6、CentOS7、Ubuntu 一键部署 ssh 免密登录

CentOS6、CentOS7、Ubuntu 一键部署 ssh 免密登录(ssh.py 文件)

192.168.1.5 为主机器,其他为控制机。
vim /home/shad.py

from fabric.api import run,env,parallel
env.hosts = [‘192.168.1.1‘, ‘192.168.1.2‘, ‘192.168.1.3‘]
env.user = ‘root‘
env.parssword = ‘123456‘
#@parallel
def name():
        run(‘apt install -y wget || yum install -y wget‘)
        run(‘wget http://192.168.1.5/ssh.sh‘)
        run(‘sh shad.sh‘)
CentOS6、CentOS7、Ubuntu 一键部署 ssh 免密登录(ssh.py 文件)
vim /var/www/html/ssh.sh
#!/bin/bash
name=`awk ‘NR==1{print $1}‘ /etc/issue`
if [ "$name" = "Ubuntu" ];then
sed -i ‘[email protected]#[email protected]@g‘ /etc/ssh/sshd_config
mkdir -p ~/.ssh
cat >>~/.ssh/authorized_keys<<EOF
**公钥**
EOF

sed -i ‘[email protected]#PasswordAuthentication [email protected] [email protected]‘ /etc/ssh/sshd_config
service sshd restart
elif [ "$name" = "CentOS" ];then
sed -i ‘[email protected]#PermitRootLogin [email protected] [email protected]‘ /etc/ssh/sshd_config
sed -i ‘[email protected]#[email protected]@g‘ /etc/ssh/sshd_config
sed -i ‘[email protected]#[email protected]@g‘ /etc/ssh/sshd_config
sed -i ‘[email protected]#[email protected]@g‘ /etc/ssh/sshd_config
mkdir -p ~/.ssh
cat >>~/.ssh/authorized_keys<<EOF
**公钥**
EOF

sed -i ‘[email protected] [email protected] [email protected]‘ /etc/ssh/sshd_config
service sshd restart
else
sed -i ‘[email protected]#PermitRootLogin [email protected] [email protected]‘ /etc/ssh/sshd_config
sed -i ‘[email protected]#[email protected]@g‘ /etc/ssh/sshd_config
mkdir -p ~/.ssh
cat >>~/.ssh/authorized_keys<<EOF
公钥
EOF
sed -i ‘[email protected] [email protected] [email protected]‘ /etc/ssh/sshd_config
service sshd restart
fi

原文地址:http://blog.51cto.com/12384628/2151115

时间: 2024-08-10 11:11:42

CentOS6、CentOS7、Ubuntu 一键部署 ssh 免密登录的相关文章

linux(十)配置ssh免密登录实现

知道ssh的朋友应该知道它是用来干什么的,如果你不知道什么是ssh远程登录的话,可以去看一下我的上一篇博客,关于linux的网络基础的知识.备注:ssh是用于远端登入.执行ssh指令开启终端机阶段作业,并登入远端主机. 一.ssh远程登录 今天要和大家说的是,当我们一台客户机要远程登录到服务器的时候,输入密码才能登录成功. 过程流程图: 所以我们在想能不能我们不需要输入密码,直接使用ssh 用户名@服务器ip就可以登录呢? 二.ssh免密登录原理 看到这个图可能大家有一点蒙逼.我给大家解释一下.

Shell脚本实现SSH免密登录及批量配置管理

本节索引 场景分析 ssh免密登录 pssh工具批量管理 SHELL自动化脚本 本篇总结 场景分析 作为一个运维工程师,不是每个人工作的环境都想阿里.腾讯那样,动不动就上亿的PV量,上万台服务器.我们通常还是工作在,几十台上百台服务器这样的环境,而使用ansible或者puppet这样的自动化运维工具则显得大材小用,并且最终的效果可能还不如几个小工具达到的效果好.像ssh免密登录在配合pssh这样的推送工具,在配合自动化配置脚本,可以说是即方便也使用.这一节将详细带大家以shell脚本的形式实现

批量实现ssh免密登录

本节索引 场景分析 ssh免密登录 pssh工具批量管理 SHELL自动化脚本 本篇总结 场景分析 作为一个运维工程师,不是每个人工作的环境都想阿里.腾讯那样,动不动就上亿的PV量,上万台服务器.我们通常还是工作在,几十台上百台服务器这样的环境,而使用ansible或者puppet这样的自动化运维工具则显得大材小用,并且最终的效果可能还不如几个小工具达到的效果好.像ssh免密登录在配合pssh这样的推送工具,在配合自动化配置脚本,可以说是即方便也使用.这一节将详细带大家以shell脚本的形式实现

【Linux】两台服务器ssh免密登录

背景: 有些场景可能用到两台服务器ssh免密登录.比如服务器自动化部署 开始准备:  服务器A  linux   ip: 192.168.1.1 服务器B  linux  ip: 192.168.1.2 第一步: 在服务器A 上 ,使用以下命令 生成秘钥 出现冒号(:)回车即可,要按三次回车.如果出现(yes/no)输入yes ssh-keygen -t rsa 红色标注部分就是 文件保存的路径 第二步: 在服务器A上 输入命令,指向服务器B的IP地址,用root账户 ssh-copy-id -

SSH免密登录机制

 SSH免密登录机制:(见下图) 1.A先使用ssh-keygen生成一对公钥和私钥:ssh-keygen 2.将A的公钥复制给B一份,并且将其追加到B的授权文件中:ssh-copy-id B 3.接下来ssh B,就能免密登录. 为什么将A的公钥拷给B中的授权文件中就能免密登录了呢? 因为在执行ssh B命令时,B中会用A的公钥随机加密一段密文返回给A,A在接收到密文以后,就会用自己的私钥对密文进行解密, 如果能被解密,就允许免密登录,如果不能被解密,就无法登录.由公钥加密的内容,只能由私钥解

SSH免密登录(并且免yes交互)

问题描述:主机A使用ssh协议远程主机B,默认会开启口令认证,即输入主机B对应用户的登录密码,并且第一次登录时,主机A需验证是否接受来自主机B的公钥,输入"yes/no"完成交互.实现ssh免密登录和免yes交互可提高服务器管理效率. 实现思路:1. 主机A创建密钥对id_rsa,id_rsa.pub,并将公钥id_rsa.pub上传至主机B,保存为/root/.ssh/authorized_keys文件: 2. 修改主机B的sshd服务配置文件/etc/ssh/sshd_config

【Linux】ssh免密登录

一.ssh免密配置 ssh 无密码登录要使用公钥与私钥.linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例. 有机器A(192.168.1.155),B(192.168.1.181).现想A通过ssh免密码登录到B. 1.在A机下生成公钥/私钥对. [[email protected] ~]$ ssh-keygen -t rsa -P '' -P表示密码,-P '' 就表示空密码,也可以不用-P参数,这样就要三车回车,用-P就一次回车.它在/home/chenlb

Hadoop用户配置ssh免密登录

一般生产环境 Hadoop组件都是由hadoop用户来启动,首先需要配置hadoop用户ssh免密登录 1.创建Hadoop用户 [[email protected] ~]# useradd hadoop [[email protected] ~]# id hadoop uid=1102(hadoop) gid=1102(hadoop) groups=1102(hadoop) [[email protected] ~]# passwd hadoop Changing password for u

[原创] SSH免密登录设置----原理详解

首先介绍一下SSH: 当我们用一台服务器登录另一台服务器可直接使用SSH协议进行登陆: //具体格式: // ssh [用户名]@[IP] ssh [email protected]192.168.33.12 也可以直接远程传送文件到另一台服务器,具体格式如下: //具体格式: // scp [文件名] [目标服务器用户名]@[目标服务器IP] : [目标复制位置] scp test.txt [email protected]192.168.33.12:/home 注意:以上操作方法存在弊端,每