Fstab

當“手動”命令正常工作時,fstab 連接中的 sshfs 使用 ~/.ssh/conf 中的 ssh 隧道重置

  • October 18, 2019

我正在嘗試在 fstab 中設置 sshfs 掛載,以持久掛載必須通過 ssh 隧道訪問的網路目錄。

我的.ssh/config樣子是這樣的:

Host A
   Hostname outer.server
   User <user>
   IdentityFile /home/<user>/.ssh/id_rsa
   ForwardAgent yes

Host B
   Hostname inner.server
   User <user>
   IdentityFile /home/<user>/.ssh/id_rsa
   ProxyCommand ssh -q A "nc %h %p"
   ForwardAgent yes

這工作正常:

sshfs B:/home/<user>/ /mnt/B

在 fstab 中,這不會

sshfs#B:/home/<user>/    /mnt/B      fuse.sshfs      defaults,idmap=user,allow_other,reconnect,_netdev,users 0       0

並且,mount -a在更新後執行時fstab以使更改生效返回:

read: Connection reset by peer

我歡迎任何關於 fstab 版本可能無法正常工作的建議。

root 看不到您的每使用者 ssh 配置文件。您需要將其放置在根主目錄 ( /root/) 或系統範圍的配置文件中/etc/ssh/ssh_config,假設身份驗證密鑰未加密(沒有密碼)。

您還可以通過丟棄 netcat 並直接在 SSH 中使用 -W 開關進行 IO 轉發來節省很多麻煩,或者如果您有足夠新的 OpenSSH,您可以只使用 ProxyJump 選項(有關詳細資訊,請參閱手冊)。

並刪除ForwardAgent yes. 你不需要它來做任何事情,它只是將你的私鑰暴露給伺服器。

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