我想在我的办公室计算机中设置一个FTP服务器。
我知道我必须转发端口21,并且可以在家庭网络中处理该端口。
但是在我的办公室计算机中,我的计算机之前的路由器禁用了DHCP,而IP地址由DHCP服务器分配,这是我无法控制的。
如果我无法控制DHCP服务器,是否仍可以在路由器中设置端口转发,或者无法设置FTP服务器?
我想在我的办公室计算机中设置一个FTP服务器。
我知道我必须转发端口21,并且可以在家庭网络中处理该端口。
但是在我的办公室计算机中,我的计算机之前的路由器禁用了DHCP,而IP地址由DHCP服务器分配,这是我无法控制的。
如果我无法控制DHCP服务器,是否仍可以在路由器中设置端口转发,或者无法设置FTP服务器?
Answers:
当您无法控制本地路由器时,执行您希望执行的操作的解决方案是设置反向隧道。
防火墙通常以阻止发自WAN端的通信的方式构建,而允许发自LAN端的通信。反向隧道通过建立从LAN内部到外部某台PC的安全通道来利用此优势,因此,当您希望从该外部PC 到 LAN 进行通信时,您会发现已建立,相关的连接通道由防火墙授权。
这可以通过类似于瑞士刀的通信工具ssh来完成,该工具不仅可以启动从LAN到外部的通信,还可以携带指令来设置另一个不同的通道以允许另一种类型的通信。 。由于这与已建立的连接有关,因此路由器将允许它。这个替代的通道将被加密(因此是安全的,这是使用ssh的主要优点之一),并且可以进行any
通信:ftp,http,vnc,vpn,只要您为它命名即可(前提是此有效载荷使用TCP,而不是UDP)。
可以在任何OS中设置反向隧道,但是每个OS的详细信息各不相同,因此我无法更具体地说明。通过Google搜索您的操作系统,您可以找到所有需要的资料。
不能。即使路由器转发端口21正确,不幸的是仅转发一个端口仍无法使FTP协议正常工作。
这与许多其他协议(例如HTTP或SSH)形成了鲜明的对比,这些协议仅需要转发一个TCP端口(80或22)。FTP本质是将TCP端口21用于控制目的:建立连接,列出文件,创建或删除文件等。但是,要传输文件,FTP需要建立单独的所谓的数据连接,该连接必须使用其他端口数。建立数据连接的旧方案称为主动连接(防火墙非常不友好),而新方案称为被动连接(与防火墙的兼容性更好,但仍然不理想)。无论如何,您都需要转发多个端口,最有可能转发整个端口范围。您可以在Wikipedia上找到有关这些FTP问题的更多信息。
克服这些FTP防火墙复杂性的典型解决方案是使用仅需要一个TCP端口进行转发的其他协议,例如带有WebDav的HTTP / HTTPS或SFTP(与FTP毫无共通之处,只是对SSH的扩展)。