게스트 Linux VM에서 실행되는 서버는 Windows 호스트의 연결을 허용하지 않습니다.

게스트 Linux VM에서 실행되는 서버는 Windows 호스트의 연결을 허용하지 않습니다.

CentOS 7에서 실행되는 간단한 에코 서버 프로그램이 있습니다. VM에서 클라이언트와 서버를 모두 실행하면 서버에 연결할 수 있습니다.

저는 "브리지" 네트워크 구성으로 VirtualBox를 사용하고 있습니다. Linux VM의 IP(ifconfig를 사용하여 찾은)를 사용하면 Windows의 Cygwin에서 Linux VM으로 SSH를 통해 성공적으로 연결할 수 있습니다.

그런데 Windows 7 호스트에서 Putty를 사용하여 서버에 연결하려고 하면 연결이 작동하지 않습니다. 서버가 호스트의 연결 요청을 볼 수 없는 이유를 이해할 수 없습니다. 원인은 무엇일까요? Windows 방화벽이 비활성화되었습니다.

답변1

일부 소비자 라우터는 호스트와 게스트가 동일한 MAC 주소를 공유하는 VirtualBox의 브리지 모드로 인해 혼동됩니다. 호스트와의 통신을 위해 호스트 전용 모드에서 가상 머신에 두 번째 인터페이스를 추가하는 것이 좋습니다.

답변2

대부분의 경우 서버를 사용할 수 있고 서버의 IP 주소가 있으면 다음을 수행할 수 있습니다.

ssh user@server-ip or ssh server-ip -l user 

그러나 ssh/보안 터널을 허용하기 위해 서버에서 sshd를 실행하지 않는 경우에는 작동하지 않습니다. 다음 명령을 실행하여 서버에서 sshd를 활성화해야 합니다.

 sudo /etc/init.d/sshd start

당신은 또한 당신의

 sudo tail -f /var/log/secure

Putty를 통해 또는 Linux/UNIX 터미널에서 연결을 시도할 때 SSH에 어떤 일이 발생하는지 확인합니다.

답변3

문제는 CentOS 7이 기본적으로 포트를 차단한다는 것입니다. 다음 명령을 실행한 후 포트 2004를 통해 서버에 성공적으로 연결했습니다.

방화벽 cmd --zone=public --add-port=2004/tcp

가상 머신이 다시 시작되면 이 명령은 포트를 엽니다.

방화벽 cmd --zone=public --add-port=2004/tcp --permanent

정보를 찾았어요여기.

관련 정보