centos6.8服务器配置之vsftpd配置
2024-08-25 11:42:12
vsftpd: version 2.2.2
一、安装:因对版本要求不高,所以采用yum安装
yum install -y vsftpd
ckconfig vsftpd on
二、配置:
1、建立ftp用户vuser作为虚拟用户的宿主,不允许ssl登录:
adduser vuser -s /sbin/nologin
2、建立虚拟用户列表:在/etc/vsftpd/下创建vuser.txt文件,在里面填写用户名和账号,第一行账号,第二行密码,依次类推。
3、建立虚拟用户口令库,(如果系统提示找不到db_load命令,则需先安装yum –y install db4 )
db_load –T –t hash –f /etc/vsftpd/vuser.txt /etc/vsftpd/vuser.db
注意文件名保持 统一!
4、进入/etc/pam.d/中创建vsftpd.vuser,在其中添加如下信息:
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser
5、生成pem文件
openssl req -new -x509 -nodes -out vsftpd.pem -keyout vsftpd.pem
6、创建虚拟用户配置文件存放目录
mkdir /etc/vsftpd/vsftpd_conf/
7、创建与虚拟用户名相同名称的文件(虚拟用户名即vuser.txt中的用户名),比如创建demo
vim /etc/vsftpd/vsftpd_conf/demo
8、在demo中填写如下信息
#此路径根据虚拟用户要访问的目录对应修改
local_root=/www/web
anon_world_readable_only=NO
anon_umask=022
write_enable=YES
anon_mkdir_write_enable=YES
anon_upload_enable=YES
anon_other_write_enable=YES
9、编辑配置文件
vim /etc/vsftpd/vsftpd.conf
编辑内容如下:
#设定不允许匿名访问
anonymous_enable=NO
#设定本地用户可以访问。注:如使用虚拟宿主用户,在该项目设定为NO的情况下所有虚拟用户将无法访问
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
tcp_wrappers=YES
#虚拟用户配置:PAM认证文件名,PAM将根据/etc/pam.d/vsftpd进行认证
pam_service_name=vsftpd.vuser
userlist_enable=yes
#启用虚拟用户
guest_enable=yes
#虚拟用户配置文件存放目录
user_config_dir=/etc/vsftpd/vsftpd_conf
#虚拟用户映射到的系统账号
guest_username=vuser
#配置PASV
pasv_enable=YES
pasv_min_port=40000
pasv_max_port=40080
pasv_promiscuous=YES
#启用TLS/SSL
ssl_enable=YES
#强迫客户机在登录时使用TLS
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_ciphers=HIGH
rsa_cert_file=/etc/vsftpd/vsftpd.pem
10、启动
service vsftpd start
11、目录权限
chown -R root:vuser /www/web
一般链接不上,大部分是目录权限的问题
可以看:centos关于vsftpd的配置、配置说明及常见问题 里面写了两种配置vsftpd用户的方式、配置项的详细说明和一些常见为题,供大家参考!
最新文章
- Java网络编程--简单聊天程序
- 在SQL Serve里停用行和页层级锁
- C#设计模式-简单工厂
- .net下的跨域问题
- 传智博客.NET培训第13季 Ajax教程(共十三季) 学习资源
- scrum1.4---Sprint 计划
- 深入理解Redis中的主键失效及其实现机制
- ORACLE 中的 锁 介绍
- 工作流--JBPM简介及开发环境搭建
- 使用pycharm进行远程开发部署调试设置 与 远程部署调试是否必须使用远程主机的解释器?
- Vue父组件向子组件传递一个动态的值,子组件如何保持实时更新实时更新?
- MySQL-监控告警系统
- Asp.Net Core 2.0 项目实战(5)Memcached踩坑,基于EnyimMemcachedCore整理MemcachedHelper帮助类。
- DevExpress WPF v18.2新版亮点(六)
- 二进制数值Byte [] 转Base64字符串
- Codeforces Round #258 (Div. 2)-(A,B,C,D,E)
- Dictionary的应用
- C#知识
- tp5 数据库相关操作笔记
- BEGINNING SHAREPOINT&;#174; 2013 DEVELOPMENT 第10章节--SP2013中OAuth概览 应用程序验证
热门文章
- vue模糊搜索&;select取值
- 关于DRY原则
- 转:nginx+CGI/FASTCGI
- SOAP消息的结构
- Poj2182 Lost Cows(玄学算法)
- Python安装scrapy提示 error: Microsoft Visual C++ 14.0 is required. Get it with ";Microsoft Visual C++
- (转)求质数算法的N种境界[1] - 试除法和初级筛法
- URL获取并修改参数【转】
- CSS 笔记——文本字体
- <;四边形不等式优化>;[NOI1995]石子合并