ftp文件共享服务搭建

##################
####ftp
文件共享服务
##################

======ftp
的安装与启动=======
yum install vsftpd.x86_64 -y   ##
安装ftp服务

systemctl start vsftpd         ##
开启ftp服务
systemctl disable vstpd        ##
开机启动
systemctl stop firewalld       ##
关闭防火墙
systemctl enable firewalld     ##
开机关闭防火墙

cd /var/ftp                    ##ftp
服务的文件都放在这个文件夹

======
测试:
打开浏览器

ftp
//172.25.254.112



==
登陆:

lftp 172.25.25.112               ##
匿名用户登陆
 
lftp 172.25.254.112 -u student   ##
普通用户登陆

==
配置文件: /etc/vsftpd/vsftpd.conf

setenforce 0                    ##
关闭内核加强型防火墙

1>
匿名用户设置
anonymous_enable=YES            ##
允许匿名用户登陆
chgrp ftp /var/ftp/pub
chmod 775 /var/ftp/pub
anon_upload_enable=YES          ##
允许匿名用户上传
anon_world_readable_only=NO     ##
允许匿名用户下载
anon_other_write_enable=YES     ##
允许匿名用户删除
anon_mkdir_write_enable=YES     ##
允许匿名用户建立目录

chown_uploads=YES               ##
开启下述功能
chown_username=student          ##
匿名用户上传文件使用的身份

anon_max_rate=102400            ##
匿名用户最大上传速率
max_clients=2                   ##
匿名用户最大链接数(最多几个人登陆)
anon_umask=022                  ##
匿名用户上传文件默认权限

2>
本地用户设定
local_enable=YES                ##
允许本地用户登陆
write_enable=YES                ##
允许本地用户进行删除,上传,建立

local_root=/directory           ##
本地用户家目录更改
家目录要求:所属用户必须是用以登陆的普通用户:
例:  student用户登陆,家目录为 /ftplocalhome, /ftplocalhome 的要求为:
chown student /ftplocalhome

chroot_local_user=YES           ##
本地用户被限制在自己的家目录(限制本地用户的浏览权限)
chmod u-w /home/*
 
local_umask=022                 ##
本地用户上传文件默认权限

本地用户浏览权限黑名单建立
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list


本地用户浏览权限白名单建立
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list


本地用户使用ftp服务黑名单:
 vim /etc/vsftpd/ftpusers       ##
永久黑名单
 vim /etc/vsftpd/user_list      ##
临时黑名单

本地用户使用ftp服务白名单:
 vim /etc/vsftpd/vsftpd.conf     userlist_deny=NO   
 vim /etc/vsftpd/usr_list       ##
此时名单中出现的/etc/vsftpd/ftpusers中没有的用户可以登陆
***********************************************************
*   
注意:不能上传和下载文件名或目录名相同的文件,会报错:         *
*       Access failed: 553 Could notcreate file.  *
***********************************************************




3>ftp
虚拟用户设定

创建虚拟帐号身份)
vim /etc/vsftpd/loginusers  ##
文件名称任意,奇数行为用户,偶数行为密码
ftpuser1
123
ftpuser2
123
ftpuser3
123

db_load -T -t hash -f /etc/vsftpd/loginusers loginusers.db

vim /etc/pam.d/ckvsftpd     ##
文件名称任意
account     required    pam_userdb.so   db=/etc/vsftpd/loginusers
auth        required    pam_userdb.so   db=/etc/vsftpd/loginusers

vim /etc/vsftpd/vsftpd.conf
pam_service_name=ckvsftpd   ##
/etc/pam.d/ckvsftpd文件名一致
guest_enable=YES                ##
允许虚拟用户登录

虚拟帐号身份指定)
guest_username=ftpuser
chmod u-w /home/ftpuser

虚拟帐号家目录独立设定)
vim /etc/vsftpd/vsftpd.conf
local_root=/ftpuserhome/$USER   ##
用户目录 
user_sub_token=$USER        ##
用户配置文件所在目录,可为空

mkdir /ftpuserhome
chgrp ftpuser /ftpuserhome
chmod g+s /ftpuserhome
mkdir /ftpuserhome/ftpuser{1..3}


虚拟帐号配置独立)
vim /etc/vsftpd/vsftpd.conf
user_config_dir=/etc/vsftpd/userconf/$USER
mkdir -p /etc/vsftpd/userconf

vim /etc/vsftpd/userconf/ftpuser1
在此文件中设定配置文件中的所有参数,此文件的优先级高

anon_upload_enable=YES
anon_world_readable_only=NO
anon_other_write_enable=YES
anon_mkdir_write_enable=YES


chown root:root /ftpuserhome/*

我的/etc/vsftpd/vsftpd.conf 设置:
pam_service_name=ckvsftpd
guest_enable=YES
guest_username=student
local_root=/ftpuserhome/$USER
user_sub_token=$USER
user_config_dir=/etc/vsftpd/userconf
userlist_enable=YES
tcp_wrappers=YES

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章