使用Python和paramiko以root身份执行远程命令

用户名

目前,我正在使用Python脚本运行嵌入式shell脚本,该操作系统包含rootnormal_user

问题是,当我尝试在一行中使用单个命令normal_user切换root时

我只需要修改代码,什么visudo也不能实现,su使用它,而不给normal_user编码以外的任何权限。

我该如何实现?

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('172.16.x.x', username='my_name', password='my_password')

***stdin, stdout, stderr = ssh.exec_command('switch to root user && execute a commands as root')***


stdin.flush()
print stdout.readlines()
ssh.close()
大田美子

假设OS环境已sudo安装命令,normal_user并且允许在没有密码的情况下sudo到root:

 stdin, stdout, stderr = ssh.exec_command('sudo -i -H -- echo $USER ; echo $USER')

选项-i模拟程序以root用户登录(准备.profile等环境变量),选项-H将$HOME目录设置为与root用户相同。根据您的用例,这些可能是必要的,也可能不是必需的。

echo $USER 示例显示您以root用户身份执行该命令(它应返回$ USER = root)。

为了安全起见,normal_user仅当用户使用正确的SSH密钥登录时,才能将sudo权限设置为

http://www.evans.io/posts/ssh-agent-for-sudo-authentication/(复杂)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用paramiko在远程机器上执行git命令

来自分类Dev

以 root 用户身份执行远程 ssh 命令并在命令行中提供 su 密码

来自分类Dev

使用Paramiko将命令从远程服务器执行到另一台远程服务器

来自分类Dev

使用 sudo 执行命令与以 root 用户身份执行命令有什么区别?

来自分类Dev

以root身份执行shell命令的方法?

来自分类Dev

使用paramiko python ssh库通过xterm运行来远程执行程序

来自分类Dev

使用 Python 中的 Paramiko 从远程命令列出的 SFTP 服务器下载文件

来自分类Dev

Sudo命令以root身份而不是指定用户身份执行

来自分类Dev

root是否可以以非root用户身份执行命令?

来自分类Dev

允许使用SSH在Linux上以root身份自动执行命令

来自分类Dev

使用Python Paramiko exec_command执行时命令未完成

来自分类Dev

使用Python Paramiko exec_command执行某些Unix命令会失败,并显示“ <command> not found”

来自分类Dev

Python执行远程命令,无需等待返回

来自分类Dev

Python执行远程命令,无需等待返回

来自分类Dev

使用for循环中的变量执行远程命令

来自分类Dev

使用ssh远程执行命令

来自分类Dev

使用ssh和shell脚本在远程计算机上使用变量执行命令

来自分类Dev

使用ssh和shell脚本在远程计算机上使用变量执行命令

来自分类Dev

如何在Java中以root身份执行Shell命令

来自分类Dev

我无法以root用户身份执行命令

来自分类Dev

“ su不记录以root用户身份执行的命令”

来自分类Dev

如何以root身份从Haskell执行命令?

来自分类Dev

使用多个命令的Python paramiko模块

来自分类Dev

通过python paramiko ssh会话执行Wine命令时失败

来自分类Dev

使用Paramiko通过SSH执行重新启动命令

来自分类Dev

使用Paramiko写入Cisco Shell的命令无法执行

来自分类Dev

使用Paramiko通过SSH执行重新启动命令

来自分类Dev

使用批处理文件和PuTTY在远程服务器上执行sftp命令

来自分类Dev

使用批处理文件和PuTTY在远程服务器上执行sftp命令

Related 相关文章

  1. 1

    使用paramiko在远程机器上执行git命令

  2. 2

    以 root 用户身份执行远程 ssh 命令并在命令行中提供 su 密码

  3. 3

    使用Paramiko将命令从远程服务器执行到另一台远程服务器

  4. 4

    使用 sudo 执行命令与以 root 用户身份执行命令有什么区别?

  5. 5

    以root身份执行shell命令的方法?

  6. 6

    使用paramiko python ssh库通过xterm运行来远程执行程序

  7. 7

    使用 Python 中的 Paramiko 从远程命令列出的 SFTP 服务器下载文件

  8. 8

    Sudo命令以root身份而不是指定用户身份执行

  9. 9

    root是否可以以非root用户身份执行命令?

  10. 10

    允许使用SSH在Linux上以root身份自动执行命令

  11. 11

    使用Python Paramiko exec_command执行时命令未完成

  12. 12

    使用Python Paramiko exec_command执行某些Unix命令会失败,并显示“ <command> not found”

  13. 13

    Python执行远程命令,无需等待返回

  14. 14

    Python执行远程命令,无需等待返回

  15. 15

    使用for循环中的变量执行远程命令

  16. 16

    使用ssh远程执行命令

  17. 17

    使用ssh和shell脚本在远程计算机上使用变量执行命令

  18. 18

    使用ssh和shell脚本在远程计算机上使用变量执行命令

  19. 19

    如何在Java中以root身份执行Shell命令

  20. 20

    我无法以root用户身份执行命令

  21. 21

    “ su不记录以root用户身份执行的命令”

  22. 22

    如何以root身份从Haskell执行命令?

  23. 23

    使用多个命令的Python paramiko模块

  24. 24

    通过python paramiko ssh会话执行Wine命令时失败

  25. 25

    使用Paramiko通过SSH执行重新启动命令

  26. 26

    使用Paramiko写入Cisco Shell的命令无法执行

  27. 27

    使用Paramiko通过SSH执行重新启动命令

  28. 28

    使用批处理文件和PuTTY在远程服务器上执行sftp命令

  29. 29

    使用批处理文件和PuTTY在远程服务器上执行sftp命令

热门标签

归档