vsftp 是linux 下经常使用的FTP 服务端 众所周知 安全性高 WINDOWS 下主要用的是 server_u 设置权限 线程 流量控制得比较好 linux
下面主要介绍一下 VSFTP 配置文件 以及如何简单安装windows
1.安装安全
#yum -y install vsftpd 服务器
2.修改配置文件网络
#vi /etc/vsftpd/vsftpd.confsession
# 是否容许匿名登陆FTP服务器,默认设置为YES容许app
# 用户可以使用用户名ftp或anonymous进行ftp登陆,口令为用户的E-mail地址。异步
# 如不容许匿名访问则设置为NOasync
anonymous_enable=YEStcp
# 是否容许本地用户(即linux系统中的用户账号)登陆FTP服务器,默认设置为YES容许
# 本地用户登陆后会进入用户主目录,而匿名用户登陆后进入匿名用户的下载目录/var/ftp/pub
# 若只容许匿名用户访问,前面加上#注释掉便可阻止本地用户访问FTP服务器
local_enable=YES
# 是否容许本地用户对FTP服务器文件具备写权限,默认设置为YES容许
write_enable=YES
# 掩码,本地用户默认掩码为077
# 你能够设置本地用户的文件掩码为缺省022,也可根据我的喜爱将其设置为其余值
#local_umask=022
# 是否容许匿名用户上传文件,须将全局的write_enable=YES。默认为YES
#anon_upload_enable=YES
# 是否容许匿名用户建立新文件夹
#anon_mkdir_write_enable=YES
# 是否激活目录欢迎信息功能
# 当用户用CMD模式首次访问服务器上某个目录时,FTP服务器将显示欢迎信息
# 默认状况下,欢迎信息是经过该目录下的.message文件得到的
# 此文件保存自定义的欢迎信息,由用户本身创建
#dirmessage_enable=YES
# 是否让系统自动维护上传和下载的日志文件
# 默认状况该日志文件为/var/log/vsftpd.log,也能够经过下面的xferlog_file选项对其进行设定
# 默认值为NO
xferlog_enable=YES
# Make sure PORT transfer connections originate from port 20 (ftp-data).
# 是否设定FTP服务器将启用FTP数据端口的链接请求
# ftp-data数据传输,21为链接控制端口
connect_from_port_20=YES
# 设定是否容许改变上传文件的属主,与下面一个设定项配合使用
# 注意,不推荐使用root用户上传文件
#chown_uploads=YES
# 设置想要改变的上传文件的属主,若是须要,则输入一个系统用户名
# 能够把上传的文件都改为root属主。whoever:任何人
#chown_username=whoever
# 设定系统维护记录FTP服务器上传和下载状况的日志文件
# /var/log/vsftpd.log是默认的,也能够另设其它
#xferlog_file=/var/log/vsftpd.log
# 是否以标准xferlog的格式书写传输日志文件
# 默认为/var/log/xferlog,也能够经过xferlog_file选项对其进行设定
# 默认值为NO
#xferlog_std_format=YES
# 如下是附加配置,添加相应的选项将启用相应的设置
# 是否生成两个类似的日志文件
# 默认在/var/log/xferlog和/var/log/vsftpd.log目录下
# 前者是wu_ftpd类型的传输日志,能够利用标准日志工具对其进行分析;后者是vsftpd类型的日志
#dual_log_enable
# 是否将本来输出到/var/log/vsftpd.log中的日志,输出到系统日志
#syslog_enable
# 设置数据传输中断间隔时间,此语句表示空闲的用户会话中断时间为600秒
# 即当数据传输结束后,用户链接FTP服务器的时间不该超过600秒。能够根据实际状况对该值进行修改
#idle_session_timeout=600
# 设置数据链接超时时间,该语句表示数据链接超时时间为120秒,可根据实际状况对其个修改
#data_connection_timeout=120
# 运行vsftpd须要的非特权系统用户,缺省是nobody
#nopriv_user=ftpsecure
# 是否识别异步ABOR请求。
# 若是FTP client会下达“async ABOR”这个指令时,这个设定才须要启用
# 而通常此设定并不安全,因此一般将其取消
#async_abor_enable=YES
# 是否以ASCII方式传输数据。默认状况下,服务器会忽略ASCII方式的请求。
# 启用此选项将容许服务器以ASCII方式传输数据
# 不过,这样可能会致使由"SIZE /big/file"方式引发的DoS攻击
#ascii_upload_enable=YES
#ascii_download_enable=YES
# 登陆FTP服务器时显示的欢迎信息
# 若有须要,可在更改目录欢迎信息的目录下建立名为.message的文件,并写入欢迎信息保存后
#ftpd_banner=Welcome to blah FTP service.
# 黑名单设置。若是很讨厌某些email address,就可使用此设定来取消他的登陆权限
# 能够将某些特殊的email address抵挡住。
#deny_email_enable=YES
# 当上面的deny_email_enable=YES时,能够利用这个设定项来规定哪些邮件地址不可登陆vsftpd服务器
# 此文件需用户本身建立,一行一个email address便可
#banned_email_file=/etc/vsftpd/banned_emails
# 用户登陆FTP服务器后是否具备访问本身目录之外的其余文件的权限
# 设置为YES时,用户被锁定在本身的home目录中,vsftpd将在下面chroot_list_file选项值的位置寻找chroot_list文件
# 必须与下面的设置项配合
#chroot_list_enable=YES
# 被列入此文件的用户,在登陆后将不能切换到本身目录之外的其余目录
# 从而有利于FTP服务器的安全管理和隐私保护。此文件需本身创建
#chroot_list_file=/etc/vsftpd/chroot_list
# 是否容许递归查询。默认为关闭,以防止远程用户形成过量的I/O
#ls_recurse_enable=YES
# 是否容许监听。
# 若是设置为YES,则vsftpd将以独立模式运行,由vsftpd本身监听和处理IPv4端口的链接请求
listen=YES
# 设定是否支持IPV6。如要同时监听IPv4和IPv6端口,
# 则必须运行两套vsftpd,采用两套配置文件
# 同时确保其中有一个监听选项是被注释掉的
#listen_ipv6=YES
# 设置PAM外挂模块提供的认证服务所使用的配置文件名,即/etc/pam.d/vsftpd文件
# 此文件中file=/etc/vsftpd/ftpusers字段,说明了PAM模块能抵挡的账号内容来自文件/etc/vsftpd/ftpusers中
#pam_service_name=vsftpd
# 是否容许ftpusers文件中的用户登陆FTP服务器,默认为NO
# 若此项设为YES,则user_list文件中的用户容许登陆FTP服务器
# 而若是同时设置了userlist_deny=YES,则user_list文件中的用户将不容许登陆FTP服务器,甚至连输入密码提示信息都没有
#userlist_enable=YES/NO
# 设置是否阻扯user_list文件中的用户登陆FTP服务器,默认为YES
#userlist_deny=YES/NO
# 是否使用tcp_wrappers做为主机访问控制方式。
# tcp_wrappers能够实现linux系统中网络服务的基于主机地址的访问控制
# 在/etc目录中的hosts.allow和hosts.deny两个文件用于设置tcp_wrappers的访问控制
# 前者设置容许访问记录,后者设置拒绝访问记录。
# 如想限制某些主机对FTP服务器192.168.57.2的匿名访问,编缉/etc/hosts.allow文件,如在下面增长两行命令:
# vsftpd:192.168.57.1:DENY 和vsftpd:192.168.57.9:DENY
# 代表限制IP为192.168.57.1/192.168.57.9主机访问IP为192.168.57.2的FTP服务器
# 此时FTP服务器虽能够PING通,但没法链接
tcp_wrappers=YES
设置FTP用户 而且锁定主目录
建立test123用户 并指定 主目录为/opt/test123
#useradd -d /opt/test123 test123
#passwd test123
windows>ftp 192.168.18.66
220 Welcome to renneng manager FTP server
用户(192.168.18.60:(none)): test123
331 Please specify the password.
密码:
ftp>pwd
/opt/test123
ftp>cd ..
ftp>pwd
/opt
主目录设定了 /opt/test123 可是没法锁定目录
通过多方查证 搜索 验证
在vsftpd.conf 中 加入local_root=/opt 设置如下项
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list
添加/etc/vsftpd/chroot_list 文件 并在其中添加FTP帐户名
重启服务后 登陆主目录 为/opt 而且没法访问上一级目录
验证以下
C:\>ftp 192.168.18.60
链接到 192.168.18.60。
220 Welcome to renneng manager FTP server
用户(192.168.18.60:(none)): test123
331 Please specify the password.
密码:
230 Login successful.
ftp>pwd
257 "/"
ftp> dir
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
drwx------ 3 500 500 4096 Apr 01 06:04 test123
226 Directory send OK.
ftp: 收到 65 字节,用时 0.00秒 65000.00千字节/秒。
ftp> cd ..
250 Directory successfully changed.
ftp> pwd
257 "/"
ftp>
主目录锁定成功 至此 vsftp 设置完结