建立FTP服务器
什么是FTP?
文件传输协议(英文:File Transfer Protocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协议。它属于网络传输协议的应用层。
FTP是一个8位的客户端-服务器协议,能操作任何类型的文件而不需要进一步处理,就像MIME或Unicode一样。但是,FTP有着极高的延时,这意味着,从开始请求到第一次接收需求数据之间的时间,会非常长;并且不时的必须执行一些冗长的登陆进程。
(来自维基百科--FTP)
为什么要搭建FTP服务器?
在主机搭建FTP服务器是为了给主机传输文件(可以往服务器传输一些软件的安装包比如wordpress等),也可以从远程主机上拿一些文件下来到自己的电脑。
搭建什么服务器?
在这里,我推荐vsftpd
这款FTP服务器。vsftpd服务器的全称为 Very Secure FTP Daemon,意思是非常安全的FTP服务器,我们当然要用啦~
如何搭建vsftpd服务器?
$ yum install vsftpd
在vsftpd安装完毕后,我们需要注意一些配置文件
1 /etc/vsftpd/vsftpd.conf
这是整个vsftpd最重要的配置。这个配置文件是用bash的参数设定相同的方式来处理的,也就是“参数=设定值”,注意,等号两边不能有空白。
2 /etc/vsftpd/ftpusers
这个配置文件设定了无法登录FTP的账户。如果你不想让一个账户登录FTP,把他写入这里就行。每行一个账户。
3 /etc/vsftpd/user_list
这个配置文件与vsftpd.conf
中的userlist_enable
和userlist_deny
两个参数有关。你可以在这里自定义一些不允许登录的用户。不过这个配置文件的具体功能要一句vsftpd.conf中那两个参数的具体值有关。
4 /etc/vsftpd/chroot_list
这个配置文件一开始是不存在的,需要自己新建一个。这个配置文件的目的是为了把一些账户限制在赋予给他们的根目录下。但这个文件生效跟sftpd.conf
的chroot_list_enable
和chroot_list_file
两个参数有关。
修改配置文件
在vsftpd.conf
文件中加入如下几行
userlist_enable=YES userlist_deny=YES userlist_file=/etc/vsftpd/user_list chroot_local_user=YES chroot_local_enable=YES chroot_list_file=/etc/vsftpd/chroot_list
然后新建一个chroot_file
文件 $ vim /etc/vsftpd/chroot_file
写在这个文件里的用户都可以越过被赋予的根目录浏览整个文件系统
新建FTP用户
useradd -d /var/www/html test//新建FTP用户test,赋予根目录为/var/www/html passwd test//为test用户设置密码
更改文件夹访问权限
chmod 777 /var/www/html
777为文件夹最高访问权限,具体文件夹访问权限设定请看这里
登录FTP
$ ftp localhost
然后我们在自己电脑上下载一个FTP客户端,从自己电脑访问远程服务器。推荐使用FileZilla
NEXT ONE: 建站这件小事(五)