ssh免密码远程执行sudo命令

原创 2015年11月19日 22:41:26

目的是执行下面的命令不需要输入任何密码!

>ssh username@host "sudo command"

1. 在本地机器上生成秘钥对儿

ssh-keygen -t rsa

一路回车后生成在~/.ssh/目录下生成两个文件id_rsa和id_rsa.pub。后者是公钥。

2. 远程机器上如果没有~/.ssh/目录的使用命令建立

ssh username@host "mkdir -p .ssh"

3. 将本地机器的id_rsa.pub加入到远程机器的~/.ssh/authorized_keys文件末尾。

cat .ssh/id_rsa.pub | ssh username@host 'cat >> .ssh/authorized_keys'

4. 验证是否ssh可以免密码登录

> ssh username@host
5. 在远程机器上使用visudo在/etc/sudoers里面添加一行。添加这行需要有sudoer的权限。

username	ALL=(ALL:ALL) NOPASSWD:ALL
6. 验证一下,是不是很爽。不用老敲字了!而且可以在脚本中无缝运行远程命令了。


相关文章推荐

ssh执行远程服务器需要sudo提权的脚本

前言 运维是件很神奇的工作,牛逼的运维很轻松可以搞定很复杂的任务,sb的运维天天时间都耗上可能也解决不了问题(ps:因为他把时间都花在了可以重复执行的事情上) 在写这篇博客之前,我goog...

ansible 切换用户建立ssh连接并使用sudo 权限执行程序

Ansible 是一款非常有用的统一集群管理工具,安装简单不需要再被控节点安装客户端。介绍Ansible的文章已经很多了,本文不再对ansible做基础介绍。欢迎拍砖指正。 由于项目需求,需要使用an...

ssh免密码登陆,sudo免输入密码方法

几台linux服务器之间经常相互ssh和scp,每次都手动输入密码比较麻烦

ssh 远程执行命令简介

在写这篇博客之前,我google了一堆相关文章,大都是说修改/etc/sudoers,然后NOPASSWD:指定的cmd,但是真心不管用,没有远程虚拟终端这个方法就是浮云,ubuntu10.04 se...

linux下开启SSH,并且允许root用户远程登录,允许无密码登录

1.输入    sudo yum install openssh*    开始安装 2.输入     sudo vi /etc/ssh/sshd_config    进行设定 首先...

ssh执行远程服务器需要sudo提权的脚本

前言 运维是件很神奇的工作,牛逼的运维很轻松可以搞定很复杂的任务,sb的运维天天时间都耗上可能也解决不了问题(ps:因为他把时间都花在了可以重复执行的事情上) 在写这篇博客之前,我goog...

Ubuntu下ssh服务的安装与登陆(ssh远程登陆)

Ubuntu默认并没有安装ssh服务,如果通过ssh远程连接到Ubuntu,需要自己手动安装ssh-server。 判断是否安装ssh服务,可以通过如下命令进行: ps -e|grep ssh ...
  • zht666
  • zht666
  • 2013年07月16日 11:16
  • 54157

Linux用户配置sudo权限(visudo)

1,切换为root用户 2,chmod u+w /etc/sudoers 3,vim /etc/sudoers 4,在文件中找到如下语句root    ALL=(ALL)    ALL,在其后新添一行...

golang并发ssh执行远程命令

需求在kubernetes/docker容器化应用中,业务应用由大量容器组成,由于生产环境中出于安全考虑,一般不会允许用户直接登入集群机器,然后登入机器上的容器。况且数量之多,也没有效率。因此设计了一...

基于ssh协议免密码的openwrt环境下数据传输及远程指令执行

问题很简单,一般情况下,openwrt运行在一些嵌入式平台或者路由器上,而这种平台往往没有太多的资源,如硬盘存储。但一些数据,如流量又只能捕获下来暂时存放于其上,日积月累,如果不把数据拷贝回来并删除o...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ssh免密码远程执行sudo命令
举报原因:
原因补充:

(最多只允许输入30个字)