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

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

# 1、登陆192.168.1.10

ssh-keygen -t rsa # 一路回车

# 将公钥添加到认证文件中

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

# 并设置authorized_keys的访问权限

chmod 600 ~/.ssh/authorized_keys

[[email protected] ~]# cat /root/.ssh/id_rsa.pub                                  
ssh-rsa

AAAAB3NzaC1yc2EAAAABIwAAAQEAxIuTif2tmTqEyhTV2im7UWdETqM+LxCbgudawuD2Wl8Mip6C9KGOC84jsphbPrjcWrYnSWAkdZ/p0uWULjdNWCysugyBWX6PyHKym1dVkjChEbG7fv2xgeuMoTmNK1vaujnFdJUqL40Cg1hRtVgiq9LHKNW9uw9HYpdPeQi3seiwlttPJymfTzvom4FVzcwC81RrlECkVBLsYY4HIfSaDFDardjkAo4PDlqf1XzFyrG20hTRcVpkCty+FYXYHqh3xS+9+XwDv5TysS9c60+qZ9aNxacZ7t9AeZ8XOdUPdaQQXJ3ix6eo+r9CXOPbcBrXqZ4GuWY6fNes7PxWgjtEPw==
[email protected]
[[email protected] ~]#

# 2、然后再目标机器上执行如下操作

useradd deluser
echo "pwddeluser" |  passwd --stdin deluser 

# 3、切换用户

su - deluser
# 每个节点都执行
ssh-keygen -t rsa # 一路回车
# 将公钥添加到认证文件中
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
# 并设置authorized_keys的访问权限
chmod 600 ~/.ssh/authorized_keys
# 追加到该文件下
cat >>/home/deluser/.ssh/authorized_keys <<"EOF"
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAxIuTif2tmTqEyhTV2im7UWdETqM+LxCbgudawuD2Wl8Mip6C9KGOC84jsphbPrjcWrYnSWAkdZ/p0uWULjdNWCysugyBWX6PyHKym1dVkjChEbG7fv2xgeuMoTmNK1vaujnFdJUqL40Cg1hRtVgiq9LHKNW9uw9HYpdPeQi3seiwlttPJymfTzvom4FVzcwC81RrlECkVBLsYY4HIfSaDFDardjkAo4PDlqf1XzFyrG20hTRcVpkCty+FYXYHqh3xS+9+XwDv5TysS9c60+qZ9aNxacZ7t9AeZ8XOdUPdaQQXJ3ix6eo+r9CXOPbcBrXqZ4GuWY6fNes7PxWgjtEPw== [email protected]
EOF

# 4、root用户下追加该如下内容

cat >>/etc/sudoers<<"EOF"
deluser   ALL=NOPASSWD:/bin/rm -f /tmp/x.log
EOF
echo "123" >/tmp/x.log
# 192.168.1.10上执行 测试
ssh  -p 22879     -t [email protected]192.168.1.56  "sudo rm -f /tmp/x.log"  # 必须执行测试,需要输入 yes ,因为第一次需要记住登陆信息

# 这样就在192.168.1.10执行 ssh  -p 22879     -t [email protected]192.168.1.56  "sudo rm -f /tmp/x.log"
# 就会删除 192.168.1.56 的 /tmp/x.log 这个文件
# 再次执行就不再需要输入任何信息了

# 注意这个是单向互信,如果需要双向的话,将其/home/deluser/.ssh/authorized_keys 拷贝给对方的同样文件中即可。

原文地址:https://www.cnblogs.com/bjx2020/p/9052198.html

时间: 2024-10-10 23:00:59

非root用户ssh 执行 sudo远程机器免密钥的相关文章

MHA+非root用户SSH等效性配置

环境:CentOS5.8 MySQL5.5.17 实验:搭建MHA高可用架构(非root用户SSH等效性配置)SSH等效性用户配置的是:concert  端口:1314 MHA配置文件 [[email protected] mha]$ more /etc/masterha_default.cnf [server default] user          = root password      = mysql_admin ssh_user      = concert ssh_port   

Docker安全--关于Docker使用root与非root用户的场景中的容器与host中的执行用户的研究

/************************************************* * Author : Samson * Date : 08/15/2015 * Test platform: * gcc 4.8.2 * GNU bash, 4.3.11(1)-release (x86_64-pc-linux-gnu) * ***********************************************/ 结论 实际进行测试的Dockerfile是shadowso

linux下用非root用户重启导致ssh无法连接的问题

问题描述 安装好了centOS服务器,一直用Secure CRT工具通过ssh服务来远程连接linux,很方便的进行各种操作.今天偶然尝试了一下在非root的一般用户下执行重启服务器的命令,发现一般用户是没有权限执行重启的,果断使用sudo命令再次执行,终于重启成功,却发现Secure CRT再也连不上服务器了,郁闷不已,去网上查找各种资料总算有了一点粗浅的认识,记录下来,也让其他的linux beginner们能够少走些弯路吧. 普通用户下执行重启命令: shutdown -r now 或者

linux非root用户执行开机启动程序

问题 开机启动其他用户的程序或者说非root用户执行开机启动 编写开机启动脚本 编写开机启动脚本apple_tree,放到/etc/init.d,系统启动时会自动执行. 例如,/etc/init.d/apple_tree 启动脚本的内容格式,可参考linux service . 其中的start做如下定义: start(){ su - deploy -c ${APPLE_BIN} } 表示切换到deploy用户,并且环境变量也改变到deploy的环境,然后执行脚本. 如果是做成后台服务,需要修改

linux下非root用户的sudo问题

linux下的root用户是个超级管理员,一般是不用这个用户登录进行操作的,但有时候需要root权限,又不想切换用户的话可以使用sudo命令.但是不是所有的用户都可以使用sudo命令的. 首先可能会遇到下面的提示: ××× is not in the sudoers file.  This incident will be reported. 解决办法: 1.修改/etc/sudoers 文件 #su - #chmod u+w /etc/sudoers 在 root    ALL=(ALL) 

Linux系统下给非root用户添加sudo权限

有时,在linux系统中非root用户运行sudo命令,会提示类似信息: xxx is not in the sudoers file. This incident will be reported. 这里,xxx是当前用户名,该用户无法执行sudo命令,这时候,解决方法如下: 1.进入超级用户模式.也就是输入"su -",系统会让你输入超级用户密码,输入密码后就进入了超级用户模式.(也可以直接用root登录): 2.给配置文件“/etc/sudoers”添加“写”权限.输入命令: c

设置开机启动时指定非ROOT用户执行相应的脚本

1 [[email protected] sm01]# vim /etc/rc.d/rc.local 2 3 #!/bin/sh 4 # 5 # This script will be executed *after* all the other init scripts. 6 # You can put your own initialization stuff in here if you don't 7 # want to do the full Sys V style init stuf

linux非root用户使用秘钥登陆实现方法

linux非root用户使用秘钥登陆实现方法: 1.拷贝/root/.ssh/公钥放到普通用户家目录下的 authorized_keys里     2.修改/etc/ssh/sshd_config的参数,禁止root账号远程登陆使用,只允许普通用户远程登陆, 使用 su sudo切换使用root账号的权限

CentOS6.7下使用非root用户(普通用户)编译安装与配置mysql数据库并使用shell脚本定时任务方式实现mysql数据库服务随机自动启动

CentOS6.7下使用非root用户(普通用户)编译安装与配置mysql数据库并使用shell脚本定时任务方式实现mysql数据库服务随机自动启动1.关于mysql?MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司.MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性.特点: Mysql是开源的,所以你不需要支付额外的费用.Mysql支持大型的数据库.可以处理拥有上千