Alpine Linux의 sshuttle이 "지원되는 방법을 자동으로 찾을 수 없습니다"라는 메시지와 함께 실패합니다.

Alpine Linux의 sshuttle이 "지원되는 방법을 자동으로 찾을 수 없습니다"라는 메시지와 함께 실패합니다.

Alpine 가상 머신에서 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)을 사용하지 않습니다.

답변1

소스 코드를 주의 깊게 확인하세요.

  • ipfw 방법 ipfw에는 $PATH에 바이너리가 필요합니다.
  • nat는 iptables$PATH에 바이너리가 필요합니다.
  • nft nft에는 $PATH에 바이너리가 필요합니다.
  • pf pfctl에는 $PATH에 바이너리가 필요합니다.

iptables기본적으로 포함되어 있는 Ubuntu와 달리 Alpine에 해당 기능이 누락된 것 같습니다 . iptables를 설치하면 이 문제가 해결됩니다.

저는 Alpine Linux 사용자는 아니지만 패키지가 iptables라고 되어 있는 것 같아서

apk add iptables

그러면 문제가 해결될 것입니다.

관련 정보