建立简单的FTP服务器

安装及启动FTP

yum -y install vsftpd.x86_64
建立简单的FTP服务器

查看FTP程序生成的文件

建立简单的FTP服务器
/etc/vsftpd/vsftpd.conf 这个是配置文件
/etc/vsftpd/ftpusers 这个是用户名单
/etc/vsftpd/user_list 这个也是用户名单
/usr/sbin/vsftpd 这个是vsftp的主程序
/usr/lib/systemd/system/vsftpd.service 这个是服务启动程序
在安装ftp程序时,系统生成个了ftp用户和组

启动FTP服务

建立简单的FTP服务器

测试下

建立简单的FTP服务器

建立简单的FTP服务器

配置参数

anonymous_enable 默认开启

允许匿名访问
建立简单的FTP服务器
我把YES改成NO
建立简单的FTP服务器
结果
建立简单的FTP服务器

anon_upload_enable 默认关闭

这个是允许匿名用户上传文件
而且这个参数依赖于write_enable=YES
建立简单的FTP服务器
我把这个参数开启来
建立简单的FTP服务器
建立简单的FTP服务器
这个报错是由于ftp用户对于共享的目录没有写权限,将/var/ftp/pub的属主改为ftp
建立简单的FTP服务器
建立简单的FTP服务器

anon_mkdir_write_enable 默认关闭

这个是允许匿名用户创建目录
建立简单的FTP服务器
我把参数开起来
建立简单的FTP服务器
建立简单的FTP服务器

anon_other_write_enable 默认没有参数

这个是允许匿名用户删除及重命名文件
建立简单的FTP服务器
我把这个参数打开
建立简单的FTP服务器
自己手动添加这个参数
建立简单的FTP服务器

Local_enable 默认是开的

允许系统其它用户登录FTP 所有非匿名用户生效 这个命令很不安全
建立简单的FTP服务器
我把它关闭
建立简单的FTP服务器

Local_umask 默认是022

这个参数用来修改本地用户上传文件的权限的
我改成044
建立简单的FTP服务器
建立简单的FTP服务器
上传文件的权限就是622 (用6减)
创建目录的权限就是733(用7减)

dirmessage_enable 默认是开启的

这个参数是指定登录FTP目录时弹出来的信息,默认使用.message文件,也可以通过message_file指定,提示文件需要在FTP目录内。
建立简单的FTP服务器
建立简单的FTP服务器

其他参数

xferlog_enable 是否启动日志功能 默认是开启的
建立简单的FTP服务器
xferlog_std_format 是否使用标准的日志格式 标准的日志格式不容易读
xferlog_file=/var/log/xferlog 指定FTP日志文件路径
chown_uploads 上传文件默认是将文件数组和属主修改为ftp,该选项就是指定是否需要修改上传文件的属性。如果允许,那么上传文件的属性将被修改为chown_username指定的属组和属主。如果不设置chown_username 那么默认的属主为root 属组是ftp
建立简单的FTP服务器
这个上传我用的用户是anonymous
建立简单的FTP服务器
默认的属性是0600 我改成了0400
建立简单的FTP服务器
idle_session_timeout FTP会话超时时间
listen_port 服务监听的端口
local_max_rate 传输限速,默认不限速(0)
anon_max_rate 匿名用户的最大传输速率。 0表示无限制
max_clients 最大并发连接数 0表示无限制
max_per_ip 每个IP允许建立的ftp连接数
connect_timeout 主动模式下,服务器与客户端建立数据连接的超时时间
data_connection_timeout 被动模式下,客户端与服务器建立数据连接的超时时间
ftpd_banner=xxx FTP登录提示语

建立简单的FTP服务器

建立简单的FTP服务器

chroot_local_user

是否允许本地用户只能访问自己的家目录。默认是可以访问其他目录(NO)
建立简单的FTP服务器
现在我改成YES
建立简单的FTP服务器
但是改成YES之后,用户不能登录了
建立简单的FTP服务器
这是因为新版的FTP增强了安全性,需要将用户的家目录的权限中的w权限删除
建立简单的FTP服务器
再次登录
建立简单的FTP服务器

chroot_list_enable

这个也是限制用户通过FTP访问其他目录的,不过chroot_local_user是对全部用户有效, 这个参数是对指定用户有效。
如果chroot_local_user+chroot_list_enable的条件 那么chroot_list_file是个白名单
建立简单的FTP服务器
建立简单的FTP服务器
可以改变工作目录
如果只有chroot_list_enable 那么chroot_list_file 是个黑名单
我现在注释掉chroot_local_user
建立简单的FTP服务器

userlist_enable

userlist_enbale=YES(默认就是YES) + ftpusers=黑名单 不允许登录 但是可以输入密码
建立简单的FTP服务器
userlist_enable=YES +userlist_deny =NO +userlist_file(user_list) =白名单
userlist_enable=YES +userlist_deny =YES +userlist_file(user_list) =黑名单 不允许登录 不要求输入密码
建立简单的FTP服务器

猜你喜欢

转载自blog.51cto.com/yueyue207/2345613