搭建FTP文件传输服务
Vsftp的配置文件
(一)用户列表文件ftpusers和 user_list
ftpusers文件:此文件中列出的用户将禁止登陆vsftp服务器,不管该用户是否存在于
user_list文件中,默认已包含root bin daemon 等特殊用户。
user_list文件:此文件中包含的用户可能被禁止登陆,也可能被允许登陆,具体取决
于主配置文件vsftpd.conf中的设置。当存在“userlisi_enable=yes”的
配置项时,user_list列表文件方生效:若指定“userlist_deny=yes”则
禁止次列表中的用户登陆:若指定“userlist_deny=no”则仅允许列表
中的用户登陆。
(二)主配置文件csftpd.conf
匿名用户: annoymous_enable=yes #是否允许匿名访问
anon_umask=022 #设置匿名用户所上传文件的默认权限
掩码值
anon_root=/var/ftp #设置匿名用户的FTP根目录
anon_upload_enable=yes #是否允许匿名用户上传文件
anon_mkdir_write_enable=yes #是否允许匿名用户有创建目录的写入
权限
anon_other_write_enable=yes #是否允许用户有其他写入权限,如修
改文件名,删除和覆盖等
anon_max_rate=0 #限制匿名用户的最大传输速率(0位无
限制)单位为字节/秒
本地用户:local_enable=yes #是否允许本地系统用户访问
local_umask=022 #设置本地用户所上传文件的默认权限
local_root=/var/ftp #设置本地用户的FTP根目录
chroot_local_user=yes #是否将FTP本地用户禁锢在宿主录中
local_max_rate=0 #限制匿名用户的最大传输速率(0位
为无限制)单位为字节/秒
全局配置: listen=yes #是否以独立运行的方式监听服务
listen_address=0.0.0.0 #设置监听FTP服务的Ip地址
listen_port=21 #设置监听FTP服务的端口号
write_enable=yes #用任何形式的写入权限(如上传,
除文件等)都需要开启此项
download_enable=yes #否允许下载文件(见李仅限于浏
览,上传的FTP服务器可将设为no
dirmessage_enable=yes #用户切换进入目录时显示.message
文件(如果存在)的内容
xferlog_enable=yes #启用xferlog日志,默认记录到/var
/log/xferlog
xferlog_atd_format=yes #启用标准的xferlog日志格式,若禁
用此项,将使用vsftpd自己的日志格式
connect_form_port_20=yes #允许服务器主动模式(从20端口建立
数据连接)
pasv_enable=yes #允许被动模式连接
pasv_max_port=24600 #设置用于被动模式的服务器最大端口号
pasv_min_port=24500 #设置用于被动模式的服务器最小端口号
pam_service_name=vsftpd #设置用于用户认证的PAM文件位置(
#/etc/pam.d/目录中对应的文件名)
userlist_enable=yes #是否启用user_list用户列表文件
userlist_deny=yes #是否禁用user_list列表文件中的用户账户
max_clients=0 #最多允许多少个客户端同时连接(0无限)
max_per_ip=0 #对来自同一个Ip 地址的客户端,最多允
许多少个并发连接(0为无限制)
tcp_wrappers=yes //是否启用tcp_wrappers主机访问控制
Linux 下vsftp的搭建与各种配置
1. 通过rpm –qa | grep vsftp 检查软件包安装情况
2. Vsftp.conf配置参数
a) 匿名用户
i. Anonymous_enable=YES 开启匿名在
ii. Anon_umask=022 权限反码
iii. Anon_root=/var/ftp 设置默认访问FTP目录
iv. Anon_upload_enable=YES 文件上传
v. Anon_mkdir_write_enable=YES写入权限
vi.Anon_other_write_enable=YES 删除改名等其他权限
vii. Anon_max_rate_0 最大传输速率(0为不限制,单位为字节)
b) 本地用户
i. Local_enable=YES 开启本地用户
ii. Local_umask=022 本地上传文件权限反码
iii. Local_root=/var/ftp FTP根目录
iv. Chroot_local-user=YES 将本地用户禁锢在宿主目录中
v. Local_max_rate=0 限制本地用户传输速率
c) 全局配置
i. Listen=YES 是否以独立运行的方式监听服务
ii. Listen_port=21 设置监听FTP的端口号
iii. Write_enable=YES 开启写入权限
iv. Download_enable=YES 下载权限
v. Dirmessage_enable=YES 切入目录后显示.message文件
vi. Xferlog_enable=YES 启用xferlog日志
vii. Xferlog_std_format=YES 启用标准xferlog日志格式
viii. Connect_from_port_20=YES允许服务器主动模式
ix. Pasv_enable=YES 允许被动模式连接
x. Pasv_max_port=24600 设置被动模式最大端口号
xi. Pasv_min_port=24500 设置被动模式最小端口号
xii. Pam_service_name=vsftpd 设置用户认证的PAMwenjian位置(/etc/pam.d目录下)
xiii. Userlist_enable=YES 启用user_list用户列表
xiv. Userlist_deny=YES 禁止user list用户列表
xv. Max_clients=0 单IP的并发数限制
xvi. Tcp_wrappers=YES 是否启用tcp_wrappers主机访问控制
3. 匿名FTP的建立
a) 修改共享目录的属主和权限
b) 修改vsftpd.conf配置文件,开放匿名用户访问,上传许可。
C) 启动服务
本地用户FTP
1. 准备测试用户
2. 修改vsftpd.conf
3. 重新启动服务
建立基于虚拟用户的vsftpd服务
1. 安装vsftpd虚拟用户数据库使用berkeley DB格式的数据文件。
2. 建立文本格式的用户密码列表, 奇数行位用户名,偶数行为密码
3. 使用db_load工具转化
4. 建立FTPfangwen的根目录及虚拟用户对应的系统账号,并修改权限,并建立测试文件
5. 建立PAM认证文件
6. 修改vsftpd.conf配置文件,添加虚拟用户支持
7. 为不同的虚拟用户创建独立的配置文件
8. 重新启动服务