登录
首页 >  Golang >  Go问答

ssh 以用户身份登录并更改为 root,无需 sudo

来源:stackoverflow

时间:2024-04-06 08:09:33 429浏览 收藏

从现在开始,我们要努力学习啦!今天我给大家带来《ssh 以用户身份登录并更改为 root,无需 sudo》,感兴趣的朋友请继续看下去吧!下文中的内容我们主要会涉及到等等知识点,如果在阅读本文过程中有遇到不清楚的地方,欢迎留言呀!我们一起讨论,一起学习!

问题内容

我的 golang 代码有以下任务:

  • 该命令必须在服务器上以 root 用户身份在 bash 中远程运行,并且命令输出必须在变量中获取。
  • 已禁用以 root 身份通过 ssh 登录。
  • 服务器上的 sudo 被禁用,因此我必须使用“su -”并输入密码
  • 因为我想在 bash 中使其尽可能自动化,所以密码必须存储在命令中

以下是工作流程操作:

  1. 通过 SSH(作为非特权用户)登录远程主机
  2. 提升至特权“root”用户 --> su -
  3. 输入 root 密码
  4. 运行root可以执行的命令
  5. 在本地主机上输出到字符串并执行一些操作

我用谷歌搜索了好几天,但似乎找不到解决方案。 有没有人能解决这个问题?


解决方案


您面临的问题是在命令执行后与该命令进行交互。

使用 exec.Command 执行非交互式命令非常容易。

我建议使用 Expect 进行交互,或位于 here 的 Golang 等效项。

理论要掌握,实操不能落!以上关于《ssh 以用户身份登录并更改为 root,无需 sudo》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>