搭建 公网FTP服务器 外网访问 您所在的位置:网站首页 公网IP服务器部署共享 搭建 公网FTP服务器 外网访问

搭建 公网FTP服务器 外网访问

2024-07-03 20:08| 来源: 网络整理| 查看: 265

我是在ubuntu 20.04 上配置的,需要用到公网IP。没有公网IP的,可以考虑花生壳这类应用来做内网穿透。

1. 配置FTP服务器

安装vsftpd。

# sudo apt install vsftpd # sudo vim /etc/vsftpd.conf

配置的话,这里不做说明,可以网上了解详细资料。

安装后默认使用的主动模式,我在局域网测试,另外的电脑是可以访问到这台ftp服务器的。

分为主动模式和被动模式,需要公网访问的话,需要配置被动模式。(但是在后面配置为被动模式后,局域网访问失败了,目前还没有解决。 )

在最后面增加如下配置:

listen_port=9095 pasv_promiscuous=YES pasv_enable=YES pasv_address=192.168.0.105 pasv_min_port=50000 pasv_max_port=50010 2. 配置路由器

在局域网出口处,需要映射内网的端口。这里设置的9095,所以需要把内网的9095映射到公网IP的端口上。最好是设置为一致的9095,方便我们识别。另外的,不做端口映射的,可以使用DMZ或桥接模式。都可以暴露局域网端口到公网。

如果是多级路由的话,需要在每一级路由器上都进行响应的配置。参考。

端口映射和DMZ我都尝试过,DMZ比较方便一些。

3. 客户端配置

局域网内,我使用的是windows资源管理器来访问ftp服务器,是没有问题的。但是公网就不行了。

后面换了FileZilla软件,在软件中配置好了对应的ftp服务器。

在这里插入图片描述 按道理来说,步骤1的ftp服务器配置应该把IP地址配置为公网IP地址的。这样,被动模式下,ftp服务器返回给客户端的IP地址才是公网IP,客户端才能解析并通过这个IP地址访问ftp服务端。但是,FileZilla可以设置如果路由不了这个IP,它会使用服主机地址来代替这个返回的IP地址。我这里设置为192.168.0.105是为了让局域网内的设备访问ftp不会出问题,才这样设置的,但是最后局域网内设备访问不了ftp,没有解决。

说明:如果IP地址填写了公网IP,会在一段时间后出问题。由于运营商提供的公网IP不是静态的,光猫重启后,会导致公网IP发生变化,因此最好使用域名来代替公网IP,并设置DDNS。

在这里插入图片描述

4. 外网访问sftp

建议使用sftp代替ftp,这个只要安装了ssh就会带。不需要配置,使用起来也没有上面的这些问题。据说sftp是提高安全性,但是牺牲掉一些效率。

我在配置好ssh后,仅仅只需要把默认的21端口改成其它的。我这里改的是5102。

就可以直接外网访问sftp了。内网也是没有问题的。

说明:在局域网内,不能通过外网地址来访问内网的机器。所以,下面的两个测试,客户端的网络环境分别为外网和内网。 一是通过手机数据流量开热点,使客户端拥有外网环境;二是,通过网线连接路由器拥有局域网环境。

在这里插入图片描述

在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有