设为首页 收藏本站
查看: 726|回复: 0

[经验分享] Vsftpd服务搭建

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-4-5 09:10:22 | 显示全部楼层 |阅读模式
一.FTP工作模式
  • 主动模式
    1.      第一步,客户机随机开启大于1024的端口与服务器的21端口建立连接通道。
    2.      第二步,当客户机需要与服务器进行数据传输时,客户端会在开启一个大于1024的随机端口Y,并将Y端口号通过之前的命令通道传送给服务器的21端口。
    3.      第三步,服务器获取到客户端的第二个端口后会主动连接客户端的该端口,通过三次握手后,完成服务器与客户端数据通道的建立,所有的数据均通过该数据通道进行传输。
  • 被动模式
    1.      第一步,客户端随意开启大于1024的X端口与服务器的21端口建立连接通道。
    2.      第二步,当客户端需要与服务器进行数据传输时,客户端从命令通道发送数据请求上传或下载        数据。
    3.      第三步,服务器收到数据请求后会随机开启一个端口Y,并通过命令通道将该端口信息传送给       客户端。
    4.      第四步,客户端在收到服务器发送过来的数据端口Y的信息后,将在客户端本地开启一个随机端口Z,此时客户端在主动通过本机的Z端口与服务器的Y端口进行连接,通过三次握手完成后,即可进行数据传输。
    5.      

二.安装与管理vsftpd
rpm –ivh vsftpd
service vsftpdstart
chkconfig vsftpdon
一.配置文件解析
Vsftpd配置文件默认位于/etc/vsftpd目录下   
常用的全局配置项
listen=YES:是否以独立运行的方式监听服务
listen_address=192.168.4.1:设置监听的 IP 地址
listen_port=21:设置监听 FTP 服务的端口号
write_enable=YES:是否启用写入权限
download_enable=YES:是否允许下载文件
userlist_enable=YES:是否启用 user_list 列表文件
userlist_deny=YES:是否禁用 user_list 中的用户
max_clients=0:限制并发客户端连接数
max_per_ip=0:限制同一 IP 地址的并发连接数
常用的匿名 FTP 配置项
anonymous_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:限制最大传输速率(字节/秒)
常用的本地用户 FTP 配置项
local_enable=YES:是否启用本地系统用户
local_umask=022:本地用户所上传文件的权限掩码
local_root=/var/ftp:设置本地用户的 FTP 根目录
chroot_local_user=YES:是否将用户禁锢在主目录
local_max_rate=0:限制最大传输速率(字节/秒)


五.本地账户FTP(案例一)
     1.修改配置文件如下
anmous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
xferlog_std_fromat=YES
chroot_local_user=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
2.创建系统账户与测试文件
    useradd  –s /sbin/nologin  tom
    useradd  –s /sbin/nologin  jerry
    useradd  –s /sbin/nologin  smith
    touch  home/{tom,jerry,smith}/test.txt
3.服务管理
    Servicevsftpd  start
一.虚拟用户FTP(案例二)
  • 创建虚拟用户数据库

首先需要创建明文密码文件,文件中奇数行为用户名,偶数行为密码。然后使用db_load工具将其转换为数据库文件,db_load工具需要通过安装db4—utils软件获得,最后通过修改文件权限以增强数据资料的安全性。

[iyunv@localhost]# vi /etc/vsftpd/vusers.list
mike
123
john
456
[iyunv@localhost]# cd /etc/vsftpd/
[iyunv@localhost vsftpd]# db_load -T -t hash -f vusers.list vusers.db
[iyunv@localhost vsftpd]# file vusers.db
vusers.db: Berkeley DB (Hash, version 9, native byte-order)
[iyunv@localhost vsftpd]# chmod 600 /etc/vsftpd/vusers.*
[iyunv@localhost vsftpd]# ls -lh /etc/vsftpd/vusers.*
-rw------- 1 root root 12K 6月27 08:51 /etc/vsftpd/vusers.db
-rw------- 1 root root  18 6月27 08:48 /etc/vsftpd/vusers.list
2.创建 FTP 根目录及虚拟用户映射的系统用户
[iyunv@localhost]# useradd -d /var/ftproot -s /sbin/nologin virtual
[iyunv@localhost]# chmod 755 /var/ftproot/
3.建立支持虚拟用户的 PAM 认证文件
[iyunv@localhost]# vi /etc/pam.d/vsftpd.vu
#%PAM-1.0
auth          required     pam_userdb.so db=/etc/vsftpd/vusers
account    required     pam_userdb.so db=/etc/vsftpd/vusers
4.在 vsftpd.conf 文件中添加支持配置
[iyunv@localhost ~]# vi /etc/vsftpd/vsftpd.conf
……
local_enable=YES
write_enable=YES
anon_umask=022
guest_enable=YES    //启用用户映射功能
guest_username=virtual    //指定映射的系统用户名称
pam_service_name=vsftpd.vu    //指定新的PAM认证文件
5.为不同的虚拟用户建立独立的配置文件
在 vsftpd.conf 文件中添加用户配置目录支持
user_config_dir=/etc/vsftpd/vusers_dir
为用户 mike、john 建立独立的配置目录及文件
配置文件名与用户名相同
[iyunv@localhost ~]# mkdir /etc/vsftpd/vusers_dir/
[iyunv@localhost ~]# cd /etc/vsftpd/vusers_dir/
[iyunv@localhost vusers_dir]# vi john
anon_upload_enable=YES
anon_mkdir_write_enable=YES
[iyunv@localhost vusers_dir]# touch mike
Vsftpd服务搭建.docx (17.88 KB, 下载次数: 0)
vsftpd搭建.docx (152.18 KB, 下载次数: 0)


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-199806-1-1.html 上篇帖子: vsftpd.conf详细配置 下篇帖子: VSftpd使用MySQL存储虚拟用户进行认证
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表