使用 sudo 账户挂载 sshfs

使用 sudo 账户挂载 sshfs

我们有一个Linux系统ferguson。

关于弗格森:
  • 我的用户 ID 是 a123。
  • 作为用户 ID a123,我可以sudo su进入用户 ID admin。
  • 用户 ID 为 admin 的账号无法直接登录。
  • 我们必须使用我们的个人用户标识sudo su进入用户标识管理员。
我的 Windows 笔记本电脑上有一个虚拟盒 Linux VM。
  • 从我的笔记本电脑的 Linux VM,我可以使用用户 ID a123 来 sshfs 挂载 a123@ferguson。
  • 我想以 admin@ferguson 的身份进行 sshfs 挂载。
  • 但只能通过 访问 admin@ferguson sudo su

我的笔记本电脑的 Linux VM 如何使用用户 ID a123 以管理员身份执行 sshfs mount ferguson,并使用 sudo 访问?

答案1

我认为您无法以ferguson用户身份直接通过 ssh 连接的唯一原因admin仅仅是因为没有设置密码admin,或者您根本不知道密码。还有其他原因导致此操作无法正常工作,例如没有登录 shell。

对此最好的解决方案是使用 SSH 密钥。

在您的 Linux VM 上,如果您还没有生成公钥/私钥对:$ ssh-keygen -t rsa。按照提示操作,并接受默认位置。建议在私钥上设置密码以保护它。

您现在将拥有一个可以在 下使用的公钥~/.ssh/id_rsa.pub

在 上ferguson,像平常一样切换到帐户admin。如果文件 ~/.ssh/authoized_keys 不存在,则需要先创建它。权限很重要,如果权限不正确,SSH 将不允许访问。

$ mkdir -p ~/.ssh
$ chmod 0700 ~/.ssh
$ touch ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys

然后,您需要将您的公钥复制到 中的一行中authorized_keys。如果此文件已存在,则可能还有其他密钥。将您的密钥放在一行中。

您现在应该能够以用户身份使用 sshfs admin。事实上,如果admin已经设置了合适的登录 shell(例如/bin/bash),您甚至可以以用户身份打开 ssh 会话admin

相关内容