Permissions

使用 sshfs 以使用者權限掛載根文件系統

  • May 5, 2022

我想用來sshfs在我的機器上掛載文件系統文件夾(比如說~/home)。

我希望能夠編輯/使用任何編輯器(例如 edit /etc/sysctl.conf)安裝的文件夾中的文件。

簡而言之,我想sshfs用 r+w+x 權限將我的整個伺服器文件系統掛載到我的桌面中每個文件

我試圖在這裡尋找答案,但無處可去,只能以“只讀”權限安裝。命令是:

sshfs hostname@ip.address:/ ~/Desktop -o max_conns=8,transform_symlinks,dir_cache=yes,idmap=user,uid=$(id -u),gid=$(id -g),reconnect -d -v -C

sshfs hostname@ip.address:/ …在伺服器端與您登錄時使用的使用者相同ssh hostname@ip.address,因此很可能hostname(有點誤導性的名稱,它是使用者)。如果hostname不等於root在伺服器上,那麼您無法編輯任意文件是正常的。

SSH 伺服器(守護程序)sshdroot. 它分叉以滿足您的要求。在您進行身份驗證後,hostname您最終會得到它的服務,sshd它放棄了它的特權並以hostname. 這樣你只能在伺服器上做hostname可以做的事情。

無論您在本地看到什麼,這都有效。選項idmapuid並不gid能克服sshd伺服器上的事實hostname為你工作。這些選項旨在使本地掛載在本地環境中看起來正常。

為了能夠在/etc/sysctl.conf本地編輯遠端文件,您需要以可以在伺服器上編輯的使用者身份向伺服器進行身份驗證/etc/sysctl.conf。這適用於任何文件。兩個基本選項:

  1. 您可以弄亂伺服器上的權限。危險的。例如,如果您/etc/sudoers在伺服器上過於開放,那麼sudo將拒絕在那里工作。
  2. 讓自己去做sshfs root@ip.address:/ …不推薦

無論哪種方式,您想要做的事情都不是一個安全的想法。

引用自:https://unix.stackexchange.com/questions/701440