![SSH 프록시가 작동 중입니다. 이제 클라이언트에 대해 다른 발신 IP를 선택해야 합니다.](https://rvso.com/image/504124/SSH%20%ED%94%84%EB%A1%9D%EC%8B%9C%EA%B0%80%20%EC%9E%91%EB%8F%99%20%EC%A4%91%EC%9E%85%EB%8B%88%EB%8B%A4.%20%EC%9D%B4%EC%A0%9C%20%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8%EC%97%90%20%EB%8C%80%ED%95%B4%20%EB%8B%A4%EB%A5%B8%20%EB%B0%9C%EC%8B%A0%20IP%EB%A5%BC%20%EC%84%A0%ED%83%9D%ED%95%B4%EC%95%BC%20%ED%95%A9%EB%8B%88%EB%8B%A4..png)
양말 프록시로 사용하고 있는 Putty를 통해 전용 서버에 SSH 터널을 설정했습니다. 문제는 전용 서버의 기본 IP와 다른 나가는 IP 주소를 사용해야 한다는 것입니다. 이 서버에는 30개의 IP 블록이 있지만 웹 기반 프록시(PHP)를 설정하더라도 기본 서버 IP를 사용합니다.
누구든지 해결책을 알고 있습니까?
감사해요!
답변1
일반적으로 OS는 연결의 소스 IP 주소("발신 IP"라고 함)가 발신 인터페이스의 기본 주소와 동일하다고 가정합니다(참고자료 참조 ifconfig -a
). 나가는 인터페이스는 라우팅 테이블에서 일치하는 항목을 검색하여 결정됩니다( netstat -rn
또는 참조 route
).
라우팅 테이블에 항목을 추가/변경할 수 있으며, 이로 인해 OS가 다른 나가는 인터페이스를 선택하게 될 가능성이 있으며, 결과적으로 OS가 다른 소스 IP 주소를 선택하게 될 가능성이 있습니다.
그 외에 서버가 Linux인 경우 SNAT를 사용하여 문제를 해결할 수 있습니다(참고자료 참조 iptables
).
답변2
먼저 NIC에 대한 별칭을 설정했습니까?
IP 별칭을 사용하여 SSH를 실행하면 어떻게 되나요?
웹 기반 프록시의 경우 바인딩할 IP 주소를 지정할 수 있어야 합니다. Apache에서는 Listen 옵션만 설정하면 됩니다. 시도해 보셨나요?
또는 kubanskamac이 언급했듯이 iptables를 사용하십시오.