linux - 如何使用 ruby​​ 脚本以 ROOT 用户身份登录 linux 终端

标签 linux ssh command-line-interface su

我想使用 SSH 在远程服务器上运行脚本。

我已经编写了所有可以使用系统命令正常运行的代码。

要在远程服务器上运行我的代码,我需要一些我需要在远程服务器上安装的包。

为此,我需要以 ROOT 用户身份登录到远程终端。当我尝试使用 Ruby 脚本时,我得到如下内容

[not_root_user@remote_server]$ su
Password: 

我需要一些命令,使用它我可以登录到远程服务器,如下所示

[not_root_user@remote_server]$ su -p ******
[root@remote_server]# 

有没有接受密码的linux命令?

最佳答案

所以您想让您的脚本充当 root 用户?

不是很推荐,但是可以用expect: http://en.wikipedia.org/wiki/Expect

那里的 wiki 有一个基本的自动 telnet session 的演练,您可以根据自己的需要进行调整。

但是,您将使用明文形式的 root 密码,这可能是一个安全问题。如果你走那条路,一旦安装了这个包,我肯定会从宇宙中抹去那个脚本的所有副本。

但是如果您允许直接 root 登录,那么您已经遇到了一些安全问题。 Sudo 在我使用过的每个现代 Linux 发行版上都可以开箱即用,如果可能的话,我会坚持使用它。

另一个同样乏味的选择是通过 ssh 设置 root 到 root 的无密码登录。

关于linux - 如何使用 ruby​​ 脚本以 ROOT 用户身份登录 linux 终端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10228766/

相关文章:

git - SSH 权限在重新启动时被拒绝

shell - 如何使用 scp 将文件夹从远程复制到本地?

linux - 如何判断我使用的是哪个 Unix shell?

linux - 如何在 Linux 中获取连接到互联网的程序列表?

linux - 如何从 Shell 脚本逆向 SSH

azure - 如何使用 Azure CLI 访问 AAD B2C 租户

text - NANO 中一行 "Comment"的键盘快捷键?

python - 使用 django 作为 CLI 工具

Python3,如何在CentOS 7上安装numpy?

linux - 学习内核模块,module.ko导致模块已经加载?