ssh免密码远程执行sudo命令

来源:互联网 发布:孤独症 知乎 编辑:程序博客网 时间:2024/05/22 07:06

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

>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的权限。

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


0 0