내 집 컴퓨터는 ISP 수준 NAT(및 방화벽) 뒤에 있습니다.
대상 컴퓨터는 게이트웨이 뒤에서 작동하는 컴퓨터입니다. 먼저 게이트웨이 시스템에 SSH를 연결해야 합니다(인터넷에서 볼 수 있고 액세스할 수 있는 유일한 시스템이기 때문입니다). 이 게이트웨이의 SSH 데몬은 "키보드 대화형" 로그인만 허용하도록 구성되었습니다(즉, 비밀번호 없는 공개 키 로깅은 허용되지 않습니다). 그런 다음 공개 키 기반 로깅(전용)을 사용하여 대상 시스템에 로그인합니다.
SSH 터널(정방향 및 역방향 두 개가 필요할 수 있음)을 설정하여 이러한 터널을 설정한 후 비밀번호를 제공할 필요 없이 집 컴퓨터에서 호스트 컴퓨터에 직접 로그인하거나 그 반대로 로그인할 수 있도록 하려면 어떻게 해야 합니까? .
예를 들어, 개인 Git 저장소를 동기화할 수 있기를 원합니다(홈에서 대상으로 푸시하고 대상에서 홈으로 이동).
이는 설명된 것보다 더 복잡한 설정입니다.공개적으로 사용 가능한 서버에서 비공개로 사용 가능한 컴퓨터로 트래픽을 전달하는 방법은 무엇입니까?
답변1
나는 당신이 다음과 같은 것을 찾고 있다고 믿습니다.
(첫 번째 서버를 "gateway1", 두 번째 서버를 "gitrepo1"이라고 부르겠습니다)
ssh -L 8022:gitrepo1:22 게이트웨이 1
그런 다음 집 컴퓨터의 로컬 개인 키를 사용하여 다음을 수행하여 git repo 서버에 액세스할 수 있습니다.
ssh -i /path/to/your/key localhost -p 8022
이 경우 여러 터널이 필요하지 않다고 생각하기 때문에 뭔가 빠진 것이 아닌가 조금 걱정됩니다.