
Windows 10이 설치된 호스트 PC에 IIS + FTP 서비스(FTP 확장성이 아님)를 설치했습니다. WinSCP 소프트웨어를 사용하면 공개 고정 IP에서 이 FTP 사이트에 액세스할 수 있습니다. VMWare Workstation의 가상 머신(Windows Server 2019)에서 호스팅되는 경우 내 FTP 사이트에 액세스할 수 없습니다. 해당 VM에서 개인 방화벽을 끄는 경우에만 가상 머신에서 FTP 사이트에 액세스할 수 있습니다. 홈 라우터의 포트 21(TCP)을 가상 머신으로 전달했습니다. 내 가상 머신에서 브리지와 NAT 네트워크를 모두 시도했지만 두 설정 모두에서 개인 방화벽을 끄는 경우에만 FTP를 사용할 수 있습니다. 가상 머신에서 라이브 FTP 사이트를 실행하려면 추가로 어떤 설정을 해야 합니까?
답변1
제가 확인하고 싶은 사항은 다음과 같습니다.
VM이 브리지 네트워킹을 사용하고 있나요? 그렇지 않은 경우 VM이 포트를 전달해야 하는 NAT를 수행하는 두 번째 VMWare 가상 라우터 뒤에 있지 않도록 전환하십시오. 따라서 홈 라우터를 언급했기 때문에 가지고 있지 않은 IP가 하나만 있는 경우가 아니면 먼저 VM 네트워크 모드를 브리지로 전환하고 어떤 일이 일어나는지 확인하십시오.
FTP는 원래의 "활성" 형식에서 사용자가 연결할 때 서버가 클라이언트에 대한 포트를 다시 열려고 시도하도록 하는 펑키한 프로토콜입니다. 이를 위해서는 클라이언트와 서버 사이의 모든 방화벽/NAT 시스템이 프로토콜을 이해하고 트래픽을 동적으로 허용해야 합니다. 나중에 FTP 프로토콜에 "수동" 모드가 추가되었습니다. 대신 클라이언트가 서버에 두 번 연결되었습니다. 어느 시점에서 당신은 이것을 알고 클라이언트에게 수동 모드를 요청하도록 지시해야 했습니다. 최신 GUI FTP 클라이언트는 이를 이해하고 포기하기 전에 수동적으로 시도할 것입니다. 따라서 이상적으로는 수동 FTP를 사용하거나 클라이언트에서 명시적으로 지정할 수 있는 경우 적어도 테스트해 보세요.
보너스 생각:
- FTP를 사용해야 하나요? 전 세계를 위한 파일만 제공한다면 정말 좋습니다. 그러나 사용자를 인증하거나 사람들이 정보를 게시하도록 허용하는 경우 SFTP를 살펴보는 것이 좋습니다. 인증 핸드셰이크와 클라이언트와 서버 간의 모든 트래픽을 암호화합니다. 또한 모두 단일 포트를 통해 실행되므로 필요에 따라 쉽게 전달하거나 터널링할 수 있습니다.
- 내 경험에 따르면 Windows에서 공개 HTTP 또는 FTP 서비스를 실행하는 것은 그다지 안전한 선택이 아닙니다. VMWare가 있으므로 인터넷에서 살아남기 위한 더 나은 기록을 가진 다른 운영 체제에 대한 모든 종류의 옵션이 있습니다.