linux - CentOS 中 sudo 没有提示

标签 linux ssh sudo

我有一个 java 应用程序使用 ssh 连接连接到远程 CentOS。

有一个shell脚本,为了执行它,我需要输入密码。

[user@**** ~]$ sudo ***
Password: 

我的问题是如何在没有提示的情况下执行脚本。(我无法修改/etc/sudoers,而且我也不想使用outputStream发送密码。)

最佳答案

最好、更安全的方法是 sudo visudo 并附加“NOPASSWD:”以使 sudo 不需要密码。

中间的方法是使用 sudo -S 参数,该参数期望密码来自标准输入而不是来自终端设备。

最糟糕且不太安全的方法是传递一个明文密码,即使通过使用“expect”实用程序的 ps -ef 命令也可以捕获该密码(安装它,然后“manexpect”)

关于linux - CentOS 中 sudo 没有提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9597342/

相关文章:

windows - 使用 scp 将本地文件从 Windows 复制到远程服务器

php - 从 PHP/Apache、exec() 或 system() 程序作为 root : "sudo: unable to open audit system: Permission denied"

linux - 对 Node JS 中的 NPM 进行故障排除

python - 以某些标准特别开始的阅读行

linux - Linux 帧缓冲区驱动程序能否获得有关其内容的所有更改的通知?

linux - 如果文件更改,请发送有关差异的电子邮件

security - 在使用 key 的 SSH 身份验证期间,中间人攻击是否构成安全威胁?

mysql - sed 中的变量替换

ssh - 如何在 gitlab 中添加 SSH key ?

linux - Ant、sudo 和 copy 不工作