MySQL--Ansible推送密钥实现免密码登录
从别人网站抄过来,保留自用
场景: 对于需要管理的很多linux服务器,每次登录都输入密码比较痛苦,配置一个跳板机,将本地公钥推送带各访问节点上实现SSH登录
登录账号:admin
本地秘钥路径:/home/admin/.ssh/id_rsa.pub
=======================================================
首先在跳板机上配置秘钥
ssh-keygen -t rsa -P "" -f ~/.ssh/id_dsa
然后创建ansible的playbook文件create_admin.yaml
- name: Linux Create User and Upload User Public keys
hosts: all
#remote_user: xxxx
#sudo: yes
vars:
create_user_name: admin
tasks:
- name: Make sure we have a 'admin' group
group:
name: admin
state: present - name: Allow 'admin' group to have passwordless sudo
lineinfile:
dest: /etc/sudoers
state: present
regexp: '^%admin'
line: '%admin ALL=(ALL) NOPASSWD: ALL' - name: Create user {{ create_user_name }}
user:
name: "{{ create_user_name }}"
shell: /bin/bash
groups: admin
createhome: yes
home: /home/{{ create_user_name }}
state: present - name: create key directory
action: file path=/home/{{ create_user_name }}/.ssh/ state=directory owner={{ create_user_name }} group={{ create_user_name }} mode=0700 - name: create key file
action: file path=/home/{{ create_user_name }}/.ssh/authorized_keys state=touch owner={{ create_user_name }} group={{ create_user_name }} mode=0600 - name: Set authorized key took from file
authorized_key:
user: "{{ create_user_name }}"
state: present
key: "{{ lookup('file', '/home/admin/.ssh/id_rsa.pub') }}"
然后使用ansible执行推送
=======================================================
登录时直接使用ssh登录,如:
ssh 192.168.166.170
大神同事将下面脚本脚本封装成go.sh,放入到/bin目录下:
host=$1
if [ -z ${host} ]
then
host='127.0.0.1'
fi
ssh admin@${host} -o StrictHostKeyChecking=no -i ~/.ssh/id_rsa
这样就可以快速地使用go.sh +ip登录指定服务器
=======================================================

MySQL--Ansible推送密钥实现免密码登录的更多相关文章
- SSH免密码登录教程
在一些受信任的环境中配置免密码登录,是比较方便的:而对于ansible等自动化工具配置免密码登录更是必要的. 免密码登录的要点就是,把想让服务器信任的客户机的公钥发送到服务器. 当客户机连接服务器时直 ...
- ansible用authorized_key模块批量推送密钥到受控主机(免密登录)(ansible2.9.5)
一,ansible的authorized_key模块的用途 用来配置密钥实现免密登录: ansible所在的主控机生成密钥后,如何把公钥上传到受控端? 当然可以用ssh-copy-id命令逐台手动处理 ...
- redhat6.2下的ssh密钥免密码登录(原创)
这个是我自己写的,鼓励转载,请说明转载地址:http://www.cnblogs.com/nucdy/p/5664840.html 在进行hadoop的免密码的登录操作是,老是发生no route等错 ...
- Xshell配置ssh免密码登录-密钥公钥(Public key)与私钥(Private Key)登录【已成功实例】
本文转自https://blog.csdn.net/qjc_501165091/article/details/51278696 ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式.其中口 ...
- ssh免密码登录之分发密钥
ssh免密码登录之分发密钥 1.ssh免密码登录 密码登录和密钥登录有什么不同? 密码登录(口令登录),每次登录都需要发送密码(ssh) 密钥登录,分为公钥和私钥,公钥相当于锁,私钥相当于钥匙 1.1 ...
- CentOS6.9下ssh密钥登录配置步骤(免密码登录)和ssh-keygen 命令常用参数
密钥登录步骤(免密码登录)ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式.其中口令(密码)认证方式是我们最常用的一种,出于安全方面的考虑,介绍密钥认证方式登录到linux/unix的方 ...
- Debian9.5下ssh密钥登录配置步骤(免密码登录)和ssh-keygen 命令常用参数
密钥登录步骤(免密码登录)ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式.其中口令(密码)认证方式是我们最常用的一种,出于安全方面的考虑,介绍密钥认证方式登录到linux/unix的方 ...
- mysql 免密码登录
mysql 8免密码登录 UPDATE mysql.user SET authentication_string=null WHERE User='root'; FLUSH PRIVILEGES; e ...
- git 配置 https和ssh 免密码登录 常用操作命令
git 配置 https和ssh 免密码登录 一. 区分https clone 和 ssh clone 不同的克隆方式导致校验方式不同,对应的免秘方式也不一样. https通过记住账号密码免登,ssh ...
随机推荐
- ApplicationContext(九)初始化非延迟的 bean
ApplicationContext(九)初始化非延迟的 bean 此至,ApplicationContext 已经完成了全部的准备工作,开始初始化剩余的 bean 了(第 11 步). public ...
- linux上的工具或软件
1.下载软件 yum install axelaxel http://mirror.cse.iitk.ac.in/archlinux/iso/2015.04.01/archlinux-2015.04. ...
- 【Apache】Apache服务的安装(一)
Apache简介 Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行 ...
- JS高级-Date- Error-***Function:
1. Date: API: 1. 8个单位: FullYear Month Date Day Hours Minutes Seconds Milliseconds 2. 每 ...
- linux_制作本地yum源
新建文件夹 mkdir /root/guazai 并将本地磁盘挂载到当前文件夹 mount -o loop /dev/cdrom /root/guazai/ 新建文件夹 mkdir /mnt/loca ...
- 51.从首页内容跳转到第二个Tabbar控制器(controller)
TabBarController: 创建TabBar的控制器 注意:在点击的内容方法页面,添加头文件 #import "TabBarController.h" #import &q ...
- python里的字典和集合
一.字典 1.字典的定义 字典是不可变的,是用hash值来存储的.字典的key必须是不可变的(可哈希) dict = {key1:value1 , key2:value2} 2.字典的增删改查 增 直 ...
- TOMCAT内存溢出及大小调整的实现方法
一.tomcat内存设置问题 收藏 在使用Java程序从数据库中查询大量的数据或是应用服务器(如tomcat.jboss,weblogic)加载jar包时会出现java.lang.OutOfMemor ...
- 容器监控告警方案(cAdvisor + nodeExporter + alertmanager + prometheus +grafana)
一.prometheus基本架构 Prometheus 是一套开源的系统监控报警框架.它启发于 Google 的 borgmon 监控系统,由工作在 SoundCloud 的 google 前员工在 ...
- 解决设置select默认选中不生效的方法
$scope.storageTypeList = ['Glusterfs','NFS','Ceph']; 不生效的方法: <select class="form-control&quo ...