FTP
1.什么是FTP
FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。
2.配置Yum源安装FTP服务
yum install vsftpd -y
systemctl start vsftpd
systemctl stop firewalld
systemctl enable vsftpd
lftp ip ##能登陆并且显示,表示安装成功
3.vsftpd文件信息
/var/ftp ##默认发布目录
/etc/vsftpd ##配置目录
4.vsftpd服务的配置参数
1)匿名用户设定
anonymous_enable=YES|NO ##匿名用户登陆限制
12行,为限制匿名用户登陆,如果设置为YES,则匿名用户可以登陆;如果设置为NO,则匿名用户不能登陆
#<匿名用户上传> 19行和29行 设置这两个参数为YES
vim /etc/vsftpd/vsftpd.conf
write_enable=YES
anon_upload_enable=YES
chgrp ftp /var/ftp/pub 将ftp默认发布目录的组修改为ftp
chmod 775 /var/ftp/pub 将ftp默认发布目录的权限改为775
这样设置完成后,匿名用户就可以完成上传,将/etc/passwd上传到默认发布目录下
#<匿名用户家目录修改> 改变匿名用户的家目录为/home
anon_root=/direcotry
#<匿名用户上传文件默认权限修改>
anon_umask=022
#<匿名用户建立目录>
anon_mkdir_write_enable=YES|NO 33行,如果设置成YES,匿名用户可以建立目录;如果为NO,匿名用户则不可以建立用户
所有用户被锁定到自己的家目录中 100行,参数改成YES,然后去掉/home目录下所有文件的写权限,用户便可锁定到自己的家目录下
chroot_local_user=YES
chmod u-w /home/*
#<ftp虚拟用户的设定>
创建虚拟帐号身份)
vim /etc/vsftpd/redhat ##文件名称任意
ftpuser1
123
ftpuser2
123
ftpuser3
123
db_load -T -t hash -f /etc/vsftpd/redhat redhat.db
vim /etc/pam.d/redhat ##文件名称任意
account required pam_userdb.so db=/etc/vsftpd/redhat
auth required pam_userdb.so db=/etc/vsftpd/redhat
vim /etc/vsftpd/vsftpd.conf
pam_service_name=redhat
guest_enable=YES
虚拟帐号身份指定)
guest_username=ftp
chmod u-w /home/ftpuser
虚拟帐号家目录独立设定)
vim /etc/vsftpd/vsftpd.conf
local_root=/ftpuserhome/$USER
user_sub_token=$USER