Iptables 규칙은 QubesOS에서 VPN을 통해서만 이동하도록 구성된 ProxyVM을 통한 appVM을 허용합니다.

Iptables 규칙은 QubesOS에서 VPN을 통해서만 이동하도록 구성된 ProxyVM을 통한 appVM을 허용합니다.

내 appVM이 내 로컬 네트워크의 삼바 서버와 통신하도록 하려고 합니다. 문제는 이 appVM이 ProxyVM을 통과하도록 강제하고 VPN(openvpn)을 통과하지 않는 한 트래픽이 통과하는 것을 허용하지 않는다는 것입니다.

그래서 이를 허용하기 위해 iptables 규칙을 추가하려고 시도했지만 제대로 작동하지 않는 것 같고 무엇이 누락되었는지 궁금합니다. 다음 규칙은 내가 ProxyVPN에 추가한 규칙입니다(이것이 제가 편집해야 하는 유일한 VM이어야 합니다, 그렇죠?)

iptables -I FORWARD 1 -d <samba-server-ip> -p tcp -m multiport --dports 137:139,445 -j ACCEPT

서버에 연결을 시도한 후 대상 규칙이 몇 번(정확히는 6번) 적중되는 것을 볼 수 있지만 여전히 오류가 발생합니다.

"mount error(115): Operation in progress" 

Cifs 공유를 마운트하려고 할 때 appVM에서 오류 메시지가 나타납니다. 또한 DROP 규칙이 적중되는 것을 볼 수 없으므로 FirewallVM, netVM 또는 심지어 appVM에서 iptables 규칙을 편집해야 한다고 믿게 되지만 왜 이런 일이 발생하는지 알 수 없습니다.

어떤 종류의 도움이라도 대단히 감사하겠습니다!

답변1

문제는 라우팅 테이블에 삼바 서버에 대한 경로를 추가해야 한다는 것입니다. 그렇지 않으면 VPN 인터페이스를 통해 모든 것을 라우팅하려고 시도할 것입니다.

ip route add <samba-ip>/32 via <sys-firewall-ip>

이것으로 모든 것이 해결되었습니다.

관련 정보