非root用户sudo_ssh免密钥
非root用户sudo_ssh免密钥
目标:从服务器上ssh登陆后sudo免密钥执行相应的命令
环境介绍:
192.168.65.128 my1-
192.168.65.129 my2-
192.168.65.130 web224 # 步骤一:
# 每个节点执行(不是必须,但是建议这样做)
cat >>/etc/hosts <<EOF
192.168.65.128 my1-
192.168.65.129 my2-
192.168.65.130 web224
EOF # 场景介绍
# 现在有个删除缓存的操作。需要在192.168.65.128上执行,192.168..129和192.168.65.130的相应缓存文件也都一起被删除掉了
# 准备工作
# 每台机器上都创建一个账号
useradd gtuser
echo "gtuserpwd" | passwd --stdin gtuser
cat >>/etc/sudoers << EOF
gtuser ALL=NOPASSWD:/bin/rm -f /tmp/global_cache.log
EOF # 建立ssh免密钥互信
# 因为是从一台集中去执行,所以是单向免密钥 su - gtuser
# 每个节点都执行
ssh-keygen -t rsa # 一路回车
# 将公钥添加到认证文件中
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
# 并设置authorized_keys的访问权限
chmod ~/.ssh/authorized_keys # 只要在一个节点执行即可。这里在 192.168..128上执行
ssh 192.168.65.129 cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
ssh 192.168.65.130 cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys # 分发整合后的文件到其它节点
scp ~/.ssh/authorized_keys 192.168.65.129:~/.ssh/
scp ~/.ssh/authorized_keys 192.168.65.130:~/.ssh/ # 测试时,第一次,需要输入密码,之后就不需要输入密码了。
# 在192.168.65.128上测试
ssh 192.168.65.129
ssh 192.168.65.130 # 在192.168.65.129上测试
ssh 192.168.65.129
ssh 192.168.65.130 # 在192.168.65.130上测试
ssh 192.168.65.128
ssh 192.168.65.129 # 删除,重新操作
# rm -fr /home/gtuser/.ssh/ # 编写脚本测试
cat >>/root/delete_cache.log <<EOF
#ssh -p -t gtuser@192.168.65.128 "sudo /bin/rm -f /tmp/global_cache.log; echo "/tmp/global_cache.log has been deleted"; echo `date`"
ssh -p -t gtuser@192.168.65.128 "sudo /bin/rm -f /tmp/global_cache.log"
ssh -p -t gtuser@192.168.65.129 "sudo /bin/rm -f /tmp/global_cache.log"
ssh -p -t gtuser@192.168.65.130 "sudo /bin/rm -f /tmp/global_cache.log"
EOF # 如果是root用户,类似的操作
scp ~/.ssh/authorized_keys gtuser@192.168.65.129:/home/gtuser/.ssh/
scp ~/.ssh/authorized_keys gtuser@192.168.65.130:/home/gtuser/.ssh/ sh /root/delete_cache.log
# 执行结果如下:
[root@my1- ~]# sh /root/delete_cache.log
Connection to 192.168.65.128 closed.
Connection to 192.168.65.129 closed.
Connection to 192.168.65.130 closed.
[root@my1- ~]#
非root用户sudo_ssh免密钥的更多相关文章
- linux 非root用户 ssh 免密码登录
之所以要把这个记录下来 是因为它的确和root用户不一样root用户 不需要改动什么权限问题 只要生成私钥/公钥对 即可 但是一样的操作在普通用户上就出了问题了 折腾了老半天 ssh-keygen ...
- 非root用户ssh 执行 sudo远程机器免密钥
非root用户ssh 执行 sudo远程机器免密钥 # 1.登陆192.168.1.10 ssh-keygen -t rsa # 一路回车 # 将公钥添加到认证文件中 cat ~/.ssh/id_rs ...
- 非root用户搭建hadoop伪分布式
0.安装软件列表 jdk-7u25-linux-x64.tar.gz hadoop-2.5.0.tar.gz hadoop-native-64-2.5.0.tar 1.准备Linux环境(root ...
- MHA非root用户搭建测试
最近一直在瞎搬砖,最大的感触是运维工作难做.不过废话不多说,最近被分配了一项比较有意思的task,尝试着非root用户搭建MHA并测试下能否成功漂移,以下是两天测试和文档编写的成果,分享给各位看客,欢 ...
- 【异常】ssh无法登录验证,非root用户ssh本机无法成功
1 自己搭建的是伪分布式环境,需要以非root用户启动Hadoop集群,之前root已经配置了ssh免密登录,但是自己切换到hdfs用户重新生成了一套ssh key, 但是切换到hdfs始终无法成功登 ...
- 多个UID为0的用户如何实现root用户的免密
文章目录 创建用户 创建用户密码 免密脚本 当前主机用户不是root 当前主机用户是root,远程主机多个用户uid为0 利用shell脚本实现远程主机uid为0的用户只有root一个 多个UID=0 ...
- ubuntu下非root用户下获得使用wireshark的权限
在非root用户下不能使用wireshark用来抓包,所以需要进行以下操作: sudo groupadd wireshark sudo chgrp wireshark /usr/bin/dumpcap ...
- 非root用户安装软件
下面简要说一下Linux下非root用户安装软件的一般流程: 1. 获取源代码,一般是wget方式,ubuntu可以使用apt-get source来获取源代码. 2. 解压源代码,一般使用tar - ...
- perl 下使用非root用户安装模块
perl下安装模块可以使用cpan命令,但是通常我们不具有root用户权限,所以只能以sudo方式安装模块. 例如需要安装Net::SCP::Expect模块, 执行cpan Net::SCP::Ex ...
随机推荐
- .net core compatibility windows & windows compatible Linux
Who is this package for? This package is meant for developers that need to port existing .NET Framew ...
- ASP.NET Web API Basic Identity 中的基本身份验证
缺点 用户凭证在请求中发送. 凭据作为明文发送. 每个请求都会发送凭据. 无法注销,除非结束浏览器会话. 易于跨站点请求伪造(CSRF); 需要反CSRF措施. 优点 互联网标准. 受所有主要浏览器支 ...
- ES6函数增强
函数参数可以拥有默认值.调用函数时,如果没有进行相应的实参传递,参数就会使用默认值.怎么给参数提供默认值呢?很简单,声明函数时候,给形参赋一个值就可以了,这个值就是参数的默认值. // num2拥有默 ...
- luogu4187
P4187 [USACO18JAN]Stamp Painting 样例 input3 2 2output6 input6 10 5output190 sol:首先可以发现,对于合法的序列,只要有一串至 ...
- JVM深入理解<二>
以下内容来自: http://www.jianshu.com/p/ac7760655d9d JVM相关知识详解 一.Java虚拟机指令集 Java虚拟机指令由一个字节长度的.代表某种特定含义的操作码( ...
- Web.xml中Filter过滤器标签几个说明
在研究liferay框架中看到Web.xml中加入了过滤器的标签,可以根据页面提交的URL地址进行过滤,发现有几个新标签没用过,下面就介绍以下几个过滤器的标签用法: <!-- 定义Filter ...
- centos 7创建ss服务(方式二)
一:安装pip yum install python-pip 如果没有python包则执行命令:yum -y install epel-release: 二:安装SS pip install shad ...
- Number Sequence POJ - 1019 递推 数学
题意 1 12 123 1234 12345 ....这样的序列 问第n位数字是几 是数字! 1-9! 思路:递推关系 主要是位数的计算 用a[i]=a[i-1]+(int)log10((do ...
- Java8的Stream语法详解(转载)
1. Stream初体验 我们先来看看Java里面是怎么定义Stream的: A sequence of elements supporting sequential and parallel agg ...
- maven编译时出现There are test failures
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.10:test (default-tes ...