共计 2355 个字符,预计需要花费 6 分钟才能阅读完成。
在本教程中,我将会介绍如何搭建你自己的 FTP 服务器。但是,首先我们应该来的学习一下 FTP 是什么。
FTP 是什么?
FTP 是文件传输协议(File Transfer Protocol)的缩写。顾名思义,FTP 用于计算机之间通过网络进行文件传输。你可以通过 FTP 在计算机账户间进行文件传输,也可以在账户和桌面计算机之间传输文件,或者访问在线软件归档。但是,需要注意的是多数的 FTP 站点的使用率非常高,可能需要多次重连才能连接上。
FTP 地址和 HTTP 地址(即网页地址)非常相似,只是 FTP 地址使用 ftp:// 前缀而不是 http://
FTP 服务器是什么?
通常,拥有 FTP 地址的计算机是专用于接收 FTP 连接请求的。一台专用于接收 FTP 连接请求的计算机即为 FTP 服务器或者 FTP 站点。
现在,我们来开始一个特别的冒险,我们将会搭建一个 FTP 服务用于和家人、朋友进行文件共享。在本教程,我们将以 vsftpd 作为 ftp 服务。
VSFTPD 是一个自称为最安全的 FTP 服务端软件。事实上 VSFTPD 的前两个字母表示“非常安全的(very secure)”。该软件的构建绕开了 FTP 协议的漏洞。
尽管如此,你应该知道还有更安全的方法进行文件管理和传输,如:SFTP(使用 OpenSSH)。FTP 协议对于共享非敏感数据是非常有用和可靠的。
使用 rpm 安装 VSFTPD:
你可以使用如下命令在命令行界面中快捷的安装 VSFTPD:
dnf -y install vsftpd
使用 deb 安装 VSFTPD:
你可以使用如下命令在命令行界面中快捷的安装 VSFTPD:
sudoapt-get install vsftpd
在 Arch 中安装 VSFTPD:
你可以使用如下命令在命令行界面中快捷的安装 VSFTPD:
sudo pacman -S vsftpd
配置 FTP 服务
多数的 VSFTPD 配置项都在 /etc/vsftpd.conf 配置文件中。这个文件本身已经有非常良好的文档说明了,因此,在本节中,我只强调一些你可能进行修改的重要选项。使用 man 页面查看所有可用的选项和基本的 文档说明:
man vsftpd.conf
根据文件系统层级标准,FTP 共享文件默认位于 /srv/ftp 目录中。
允许上传:
为了允许 ftp 用户可以修改文件系统的内容,如上传文件等,“write_enable”标志必须设置为 YES。
write_enable=YES
允许本地(系统)用户登录:
为了允许文件 /etc/passwd 中记录的用户可以登录 ftp 服务,“local_enable”标记必须设置为 YES。
local_enable=YES
匿名用户登录
下面配置内容控制匿名用户是否允许登录:
# 允许匿名用户登录
anonymous_enable=YES
# 匿名登录不需要密码(可选)
no_anon_password=YES
# 匿名登录的最大传输速率,Bytes/second(可选)
anon_max_rate=30000
# 匿名登录的目录(可选)
anon_root=/example/directory/
根目录限制(Chroot Jail)
(LCTT 译注:chroot jail 是类 unix 系统中的一种安全机制,用于修改进程运行的根目录环境,限制该线程不能感知到其根目录树以外的其他目录结构和文件的存在。详情参看 chroot jail)
有时我们需要设置根目录(chroot)环境来禁止用户离开他们的家(home)目录。在配置文件中增加 / 修改下面配置开启根目录限制(Chroot Jail):
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
“chroot_list_file”变量指定根目录限制所包含的文件 / 目录(LCTT 译注:即用户只能访问这些文件 / 目录)
最后你必须重启 ftp 服务,在命令行中输入以下命令:
sudosystemctl restart vsftpd
到此为止,你的 ftp 服务已经搭建完成并且启动了。
玩转 vsftpd 服务器的四大高级配置:http://www.linuxidc.com/Linux/2013-09/90565.htm
vsFTPd 配置教程:http://www.linuxidc.com/Linux/2013-09/90562.htm
Ubuntu 实用简单的 FTP 架设 http://www.linuxidc.com/Linux/2012-02/55346.htm
Ubuntu 上架设 FTP 服务器和 Apache 服务器 http://www.linuxidc.com/Linux/2011-04/35295.htm
Ubuntu 13.04 安装 LAMP\vsftpd\Webmin\phpMyAdmin 服务及设置 http://www.linuxidc.com/Linux/2013-06/86250.htm
RHEL6 平台下 SeLinux 和 vsftpd 的匿名上传的简单案例 http://www.linuxidc.com/Linux/2013-04/82300.htm
Linux 系统 vsftpd 源码安装 http://www.linuxidc.com/Linux/2013-03/81475.htm
openSUSE 13.2/13.1 下安装配置 FTP 服务器 vsftpd http://www.linuxidc.com/Linux/2014-12/110070.htm
via: http://itsfoss.com/set-ftp-server-linux/
作者:alimiracle 译者:cvsher 校对:wxy
本文由 LCTT 原创编译,Linux 中国 荣誉推出
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-09/123477.htm