다양한 서비스를 제공하는 서버가 있습니다. 각 서비스에는 서비스에 액세스하기 위한 자체 SSH 서버가 있습니다. 각 SSH 서버는 서로 다른 포트(예: 2022 및 3022)를 사용합니다.
또한 서비스에 액세스할 수 있는 도메인이 다릅니다. (a.dom.com, b.dom.com). 두 도메인 모두 동일한 IP(1.2.3.4)를 가지고 있지만 역방향 프록시와 함께 도메인을 사용하여 다른 서비스에 액세스합니다.
SSH 서버에 대한 역방향 프록시를 생성하여 포트(예: 22)를 다른 포트(도메인에 따라 다름)로 리디렉션하는 것도 가능합니다.
내 목표는 내가 할 수 있다는 것이다 ssh a.dom.com
.ssh b.dom.com
다음 명령을 사용하여 SSH 터널링을 사용해 보았습니다. (포트 23에 세 번째 SSH 서버가 있다고 생각합니다)
ssh -p 23 localhost -R a.dom.com:22:localhost:2022 -R b.dom.com:22:localhost:3022
하지만 작동하지 않습니다. 명령에서 a.dom.com이 터널의 IP 필터이기 때문에 잘못된 것 같습니다.
답변1
이는 불가능합니다. 먼저 도메인 이름의 IP 주소를 찾으십시오. 둘 다 동일한 IP 주소에 a.dom.com
매핑 된 경우 b.dom.com
역방향 프록시에 도착하는 패킷은 동일하므로 다른 포트에 매핑될 수 없습니다.
이는 도메인에 다른 IP 주소가 있고 해당 모든 IP 주소에 응답하는 역방향 프록시(Google "포트 전달")가 있는 경우 가능합니다.
원하는 것이 서비스에 대한 액세스를 단순화하는 것이라면 다음과 같은 항목으로 파일을 편집하는 ssh
것이 좋습니다 .ssh_config
Host a
HostName a.dom.com
Port 2022
그런 다음 이 작업을 수행 ssh a
하면 올바른 포트가 자동으로 선택됩니다. User fhuertas
다른 사용자 이름이 필요한 경우 줄을 추가할 수도 있습니다.