Linux系统的vsftpd服务配置
概述:
FTP ( 文件传输协议 ) 是 INTERNET 上仍常用的最老的网络协议之一 , 它为系统提供了通过网络与远程服务器进行传输的简单方法FTP
服务器包的名称为 VSFTPD , 它代表 Very Secure File Transfer Protocol Daemon 服务器名称也叫做 vsftpd
远程FTP客户端能以用户anyonymous或ftp身份连接到服务器(无需密码),并在安装之前要执行的任务:
1.更改selinux为disabled,重启生效
配置文件为:下面开始搭建vsftpd服务器:
1.yum install vsftpd -y ##安装ftp服务
2.systemctl start&enable vsftp ##开启服务
3.firewall-cmd --permanent --add-service=ftp ##将ftp加入防火墙的允许名单
4.firewall-cmd --reload ##重新加载防火墙
5.firewall-cmd --list-all ##查看防火墙的内容
ftp已被允许
服务器搭建完成!
在客户端链接vsftpd服务器:
本次实验服务端与客户端为一台主机
1.安装lftp
2.lftp 服务端ip
配置成功!
ftp的配置文件:/etc/vsftpd/vsftpd.conf
1.匿名用户
anonymous_enable=YES|NO ##匿名用户是否可以登录
2.本地用户
local_enable=YES|NO ##本地用户是否可以登录
write_enable=YES|NO ##ftp是否对登录用户可写
3.匿名用户上传
【1】配置文件
write_enable=YES|NO
anon_upload_enable=YES
[2]修改权限
chgrp ftp /var/ftp/pub/
chmod 775 /var/ftp/pub/
实验:
4.匿名用户家目录修改
5.匿名用户上传文件默认权限修改
anon_umask=022
6.匿名用户建立目录
anon_mkdir_write_enable=YES|NO
实验:
7.匿名用户下载
anon_world_readable_only=YES|NO? ##参数NO表示用户可以下载
实验:
8.匿名用户删除
anon_other_write_enable=YES|NO
实验:
9.最大上传速率
anon_max_rate=102400?
##每秒钟100K的速度
实验:
10.本地用户上传文件权限
local_umask=022
实验:
11.限制本地用户浏览目录
所有用户被锁定到自己的家目录中
chroot_local_user=YES
chmod u-w /home/*
实验:student用户被锁定到自己的家目录中
12.用户黑名单的建立
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list qs
vim /etc/vsftpd/chroot_list ##添加列表名单
实验:
13.用户白名单的建立
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
vim /etc/vsftpd/chroot_list ##添加列表名单
实验:
14.限制本地用户登陆
vim /etc/vsftpd/ftpusers ##用户黑名单
实验:
vim /etc/vsftpd/user_list? ##用户临时黑名单,默认为黑名单,也可修改为白名单
用户白名单的设定
vim /etc/vsftpd/vsftpd.conf
userlist_deny=NO
vim /etc/vsftpd/user_list? ##参数设定,此文件变成白名单,只在名单里的用户可以登陆ftp? ?
实验:在/etc/vsftpd/user_list 中加入linux
student在ftpusers和user_list中都有,ftpuser的执行权限高以它为准。
当黑名单和白名单同时存在,以黑名单为准。
yum install pam
创建虚拟帐号身份
1.vim
/etc/vsftpd/userdb ##文件名称任意
?
2.db_load -T -t hash -f userdb userdb.db?
##加密
3.vim
/etc/pam.d/ftpuser ##文件名任意
4. vim
/etc/vsftpd/vsftpd.conf
?
实验:
虚拟用户家目录独立设定
建立用户指定的家目录
设定用户的家目录
vim /etc/vsftpd/vsftpd.conf
##$USER将回显用户的名称
实验:
虚拟账号的独立设置
建立目录
编辑文件? /etc/vsftpd/vsftpd.conf
添加内容:
把匿名用户可以上传的功能进行注释
重启服务!
修改权限并建立目录
编辑文件 /etc/vsftpd/userconf/user1
使user1可以上传文件
实验: