VSFTP

**************************************************************************************************
◆案例1◆ 配置匿名FTP服务器
**************************************************************************************************

1.安装VSFTP服务器

yum install -y vsftpd


2.修改VSFTP主配置文件

--------------------------------------------------------------------------------------------------------------
vim /etc/vsftpd/vsftpd.conf

pasv_enable=YES #开启被动模式
pasv_min_port=10000 #被动模式最小端口
pasv_max_port=15000 #被动模式最大端口

anonymous_enable=YES #允许匿名用户访问
anon_upload_enable=YES #允许匿名用户上传
anon_mkdir_write_enable=YES #允许匿名用户建立目录
anon_other_write_enable=YES #开放其他人写入权限
anon_umask=022 #设置匿名用户umask
anon_root=/ghost #匿名用户ftp根目录

local_enable=YES #允许本地用户登录
write_enable=YES #允许本地用户上传
local_umask=022 #本地用户上传umask值
xferlog_enable=YES #激活记录日志
connect_from_port_20=YES #主动模式传输接口
xferlog_std_format=YES #使用标准ftp日志的格式

listen=YES #允许被侦听
pam_service_name=vsftpd #ftp采用pam默认用户名密码验证
userlist_enable=YES #用户登陆限制
tcp_wrappers=YES #网络访问限制机制


【vim 去掉警号:%s/#.*$//g 去掉空格:%s/\s//g】

--------------------------------------------------------------------------------------------------------------

3.启动FTP服务,并设置开机自动启动

systemctl start vsftpd

chkconfig vsftpd on


**************************************************************************************************
◆案例2◆ 配置本地用户FTP服务器
**************************************************************************************************


1.安装VSFTP服务器

yum install -y vsftpd


2.修改VSFTP主配置文件

--------------------------------------------------------------------------------------------------------------
vim /etc/vsftpd/vsftpd.conf

pasv_enable=YES #开启被动模式
pasv_min_port=10000 #被动模式最小端口
pasv_max_port=15000 #被动模式最大端口

anonymous_enable=NO #允许匿名用户登陆
chroot_local_user=YES #把用户禁锢在家目录
local_enable=YES #本地用户允许登陆
local_root=/ghost #指定本地用户的ftp根目录
write_enable=YES #允许本地用户上传
local_umask=022 #本地用户上传umask值
xferlog_enable=YES #激活记录日志
xferlog_std_format=YES #使用标准ftp日志的格式

listen=YES #允许被侦听
pam_service_name=vsftpd #ftp采用pam默认用户名密码验证
userlist_enable=YES #用户登陆限制
tcp_wrappers=YES #网络访问限制机制


【vim 去掉警号:%s/#.*$//g 去掉空格:%s/\s//g】

--------------------------------------------------------------------------------------------------------------

3.创建用户并指定其家目录,创建用于存储数据的目录

useradd -s /sbin/nologin -d /ghost/lyshark lyshark

passwd lyshark


4.启动FTP服务,并设置开机自动启动

systemctl start vsftpd

chkconfig vsftpd on


**************************************************************************************************
◆案例3◆ 配置匿名用户与本地用户混合的FTP服务器
**************************************************************************************************

1.安装VSFTP服务器

yum install -y vsftpd


2.修改VSFTP主配置文件

--------------------------------------------------------------------------------------------------------------
vim /etc/vsftpd/vsftpd.conf

pasv_enable=YES #开启被动模式
pasv_min_port=10000 #被动模式最小端口
pasv_max_port=15000 #被动模式最大端口
anonymous_enable=YES #允许匿名用户登陆
anon_umask=022 #设置匿名用户umask
anon_root=/var/ftp #匿名用户ftp根目录
anon_upload_enable=YES #允许匿名用户上传
anon_mkdir_write_enable=YES #允许匿名用户建立目录
anon_other_write_enable=YES #开放其他人写入权限
anon_max_rate=0 #限制最大传输速率

local_enable=YES #允许本地用户登录
local_root=/ghost #指定本地用户的ftp根目录
chroot_local_user=YES #把用户禁锢在家目录
write_enable=YES #允许本地用户上传
local_umask=022 #本地用户上传umask值
xferlog_enable=YES #激活记录日志
xferlog_std_format=YES #使用标准ftp日志的格式
listen=YES #允许被侦听
pam_service_name=vsftpd #ftp采用pam默认用户名密码验证
userlist_enable=YES #用户登陆限制
tcp_wrappers=YES #网络访问限制机制


【vim 去掉警号:%s/#.*$//g 去掉空格:%s/\s//g】

--------------------------------------------------------------------------------------------------------------


3.创建用户并指定其家目录,创建用于存储数据的目录

useradd -s /sbin/nologin -d /ghost/lyshark lyshark

passwd lyshark


4.启动FTP服务,并设置开机自动启动

systemctl start vsftpd

chkconfig vsftpd on

**************************************************************************************************
◆案例4◆ 配置虚拟用户FTP服务器(重点)
**************************************************************************************************

1.安装相应软件包

yum install -y libdb-utils

yum install -y vsftpd


2.配置vlogin文件,vlogin文件名称可自定义.

vim /etc/vsftpd/vlogin


3.在vlogin文件中写入相应账号以及密码

Lyshark #奇数行写账号
123456 #偶数行写密码


4.将写好的文件加密,并转换成vlogin.db数据库文件

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


5.设置数据库文件的权限,保证安全

chmod 600 /etc/vsftpd/{vlogin,vlogin.db}


6.覆盖编辑PAM文件

vim /etc/pam.d/vsftpd.pam


写入内容↓

auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vlogin
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vlogin


7.创建一个映射账号virtual,所有的登陆请求都是virtual

useradd -s /sbin/nologin -d /home/ftp virtual


8.修改VSFTP主配置文件

--------------------------------------------------------------------------------------------------------------
vim /etc/vsftpd/vsftpd.conf

pasv_enable=YES #开启被动模式
pasv_min_port=10000 #被动模式最小端口
pasv_max_port=15000 #被动模式最大端口

anonymous_enable=NO #允许匿名用户访问
local_enable=YES #允许本地用户登录
write_enable=YES #允许本地用户上传
anon_upload_enable=YES #允许匿名用户上传
anon_mkdir_write_enable=NO #允许匿名用户建立目录
anon_other_write_enable=NO #开放其他人写入权限
chroot_local_user=YES #把用户禁锢在家目录
guest_enable=YES #启动来宾用户
guest_username=virtual #来宾默认使用的用户
listen=YES #允许被侦听
listen_port=21 #侦听21端口
pam_service_name=vsftpd.pam #ftp采用pam默认用户名密码验证
user_config_dir=/etc/vsftpd_user_conf #指定虚拟用户配置文件保存位置
user_sub_token=$USER #映射用户变量


【vim 去掉警号:%s/#.*$//g 去掉空格:%s/\s//g】

--------------------------------------------------------------------------------------------------------------

9.创建对应文件(用于保存权限文件)

mkdir /etc/vsftpd_user_conf
mkdir -p /home/ftp/lyshark


10.编辑文件给指定用户分配权限,用匿名用户权限分配

--------------------------------------------------------------------------------------------------------------
vim /etc/vsftpd_user_conf/lyshark

local_root=/home/ftp/$USER
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
chroot_local_user=YES

# allow_writeable_chroot=YES #可在公共目录下创建文件

--------------------------------------------------------------------------------------------------------------

11.启动FTP服务,并设置开机自动启动

systemctl start vsftpd

chkconfig vsftpd on


**************************************************************************************************
◆案例5◆ 启用SSL传输加密认证
**************************************************************************************************


1.查看是否安装OpenSSL包

rpm -q openssl


2.生成SSL加密密钥对

openssl req -new -x509 -nodes -out vsftpd.pem -keyout vsftpd.pem

--------------------------------------------------------------------------------------------------------------
解释:
req #标注格式
-new #创建一个新的证书
-x509 #证书内容格式
-nodes #不使用密码
-out #生成文件名
-keyout #生成的秘钥文件名

创建时依次填写:国家、省份、城市、组织、部门、个人或主机名、邮箱
--------------------------------------------------------------------------------------------------------------

3.把生成的证书放入特定目录下,并给予最低权限,保证安全

cp -a vsftpd.pem /etc/ssl/certs/

chmod 500 /etc/ssl/certs/


4.在VSFTP主配置中文件加入以下参数

--------------------------------------------------------------------------------------------------------------
vim /etc/vsftpd/vsftpd.conf


ssl_enable=YES #启用ssl认证
ssl_tlsv1=YES
ssl_sslv2=YES #开启tlsv1、sslv2、sslv3都支持
ssl_sslv3=YES
allow_anon_ssl=YES #允许匿名用户
force_anon_logins_ssl=YES
force_anon_data_ssl=YES #匿名登录和传输时强制使用ssl
force_local_logins_ssl=YES
force_local_data_ssl=YES #本地登录和传输时强制使用ssl
rsa_cert_file=/etc/ssl/certs/vsftpd.pem #证书文件所在目录

--------------------------------------------------------------------------------------------------------------


5.启动FTP服务,并设置开机自动启动

systemctl start vsftpd

chkconfig vsftpd on

猜你喜欢

转载自www.cnblogs.com/LyShark/p/9062882.html