Centos/Ubuntu FTP服务器的架设和配置

1.安装命令
Centos

Ubuntu

2.启动/重启/关闭vsftpd服务器
Centos

Ubuntu

OK表示重启成功了.
启动和关闭分别把restart改为start/stop即可.
如果是源码安装的,到安装文件夹下找到start.shshutdown.sh文件,执行它们就可以了.

3.与vsftpd服务器有关的文件和文件夹
vsftpd服务器的配置文件的是: /etc/vsftpd/vsftpd.conf
如果系统是Ubuntu,则配置文件在/etc/vsftpd.conf
vsftpd服务器的根目录,即FTP服务器的主目录:
/var/ftp
如果你想修改服务器目录的路径,那么你只要修改/var/ftp到别处就行了

4.添加FTP本地用户
有的FTP服务器需要用户名和密码才能登录,就是因为设置了FTP用户和权限.
FTP用户一般是不能登录系统的,只能进入FTP服务器自己的目录中,这是为了安全.这样的用户就叫做虚拟用户了.实际上并不是真正的虚拟用户,只是不能登录SHELL了而已,没能力登录系统.

这个命令的意思是:
使用命令(adduser)添加test用户,不能登录系统(-s /sbin/nologin),自己的文件夹在(-d /opt/test_ftp)),属于组ftp(-g ftp)
然后你需要为它设置密码 passwd test
这样就添加了一个FTP用户了.下面的示例可以帮助你进入FTP服务器了.

Windows中,只要在浏览器中输入 ftp://192.168.0.33 进入FTP服务器,然后 右键 登录,输入用户名和密码就可以登录自己的目录了.

当然你要保证自己能读写自己的目录,就要在配置文件vsftpd.conf里设置一下就可以读写了.

5.匿名上传下载

修改配置文件即可vsftpd.conf,确定有以下几行,没有自己添加进去就可以了.

然后你可以新建一个文件夹,修改它的权限为完全开放,任何用户就可以登录这个文件夹,并上传下载文件:

6.定制进入FTP服务器的欢迎信息

vsftpd.conf文件中设置:

然后进入用户目录建立一个.message文件,输入欢迎信息即可(我这里写入的是Welcome to gxlinux's FTP!):

7.实现虚拟路径

将某个目录挂载到FTP服务器下供用户使用,这就叫做虚拟路径.
比如将gxl用户的目录挂载到FTP服务器中,供FTP服务器的用户使用,使用如下命令即可:

8.打开vsFTPd的日志功能

添加下面一行到vsftpd.conf文件中,一般情况下该文件中有这一行,只要把前面的注释符号#去掉即可,没有的话就添加,或者修改:

9.限制链接数,以及每个IP最大的链接数

修改配置文件中,例如vsftp最大支持链接数100个,每个IP能支持5个链接:

10.限制传输速度

修改配置文件中,例如让匿名用户和vsftd上的用户(即虚拟用户)都以80KB=1024*80=81920的速度下载

11.将用户(一般指虚拟用户)限制在自家目录

修改配置文件中,这样用户就只能访问自己家的目录了:

如果只想某些用户仅能访问自己的目录,其它用户不做这个限制,那么就需要在chroot_list文件(此文件一般是在/etc/vsftpd/中)中添加此用户.

编辑此文件,比如将test用户添加到此文件中,那么将其写入即可.一般的话,一个用户占一行.

12.绑定某个IPvsFTPd

有时候要限制某些IP访问服务器,只允许某些IP访问,例如只允许192.168.0.33访问这个FTP,同样修改配置文件:

虚拟用户其他设置
/etc/vsftpd/vsftpd.chroot_list文件中写入允许登陆的虚拟用户名称,每行一个
/etc/vsftpd/vsftpd_user_conf文件夹中创建一个以虚拟用户用户名命名的文件,
写入:local_root = /var/FTP/子目录名
然后在/var/FTP下创建一个对应的目录即可

13.Ubuntu下开启SSL支持,使用SFTP来访问

/etc/vsftpd.conf 文件的

后面增加

然后重启vsftpd

此时使用的是系统默认的证书,如果要设置自己的证书,修改

为自己证书的路径就可以了。

FileZilla在配置的协议中选择 “SFTP-SSH File Transfer Protocol”就可以正常登陆了。

14.特别配置

如果在配置文件中,设置listen=NO,并且开启设置chroot_local_user=yes,那么可以使用SSH的登录端口来使用FTP功能,这样可以减少一个端口的暴露。如果设listen=YES,则会增加一个端口专门来接受来自FTP端口的请求。默认端口是21。可以通过配置文件的listen_port来修改。

参考链接


centos FTP服务器的架设和配置

发布者

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注