포트 22 리디렉션으로 인해 lxc 컨테이너가 호스트로 SSH를 통해 연결되는 이유는 무엇입니까?

포트 22 리디렉션으로 인해 lxc 컨테이너가 호스트로 SSH를 통해 연결되는 이유는 무엇입니까?

2개의 lxc 컨테이너(X와 Y)가 있는 호스트 A가 있습니다.

원래 호스트(A)의 포트 22가 X로 전달되었습니다. 이 구성을 사용하면 컨테이너 X에서 ssh를 사용할 수 없었고 contianer Y에서 ssh를 수행할 때 ssh 연결이 어떻게 작동하는지 확인했습니다. X로 전달되었습니다(외부 컴퓨터에 SSH 접속을 했음에도 불구하고).

호스트에서 포트 2222를 X:22로 전달하는 포트 22를 변경하면 모든 것이 정상으로 돌아갔습니다.

포트 22를 lxc 컨테이너로 전달하는 방법이 있습니까?

호스트 A의 포트 22를 컨테이너 X로 전달하는 데 사용한 Iptables 명령:

iptables -t nat -A POSTROUTING -s 10.0.0.4 -o eth0 -j MASQUERADE

iptables -t nat -A 사전 설정 -p tcp --dport 22 -j DNAT --대상 10.0.0.4:22

감사해요.

답변1

내 iptable 규칙에 추가하여 수정했습니다 -i eth0(외부 트래픽만 컨테이너 X:22로 리디렉션해야 함을 지정하려면).

iptables -t nat -A 사전 설정 -p tcp --dport 22 -i eth0 -j DNAT --대상 10.0.0.4:22

관련 정보