사용자가 내 집 컴퓨터에 연결할 수 있도록 공용 VPN에 대한 역방향 터널을 사용하고 있습니다. 하지만 역방향 터널이 작동하기 때문에 내 서비스에는 해당 IP 주소가 로컬(127.0.0.1)로 표시됩니다.
SSH가 사용자의 공용 IP 주소(예: 127.0.0.1 대신 7.8.9.10)를 전달하도록 할 수 있습니까? 뭔가 깨질 수도 있나요?
답변1
SSH는 정보가 원격 또는 로컬 시스템과만 "전달"되는 터널을 구현합니다. 따라서 지정된 로컬 주소로만 보낼 수 있습니다. 그러나 로컬 개인 주소를 가상으로 구성하고 127.0.0.1 대신 여기에 바인딩할 수 있습니다.
sudo ifconfig eth0:0 10.0.0.1 위로 sudo ssh -g -L 1234:10.0.0.1:1234[이메일 보호됨]
IP 주소를 보존하려면 l2tp와 같은 것이 필요합니다. 이러한 NAT 상황에서의 포트 전달을 IP 매스커레이딩이라고 하며, 정의에 따라 원래 IP에 대한 정보는 터널을 통해 전송될 때 손실됩니다. 대신 전달된 패킷(소스 포함)을 l2tp와 같은 것으로 캡슐화하고 해당 패킷을 터널을 통해 전달한 다음 반대쪽 끝에서 디코딩해야 합니다.