怎样在局域网内建个ftp服务器并且能被外网访问?
.安装
Serv-U的安装比IIS还简单。先执行英文原版安装文件,按提示一路“NEXT”即可。要注意的是,在选择安装目录时,最好选择安装在一个非系统盘里,以免将来系统发生异常时还要重新进行账号等的设置。然后执行汉化文件,选择原版安装目录,一路“下一步”即可完成安装。
2.设置
与IIS不同,Serv-U在第一次运行时会以向导的方式一步一步地提示用户进行设置,整个过程不超过五分钟,非常人性化。为了方便说明,先假设我们要架设一个固定IP为218.1.1.1,端口为21,根目录绝对路径为G \Ftp,允许匿名访问和拥有一个用户名为dys、密码为syd、管理账户名叫“MyFtp”的公网FTP服务器。运行Serv-U,弹出向导窗口,依次设置如下选项:
1)“您的IP地址”:这里我们填入218.1.1.1,如果你是ADSL等方式拨号上网,拥有的是动态IP或者不知道本机IP,此处请留空。
2)“域名”:就是该FTP站点的名称,可以随意取名,这里填入“MyFtp”。
3)“匿名账号”:决定该FTP站点是否允许匿名用户访问。选择“是”。
4)“匿名主目录”:设置匿名用户登录站点后所处的目录位置。输入“G \Ftp”。
5)“锁定于主目录”:假设在“匿名主目录”中设置匿名用户登录后所处的目录位置为“G \Ftp\Guest”,那么,选择“是”后,当匿名用户登录FTP后,就被锁定在G \Ftp\Guest目录下,只能查看Guest目录里的内容,不能进入上级目录“Ftp”,同时该目录在FTP客户端软件中显示为“\”,如果未被锁定,则会完整显示为“G \Ftp\Guest”。这里选择“是”。
6)“命名的账号”:决定是否要创建有一定管理权限的账户。这里选“是”。
7)“账号名称”:就是具有一定管理权限的账户登录名称。填入“dys”。
8)“账号密码”:设置账户的登录密码。输入“syd”。
9)“主目录”:与“匿名主目录”一样,用来设置管理账户登录后所处的目录位置。输入“G \Ftp”。
10)“锁定于主目录”:选择“是”。
11)“管理员权限”:用来设置管理账户的管理权限级别。这里选“无权限”,后面再详述。
设置完成,地址为:ftp //218.1.1.1 21的FTP服务器就算架设成功了。最后可用CuteFTP分别以匿名和dys的账户登录验证。
提示:以上这些设置并非最终设定,你还可以在Serv-U主界面中随时修改。
详见:
http://hibaiducom/eric594168/blog/item/ee04762661e9140b4c088dd7html
Linux安装使用FTP服务器ProFTPD方法
Linux VPS用户一般都通过SFTP/SCP协议连接OpenSSH Server进行文件传输,但有时候,你希望某些用户只能上传文件到网站目录,而不能够登录系统执行命令以及访问其他目录,这时用FTP Server就能很好地实现Linux上常用的FTP Server有VSFTPD和ProFTPD,其中ProFTPD简单易用,功能也不错,这里以ProFTPD为例搭建FTP服务器当然,FTP也可以作为局域网内文件共享的一种方式,比如你的室友使用Windows,向你的Ubuntu ProFTPD个人电脑上传了一部影片,这样就不用拿U盘去拷贝了,其他室友也可以从你的ProFTPD上下载影片
proftpd的配置方式类似apache,比vsftpd更易用,xampp就集成了proftpd
代码如下:
sudo apt-get install proftpd-basic
安装时默认作为一个standalone server运行proftpd,如果每天的ftp请求量少,可以安装为inetd服务,节省服务器资源
这里我使用默认值,安装为standalone server
代码如下:
sudo netstat -antp|grep proftpd
查看proftpd监听的21端口
用proftpd提供的ftpasswd新建虚拟用户test并设置密码:
代码如下:
sudo mkdir -p /png/proftpd
代码如下:
sudo ftpasswd \
--passwd \
--file=/png/proftpd/passwd \
--name=test \
--uid=122 \
--gid=65534 \
--home=/srv/ftp \
--shell=/bin/false
其中uid和gid我使用的是安装proftpd时自动创建的系统用户ftp:nogroup的uid和gid,执行cat /etc/passwd|grep ftp可见
/srv/ftp是安装proftpd时自动创建的目录,所有者为ftp:nogroup,权限为755
这样虚拟用户test以系统用户ftp:nogroup登录/srv/ftp便可以对该目录进行读写
Linux上的FTP Server的读写权限是映射到系统UGO(User Group Other)上的
创建虚拟用户时通过设置系统用户uid和gid,以及合理地配置/srv/ftp目录及其文件权限来实现读写控制
创建新用户时再次执行上述命令即可,根据需要改变一些参数
比如我创建了一个以uid:gid为1000:1000的系统用户运行,登录目录为/png/www/examplecom的虚拟用户eechen:
代码如下:
sudo ftpasswd \
--passwd \
--file=/png/proftpd/passwd \
--name=eechen \
--uid=1000 \
--gid=1000 \
--home=/png/www/examplecom \
--shell=/bin/false
创建用户不需要重载proftpd,因为proftpd每次认证时都会读取认证文件
代码如下:
sudo chown proftpd:nogroup /png/proftpd/passwd 设置passwd文件读写权限,确保proftpd能读取该文件
代码如下:
sudo nano /etc/proftpd/proftpdconf
在末尾加入:
代码如下:
DefaultRoot ~ #将用户限定在自己的目录中,上面test用户对应的就是/srv/ftp
RequireValidShell off #禁用Shell请求认证
AuthOrder mod_auth_filec #认证方式顺序,这里采用文件认证
AuthUserFile /png/proftpd/passwd #存放用户名和密码的文件
代码如下:
sudo service proftpd reload
重载使配置生效。
更改proftpd的默认端口
在文件/etc/proftpdconf找到:
代码如下:
Port 21
更改为:
代码如下:
Port 2121
如果开启了iptables,iptables限制了所有的出站端口,加载模块ip_conntrack_ftp,这时在加载ip_conntrack_ftp模块时需要更改代理端口为2121。
打开/etc/sysconfig/iptables-config,保证此文件定义加载了ip_conntrack_ftp,如:
代码如下:
IPTABLES_MODULES="ip_conntrack_ftp"
然后在文件/etc/modprobeconf增加此模块的参数:
代码如下:
options ip_conntrack_ftp ports=2121
如果需要手动加载,则可以执行以下命令:
代码如下:
/sbin/modprobe ip_conntrack_ftp ports=2121
有时候需要给好友传输文件,但是qq传输文件时有大小限制,为解决此问题,我们可以在win10系统上搭建一个FTP服务器,在局域网中进行文件传输。但是Win10系统如何搭建FTP服务器?相信大部分小伙伴都不太清楚,所以本文小编告诉大家一招简单的方法。
解决方法:
1、在控制面板—程序与功能—添加功能中启用IIS管理器的FTP;
2、在开始菜单中或Cortana中搜索并打开IIS管理器,然后在右键点击网站并选择添加FTP站点,其中名称和物理路径可按需填写;
3、绑定内网IP地址、端口默认21无需改动、虚拟主机名可选、SSL一般选择无SSL即可;
4、最后一步是身份验证问题,内网访问如果没有重要文件和机密文件那么可以选择匿名开放浏览。但是如果有重要文件放在FTP服务器中进行共享那么务必选择基本然后分配用户名和密码;
至于权限一般情况下应该是非管理员可以读取、管理员可以读取和写入,同样的道理如果有重要文件那么也不应该匿名开放读取和写入。
5、然后点击完成即可完成FTP服务器的配置,这个时候浏览器里直接输入FTP://绑定的IP地址/即可访问,另外也可以在Windows资源管理器里添加网络位置,然后输入FTPIP地址进行快捷访问。
最后的提醒:
作为服务器那么如果要保证大家随时可以访问那么这台电脑就不应该关机了,如果需要外网访问那么还可以通过花生壳类的软件进行动态IP解析,这样外网也可以随时访问FTP服务器中存放的各类文件了。
以上就是Win10系统搭建FTP服务器的具体操作方法,如果还不清楚怎么搭建的小伙伴,可以采取上面的方法步骤。
0条评论