linux下FTP服务搭建与管理
- ftp的定义
ftp:// ##文件传输协议 - ftp协议提供的软件
在rhel7中:
vsftpd -
安装并开启vsftpd:
yum install vsftpd -y
###安装vsftpd###
systemctl start vsftpd
###启动vsftpd### -
部署FTP服务:
vim /etc/sysconfig/selinux
将原来的enforcing改为disabled
getenforce ###查看seLinux状态###
firewall-cmd --permanent --add-service=ftp ##防火墙开启ftp服务
firewall-cmd --reload
或者
firewall-config
firewall-cmd --list-all
在另一台主机上安装lftp
与另一台成功连接
-
ftp服务的基本信息:
软件安装包: vsftpd
默认发布目录: /var/ftp
协议接口: 21/tcp
服务配置文件:/etc/vsftpd/vsftpd.conf
报错id的解析:
500 ##文件系统权限过大
530 ##用户认证失败
550 ##服务本身功能未开放
553 ##本地文件系统权限过小 -
匿名用户的设定:
vim /etc/vsftpd/vsftpd.conf
###服务的配置文件###
anonymous_enable=YES|NO
###匿名用户是否可以登陆### -
匿名用户上传:
vim /etc/vsftpd/vsftpd.conf
write_enable=YES|NO
###ftp是否对登陆用户可写###
anon_upload_enable=YES
###开启匿名用户上传的服务### -
匿名用户的管理:
anon_root=/direcotry
###目录必须存在###
anon_umask=xxx
###修改用户文件权限###
anon_mkdir_write_enable=YES
anon_world_readable_only=NO
###匿名用户下载###
anon_other_write_enable=YES
###匿名用户删除### -
** 匿名用户身份的修改:**
hown_uploads=YES
###开启对应服务###
chown_username=bai
###指定用户,前提用户必须存在### -
匿名用户最大上传速率:
anon_max_rate=102400 -
最大链接数:
max_clients=2 -
本地用户家目录的修改:
local_root=/directory -
本地用户上传文件权限:
local_umask=xxx -
限制本地用户浏览/目录:
限制用户被锁定到自己的家目录中
chroot_local_user=YES
chmod u-w /home/* -
用户黑名单建立:
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
###在名单中的不可以访问其他目录###
vim /etc/vsftpd/chroot_list 编辑这个文件,这里把student设为黑名单 -
用户白名单建立:
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
###在名单中的可以访问其他目录### -
限制本地用户登陆:
vim /etc/vsftpd/ftpusers
###此文件是限制本地用户登陆的永久黑名单,凡是在此名单中的用户都无法登陆###
vim /etc/vsftpd/user_list
###此文件用来设置临时黑名单###
vim /etc/vsftpd/vsftpd.conf
###更改以下设置临时黑名单可以改变为白名单###
userlist_deny=NO
###将此行参数改为NO,前面设置为临时黑名单的用户有会变成白名单###
vim /etc/vsftpd/user_list -
ftp虚拟用户的登陆:
vim /etc/pam.d/bai
###文件名称任意,设定用户的认证###
account required pam_userdb.so db=/etc/vsftpd/baibai
###与前面文件名称设定保持一致###
auth required pam_userdb.so db=/etc/vsftpd/baibai
###编写配置文件###
vim /etc/vsftpd/vsftpd.conf
pam_service_name=bai
###更改认证方式###
guest_enable=YES
###打开虚拟用户功能###
guest_username=ftp
###指定用户登陆身份### -
指定虚拟用户登陆家目录:
mkdir -p /var/ftpuser/bobo{1…3}
touch /var/ftpuser/bobo1/file1
touch /var/ftpuser/bobo2/file2
touch /var/ftpuser/bobo3/file3
##家目录名须和虚拟账户名相同
vim /etc/vsftpd/vsftpd.conf
##更改配置文件
local_root=/var/ftpuserdir/$ USER
###设置用户进入时的家目录为/var/ftpuserdir/$ USER, $ USER表示当前用户的名字###
user_sub_token=$ USER
###设置该配置文件识别$ USER符号时使用shell里的 $ USER### -
虚拟帐号的配置独立:
mkdir -p /etc/vsftpd/userconf
vim /etc/vsftpd/vsftpd.conf
写入user_config_dir=/etc/vsftpd/user_conf
###设置虚拟用户独立配置路径###