非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免密钥的更多相关文章

  1. linux 非root用户 ssh 免密码登录

    之所以要把这个记录下来 是因为它的确和root用户不一样root用户 不需要改动什么权限问题  只要生成私钥/公钥对 即可 但是一样的操作在普通用户上就出了问题了 折腾了老半天 ssh-keygen ...

  2. 非root用户ssh 执行 sudo远程机器免密钥

    非root用户ssh 执行 sudo远程机器免密钥 # 1.登陆192.168.1.10 ssh-keygen -t rsa # 一路回车 # 将公钥添加到认证文件中 cat ~/.ssh/id_rs ...

  3. 非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 ...

  4. MHA非root用户搭建测试

    最近一直在瞎搬砖,最大的感触是运维工作难做.不过废话不多说,最近被分配了一项比较有意思的task,尝试着非root用户搭建MHA并测试下能否成功漂移,以下是两天测试和文档编写的成果,分享给各位看客,欢 ...

  5. 【异常】ssh无法登录验证,非root用户ssh本机无法成功

    1 自己搭建的是伪分布式环境,需要以非root用户启动Hadoop集群,之前root已经配置了ssh免密登录,但是自己切换到hdfs用户重新生成了一套ssh key, 但是切换到hdfs始终无法成功登 ...

  6. 多个UID为0的用户如何实现root用户的免密

    文章目录 创建用户 创建用户密码 免密脚本 当前主机用户不是root 当前主机用户是root,远程主机多个用户uid为0 利用shell脚本实现远程主机uid为0的用户只有root一个 多个UID=0 ...

  7. ubuntu下非root用户下获得使用wireshark的权限

    在非root用户下不能使用wireshark用来抓包,所以需要进行以下操作: sudo groupadd wireshark sudo chgrp wireshark /usr/bin/dumpcap ...

  8. 非root用户安装软件

    下面简要说一下Linux下非root用户安装软件的一般流程: 1. 获取源代码,一般是wget方式,ubuntu可以使用apt-get source来获取源代码. 2. 解压源代码,一般使用tar - ...

  9. perl 下使用非root用户安装模块

    perl下安装模块可以使用cpan命令,但是通常我们不具有root用户权限,所以只能以sudo方式安装模块. 例如需要安装Net::SCP::Expect模块, 执行cpan Net::SCP::Ex ...

随机推荐

  1. Web API2 使用默认Identity

    当您选择个人账户在Web API项目模板,项目包含一个令牌授权服务器验证用户凭证和问题.下面的图显示了相同的凭证流的Web API组件. 发送一个未经授权的请求 首先,运行应用程序并单击按钮调用的AP ...

  2. 22Java之JDBCTemplate总结

    写在前面:这里总结4种方式来操作数据库(SE阶段) 一.JDBC         JDBC有关的类:都在java.sql 和 javax.sql 包下.   1.数据准备               ...

  3. Cent OS安装使用ffmpeg(完整版)

    Cent OS安装使用ffmpeg centos作为主流后台linux 系统,ffmpeg作为视频流解析的主力,尤其是ffmpeg配合opencv使用,则是视觉操作的基础 版本: ffmpeg3.1 ...

  4. Summary (7Road)

    今天有幸参加了一次考试,碰到的一些考题如下: 很多东西,明明都是会的,可是就是写不出来.可见自己的Linux基础还是很薄弱,懒得去记这些有用的东西.既然自己不是老板,不是项目经理,就该努力记住这些基础 ...

  5. SA / SAM 题目集

    上一次做 SA / SAM 相关的题还要数到某场毒瘤 NOIP 模拟赛--这么久没做了都快忘光了--写点东西记录一些最近做到的水好题. LOJ2059 「TJOI / HEOI2016」字符串 题意 ...

  6. The Python Challenge 谜题全解(持续更新)

    Python Challenge(0-2) The Python Challengehttp://www.pythonchallenge.com/ 是个很有意思的网站,可以磨练使用python的技巧, ...

  7. Hdoj 2109.Fighting for HDU 题解

    Problem Description 在上一回,我们让你猜测海东集团用地的形状,你猜对了吗?不管结果如何,都没关系,下面我继续向大家讲解海东集团的发展情况: 在最初的两年里,HDU发展非常迅速,综合 ...

  8. 自学Aruba之添加黑名单Blacklists方法

    点击返回:自学Aruba之路点击返回:自学Aruba集锦 07 自学Aruba之添加黑名单Blacklists方法 方法一:页面添加方式,临时添加黑名单(禁止入网60min)方法二:命令行添加方式,临 ...

  9. linux中$#,$0,$1,$2,$@,$*,$$,$?的含义

    $# 是传给脚本的参数个数$0 是脚本本身的文件名$1 是脚本后接的第一个参数$2 是脚本后接的第二个参数$@ 是传给脚本的所有参数列表,"$1" "$2" & ...

  10. 【BZOJ5318】[JSOI2018]扫地机器人(动态规划)

    [BZOJ5318][JSOI2018]扫地机器人(动态规划) 题面 BZOJ 洛谷 题解 神仙题.不会.... 先考虑如果一个点走向了其下方的点,那么其右侧的点因为要被访问到,所以必定只能从其右上方 ...