Alpine Linux 上的 sshuttle 失敗並顯示“無法自動找到支持的方法”
我正在嘗試在 Alpine VM 上使用 sshuttle。我能夠安裝依賴項並從 GitHub 編譯原始碼。但是,當我嘗試連接到我的伺服器時,我收到以下錯誤消息:
fw: fatal: Unable to automatically find a supported method. Check that the appropriate programs are in your PATH. We tried methods: ['nat', 'nft', 'pf', 'ipfw']
c: fatal: ['/usr/bin/sudo', '-p', '[local sudo] Password: ', '/usr/bin/env', 'PYTHONPATH=/usr/lib/python3.8/site-packages/sshuttle-1.0.6.dev12+gf928f94-py3.8.egg', '/usr/bin/python', '/usr/bin/sshuttle', '--method', 'auto', '--firewall'] expected READY, got b''
我不明白的是,完全相同的事情在我的 Ubuntu 設置上也適用,我的路徑中沒有任何 nat、nft、pf 或 ipfw。但是,我的兩台機器不使用相同版本的 sshuttle:Ubuntu 上為 0.78.5,Alpine 上為 1.0.6.dev12+gf928f94。
瀏覽了原始碼:
- ipfw 方法需要
ipfw
$PATH 中的二進製文件- nat 需要
iptables
$PATH 中的二進製文件- nft 需要
nft
$PATH 中的二進製文件- pf 需要
pfctl
$PATH 中的二進製文件我懷疑您的 Alpine 缺少
iptables
,不像 Ubuntu 預設情況下可能有它們。安裝 iptables 應該可以解決這個問題。我不是 Alpine Linux 使用者,但這個包似乎被命名為 iptables,所以
apk add iptables
應該做的伎倆。