리버스 SSH 터널을 사용하여 우분투 서버에서 Windows 공유에 연결


1

이 퍼즐 조각이 없어 누군가 나를 도울 수 있기를 바랍니다.

설정 : Windows O / S가 설치된 내 컴퓨터는 작업중인 NAT / 방화벽 뒤에 있으며 전달할 포트를 열 수 없습니다. 집에는 우분투 서버가 있습니다. 직장의 Windows 컴퓨터에서 집의 Ubuntu 서버에 연결하기 위해 ssh 클라이언트 (퍼티)를 사용할 수 있습니다. 퍼티에서 포트 포워드를 사용하여 smb를 통해 집의 Ubuntu 서버의 네트워크 공유에 연결된 Windows 컴퓨터에서 네트워크 공유를 만들었습니다.

문제 : 리버스 SSH 터널 연결을 사용하여 위에서 설명한 smb 공유를 되돌리고 싶습니다.

의미 : SMB 포트 (445)가있는 Reverse SSH를 사용하여 Ubuntu Server에서 Windows 공유 (NAT 뒤)에 연결하고 마운트하십시오.

질문 :

퍼티에서 리버스 SSH 터널을 어떻게 설정합니까? (다시 리버스 SSH를 이해합니다). 현재 Putty의 터널링 옵션에서 포트 445를 소스로, localhost : 445를 대상으로, REMOTE & IPV4 옵션을 선택했습니다. 이 올바른지?

SMB에 올바른 역방향 SSH 터널 설정을 얻은 후 Ubuntu 서버에서 NAT 뒤에있는 Windows 공유를 어떻게 연결하고 마운트합니까? Ubuntu 서버가 동일한 네트워크에서 Windows 컴퓨터와 공유를 마운트하는 경우와 같은 방법? sudo mount -t cifs // IPADRESS / WinShare / mnt / UbuntuShare -o username = "사용자 이름", 도메인 =

질문이 있으시면 알려 주시면 최대한 빨리 연락 드리겠습니다!

고마워, 벤

...


누가 수출하고 누가 장착하고 있습니까? "보낸 사람"의 사용이 혼동됩니다. Windows가 smb 또는 Ubuntu를 통해 내보내 집니까?
terdon

우분투 서버에서 Windows 공유를 어떻게 마운트합니까? Window 공유가 다른 네트워크에 있으며이 Windows 공유를 호스팅하는 네트워크의 포트를 열 수 없습니다. 내가 틀렸다면 나를 수정하지만 우분투 서버의 Windows 공유에 액세스하기 위해 Windows 시스템에서 퍼티를 통해 역방향 SSH 터널을 설정하고 포트 포워드를 설정합니다.
Benjamin Jones

자,이 양식의 도움 없이는 조금 더 가까워지고 있습니다. 우분투 서버에서 다른 네트워크의 방화벽 뒤에있는 Windows 랩톱 웹 서버를 볼 수 있도록 성공적인 역방향 ssh 터널을 설정했습니다. 퍼티 포트 포워드 소스 : 9090 대상 로컬 호스트 : 80을 선택하고 원격 / 자동 옵션을 클릭했는지 확인하십시오. 퍼티 (Windows 랩톱)에서 리버스 터널이 설정되면 Ubuntu 시스템에서 wget localhost : 9090을 사용해보십시오. 파일이 전송되면 우분투 서버의 방화벽 뒤에있는 Windows 랩톱으로 역방향 ssh가 작동합니다
Benjamin Jones

잘 알아 냈어요! 다른 사람들이 혜택을 볼 수 있도록 솔루션을 답변으로 게시 해 주시겠습니까?
terdon

이제 리버스 SSH가 작동한다는 것을 알았으므로 Ubuntu 서버에서 액세스 할 수없는 방화벽 뒤의 Windows 랩톱에있는 Windows 공유에 어떻게 접근합니까? Windows machince에서 퍼티를 설정하여 소스 4445 대상 localhost : 445를 포트 포워드하기 위해 원격 버튼을 클릭했습니다. 그런 다음 내 우분투 서버 (퍼티 세션에서 연결됨)의 명령을 사용하십시오. smbclient -L // localhost -p 4445 -U "사용자 이름"은 역방향 ssh Windows 공유를 나열합니다. 실패한! 오류 : 읽기 오류 = NT_STATUS_END_OF_FILE 이게 무슨 뜻인지 잘 모르겠어?
Benjamin Jones

답변:


1

내 자신의 질문에 대한 답을 찾았습니다. 이렇게하면 "SSH Reverse를 사용하여 공유에 연결하는 방법"이라는 질문이 해결됩니다. SSH Reverse가 무엇인지 모르는 경우이 솔루션을 무시하십시오!

내 설정 : 컴퓨터 A = 집에서 SSH 서버를 실행하는 Ubuntu 서버. (차이 네트워크)

컴퓨터 B = 업무용 방화벽 뒤의 Windows 데스크톱 (포트를 열 수 없음) (차이 네트워크)

내가 말했듯이 컴퓨터 B의 포트를 열 수 없으며 컴퓨터 B 에 공유를 안전하게 설치할 수 있으려면 컴퓨터 A 가 필요 합니다 .

이 의미 : 사이에 파일을 공유하려면 A 컴퓨터컴퓨터 B 나는 앞으로 때문에에게의 포트 포트를 사용하여 FTP, SFTP, 또는 SSH를 사용할 수없는 컴퓨터 B가 열려 있지!

그러나 이것에 대한 해결책이 있습니다! SSH 리버스라고합니다. 나는 이것에 대해 멀리 가지 않을 것이지만 내 설정을 위해 컴퓨터 A 에는 SSH 서버가 실행되고 컴퓨터 B 에는 클라이언트 (퍼티 / plink와 같은)가 있습니다. 목표로 기억하십시오와 파일 공유하는 컴퓨터 B 에서 A 컴퓨터를 이 시나리오 당신 MUST 당신 SSH 반대로 있도록.

당신이 당신의 SSH 서버와 연결 / 통신 할 수 있는지 확인 그래서 1 A 컴퓨터 에 클라이언트 (나는 퍼티를 사용하고 있습니다)와 컴퓨터 B . 공장? 큰 움직임 ...

이제 저장된 연결을 선택하고 터널 옵션으로 이동하여 컴퓨터 B의 퍼티에 리버스 포트 포워드를 설정해야합니다. 다음으로 "새 포트 추가"가 필요합니다.

소스 포트는 열려있는 포트 일 수 있습니다. 확실하지 않은 경우 : 5454. 대상은 localhost : 445 여야합니다. 참고 : 대상은 localhost 일 필요는 없습니다. 사실 localhost는 "Host Down"으로 출력 될 수 있습니다. 네트워크의 모든 IP 일 수 있습니다. 예 192.168.1.1:445 (자신의 IP)

원격 버튼과 자동 버튼이 선택되어 있는지 확인하십시오. 그런 다음 추가를 클릭하고 해당 연결을 열기 전에 해당 연결에 대한 설정을 저장하십시오. 이제 SSH 서버 (컴퓨터 A)에 연결하십시오 .

이제 마운트 폴더 (마운트 공유가 표시 될 폴더)를 만드는 것을 잊지 마십시오.

지금 당신은 당신의 공유를 마운트 할 수 있어야 컴퓨터 B컴퓨터 A 밖으로 어떤 포트를 여는 함께.

마운트 코드 예 :

sudo mount -t cifs //localhost/sambashare /mountpoint -o port=5454,username="",password="",domain="optional"
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.