로컬 컴퓨터에 액세스할 수 있도록 배스천 호스트 설정

로컬 컴퓨터에 액세스할 수 있도록 배스천 호스트 설정

내 ISP는 내 홈 라우터에 192.168.* IP를 제공합니다. 건물의 주요 회사 라우터만 실제 IPv4 IP를 얻지만 건물의 모든 테넌트는 해당 IP를 공유합니다. 그들은 IP 전달을 수행하지 않으므로 포트 22가 나에게 전달되도록 요청할 수 없습니다.

Tor를 사용하면 Tor 네트워크에 대한 경로를 열고 외부에서 SSH를 통해 로그인할 수 있습니다. 그러나 상상할 수 있듯이 매우 느립니다. 마찬가지로 내 Synology NAS에는 Synology 원격 서버에 대한 라우팅이 켜져 있으며 원격으로 연결할 수 있습니다.

이 전송 시스템이 무엇인지, 그리고 이를 사용하여 집 컴퓨터를 내가 임대한 VPS 서버(내 요새 호스트라고도 함)에 연결하여 갈 필요 없이 원격으로 요새 호스트를 통해 SSH로 연결할 수 있는지 알고 싶습니다. 토르를 통해. 나는 Tor를 좋아하지만 SSH 지연이 나를 미치게 만듭니다.

답변1

나는 최근 모바일 네트워크를 통해 NAT를 통해 인터넷에 연결된 IoT 장치에 연결하기 위해 똑같은 작업을 수행했습니다.

내 솔루션은 Google Cloud의 마이크로 인스턴스를 기반으로 합니다. IP는 영구적이어야 합니다 server_ip. 방화벽 규칙은 필요하지 않은 것 같습니다.

원격으로 연결하려는 로컬 장치에서 다음을 실행합니다.

ssh -N -R 5757:localhost:22 <server_ip>

여기서 5757은 서버에서 열리는 수신 포트입니다(모든 포트일 수 있지만 1023보다 클 수 없음). 이는 서버에 지시합니다.

최종 장치(예: 외출 중일 때 노트북에서)에서 다음을 실행합니다.

ssh -J <server_ip> -p 5757 localhost

다음을 통해 연결됩니다.점프 호스트, SSH 연결을 홈 장치에서 열린 연결로 직접 라우팅합니다.

모든 것을 더 안전하고 원활하게 만들려면 다음을 사용하는 것이 좋습니다.SSH 키 기반 인증, 서버 또는 홈 장치에서. 추가 도움이 필요하시면 댓글을 남겨주세요.


마지막으로 주의할 점은 첫 번째 명령( ssh -N -R 5757:localhost:22 <server_ip>)은 종료되어서는 안 되기 때문에 서비스를 이용하거나 nohup서비스를 통해 실행해야 한다는 점이다. 후자의 솔루션이 제가 선호하는 솔루션입니다. 제 서비스 파일은 다음과 같습니다.

[Unit]
Description=Reverse SSH to GCL on port 5757
After=network.target

[Service]
Type=simple
User=flynn
ExecStart=/usr/bin/ssh -N -R 5757:localhost:22 <server_ip>
Restart=always
StartLimitInterval=30

[Install]
WantedBy=multi-user.target

관련 정보