ssh key 免密码登陆服务器,批量分发管理以及挂载远程目录的sshfs
ssh key 免密码登陆服务器,批量分发管理以及挂载远程目录的sshfs
第一部分:使用ssh key 实现服务器间的免密码交互登陆
步骤1: 安装openssh-clients
[root@001 ~]# yum install openssh-clients -y
步骤2: 创建用户,所有机器同时操作,可直接使用root
[root@001 ~]# useradd test #如果使用root,这里跳过
[root@001 ~]# echo "123456"|passwd --stdin test #如果使用root,这里跳过
步骤3: 用 ssh-key-gen 在本地主机上创建公钥和密钥
[root@001 ~]# su - test #切换到新建的用户,如果直接使用root跳过这里
[test@001 ~]$ ssh-keygen #全部回车
命令说明:
ssh-keygen:生成密钥对命令
-t:指定密钥对的密码加密类型(rsa,dsa两种)
-f:指定密钥对文件的生成路径包含文件名
-P(大写):指定密钥对的密码
步骤4:用 ssh-copy-id 把公钥复制到远程主机上
[test@001 ~]$ ssh-copy-id -i .ssh/id_rsa.pub test@192.168.1.233 #使用root用户名需改称root #上面交互yes 然后输入密码
[test@001 ~]$ ssh-copy-id -i .ssh/id_rsa.pub test@192.168.1.244 #使用root用户名需改称root #上面交互yes 然后输入密码
---ssh-copy-id命令可以把本地主机的公钥复制到远程主机的authorized_keys文件上,ssh-copy-id命令也会给远程主机的用户主目录(home)和~/.ssh, 和~/.ssh/authorized_keys必须设置为600。
-i:指定公钥文件
[注: ssh-copy-id 把密钥追加到远程主机的 .ssh/authorized_key 上.]
[注: 你现在已经可以免密登录到了远程主机上,实现分发只要编辑脚本直接scp到目标服务器如下:]
---------------------------------------这是分割线---------------------------------------
第二部分:使用ssh key + rsync 实现批量管理
[root@001 ~]# echo 'test ALL=(ALL) NOPASSWD:/usr/bin/rsync' >>/etc/sudoers #让目标机器的test用户有执行rsync权限
1.批量分发文件示例脚本
#!/bin/bash
#脚本操作注意:1.将文件复制到随意目录然后进入目录操作2.文件不能使用绝对路径
#脚本原理:使用文件[$1]scp复制到用户的家目录然后使用rsync 同步到相应目录【$2】
. /etc/rc.d/init.d/functions #加入系统函数库
if [ $# -ne 2]
then
echo "请输入参数【本地文件][远程目录]"
exit 1
fi
for n in 233 #IP用空格隔开
do
scp -p22 -r $1 test@192.168.1.$n:~ &>/dev/null #第一条是将某文件发送到目标机器的家目录
ssh -t test@192.168.1.$n sudo rsync $1 $2 &>/dev/null #第二天是将某个文件分发到目标机器的具体位置
if [ $? -eq 0 ]
then
action "分发 $1 成功 " /bin/true
else
action "分发 $1 成功 " /bin/false
fi
done
---------------------------------------这是分割线---------------------------------------
2.批量执行命令示例脚本
#!/bin/bash
if [ $# -ne 1]
then
echo "请输入参数"
exit 1
fi
for n in 233
do
ssh -p22 test@192.168.1.$n $1
done
---------------------------------------这是分割线---------------------------------------
第三部分:sshfs远程挂载+免密码登陆,实现远程挂载
什么是SSHFS:
SSHFS(Secure SHell FileSystem)是一个客户端,可以让我们通过 SSH 文件传输协议(SFTP)挂载远程的文件系统并且在本地机器上和远程的目录和文件进行交互。
SFTP 是一种通过 SSH 协议提供文件访问、文件传输和文件管理功能的安全文件传输协议。因为 SSH 在网络中从一台电脑到另一台电脑传输文件的时候使用数据加密通道,并且 SSHFS 内置在 FUSE(用户空间的文件系统)内核模块,允许任何非特权用户在不修改内核代码的情况下创建他们自己的文件系统。
使用 SSHFS 客户端,在本地 Linux 机器上挂载远程的 Linux 文件系统或者目录步骤。
[root@002-minion ~]# yum install sshfs #只要在客户端安装即可
[root@002-minion ~]# sshfs root@192.168.1.222:/opt /data
The authenticity of host '192.168.1.222 (192.168.1.222)' can't be established.
RSA key fingerprint is c1:7b:29:ca:33:f2:84:b8:c5:91:d6:a5:99:60:46:8e.
Are you sure you want to continue connecting (yes/no)? yes #第一部分介绍了免密码,如果操作过可以实现免密码交互
#卸载命令:fusermount -u /opt/s109
[root@001 ~]#echo '/usr/bin/sshfs root@192.168.1.222:/opt /data' >>/etc/rc.loal
使用下例中个步骤的简单设置而无需输入密码就能登录远程Linux主机。
ssh-keygen #创建公钥和密钥。
ssh-copy-id #把本地主机的公钥复制到远程主机的authorized_keys文件上。
ssh-copy-id #也会给远程主机的用户主目录(home)和~/.ssh, 和
~/.ssh/authorized_keys #设置合适的权限。
ssh key 免密码登陆服务器,批量分发管理以及挂载远程目录的sshfs的更多相关文章
- linux centOS服务器部署ssh,免密码登陆linux
登陆centos,切换用户,切换到你要免密码登陆的用户,进入到家目录 2 创建钥匙, [xun@jzlinux ~]$ ssh-keygen -t rsa Generating public/priv ...
- SSH配置免密码登陆
1.使用SSH-keygen,然后一路回车使之生成id_rsa何id_rsa.pub文件,id_rsa.pub为公匙文件. 2.使用命令:cat ~/.ssh/id_rsa.pub >> ...
- mac 免密码登陆服务器
由于mac os 是基于unix的操作系统终端和linux非常类似,所以不用借助类似于windows下的putty 和CRT工具即可远程登陆linux服务器,只需简单地3步即可免密码ssh远程. 1 ...
- Linux中ssh的免密码登陆
原理: Hadoop的各个节点要实时的进行各种通信的,ssh就是能让各个节点免密码的相互访问相互通信. 操作步骤: 这里用的加密方式是非对称的加密方式,具体的操作是: <1>执行命令ssh ...
- 【hadoop】ssh localhost 免密码登陆(图解)
假设系统中有用户test,属于用户组test, 1. 首先确认能否不输入口令就用ssh登录localhost: $ ssh localhost 输出如下所示: 2. 如果不输入口令就无法用ssh登陆l ...
- SSH免密码登陆详解
为了更好的理解SSH免密码登陆原理,我们先来说说SSH的安全验证,SSH采用的是”非对称密钥系统”,即耳熟能详的公钥私钥加密系统,其安全验证又分为两种级别. 1. 基于口令的安全验证 这种方式使用用户 ...
- ssh 免密码登陆设置不成功
记一次centos6设置免密码登陆设置不成功的解决.自己挖的坑自己填. ssh 免密码登陆设置( 正常情况下是这样的,设置成功后登陆主机是不需要密码的) [root@master .ssh]# ssh ...
- SSH认证原理和批量分发管理
SSH密码认证原理 几点说明: 1.服务端/etc/ssh目录下有三对公钥私钥: [root@m01 ssh]# ls moduli ssh_config sshd_config ssh_host_d ...
- Linux使用ssh公钥实现免批量分发管理服务器
ssh 无密码登录要使用公钥与私钥.linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例. 管理机器外网IP10.0.0.61(内网172.16.1.61) 服务器外网1 ...
随机推荐
- Windows 8.1中WinRT的变化(二)——新增功能
首先我们来看看现有控件中新增的功能: FlipView编程方式切换时支持平滑滚动: 在Windows8中,FlipView在用手触控翻页的时候是有动画效果的,但当我们使用键盘或代码编程翻页时,却没有这 ...
- MessageFormat.format 字符串的模板替换
项目目前在消息的模版,模版中需要替换很多参数,比方说“用户名”,“日期”等等.不过目前没有想到更好的替换参数的方法,所以目前只能使用一个比较简单的方式来实现.这个方式太死板,参数对应必须要在代码中写死 ...
- .net的远程调用
.Net远程调用(转自:http://www.cnblogs.com/omilan/articles/3191378.html) 看到了这.net远程调用的讲解,觉得不错,拿来分享!! .Net对于远 ...
- Vue表单和组件
一.表单 v-model 指令在表单控件元素上创建双向数据绑定,v-model 会根据控件类型自动选取正确的方法来更新元素. <input v-model="message" ...
- hive on spark VS SparkSQL VS hive on tez
http://blog.csdn.net/wtq1993/article/details/52435563 http://blog.csdn.net/yeruby/article/details/51 ...
- ssh免密码登录的注意事项
centos配置完免密码登录(注意修改配置文件,/etc/ssh/sshd_config),合并完公钥后,有的时候还得需要输入密码.这时候应该检查一下authorized_keys的权限问题.本机的正 ...
- zabbix自动化监控之自动注册
自动注册与自动发现刚好相反,是zabbix agent主动联系zabbix server,最后由zabbix server将这些agent加到host里.活动的Zabbix agent可以自动注册到服 ...
- EffectiveJava(5)避免创建不必要的对象
避免创建不必要的对象 1.通过延迟初始化对象提高性能 调用功能方法时调用静态工厂方法,而不是调用类时使用 2.适配器:把功能委托给一个后备对象,从而为后备对象提供一个接口的对象 3.自动装箱:优先使用 ...
- XP中如何配置和共享打印机
Win XP中如何配置和共享打印机 一.配置 打印机 在"控制面板"打开"打印机和传真",在左边的选项或单击右键选择" ...
- ListView:聊天界面
一.最终成型图 二.主界面xml布局 <?xml version="1.0" encoding="utf-8"?> <LinearLayout ...