CentOS FTP服务(vsftpd)配置
1.安装
一般在CentOS上都自动安装了vsftd,若没有安装则可以使用以下步骤进行安装
yum -y install vsftpd
touch /var/log/vsftpd.log # 创建vsftp的日志文件
在CentOS中,这样就可以完成了一个简单的匿名FTP的搭建。你可以通过访问ftp://yourip来进行,不过这个FTP没有任何权限。
2.基于匿名的FTP架设
参考其他关于Vsftpd的CentOS FTP服务配置文章。
3.基于虚拟用户的FTP架设
所谓虚拟用户就是没有使用真实的帐户,只是通过某种手段达到映射帐户和设置权限的目的。
1)我们在/etc/vsftpd/vsftpd.conf中做如下CentOS FTP服务配置:
anonymous_enable=NO 设定不允许匿名访问
chroot_list_enable=YES 使用户不能离开主目录
xferlog_file=/var/log/vsftpd.log 设定vsftpd的服务日志保存路径。注意,该文件默认不存在。必须要手动touch出来
ascii_upload_enable=YES
ascii_download_enable=YES 设定支持ASCII模式的上传和下载功能。
local_enable=YES 设定本地用户可以访问。注:如使用虚拟宿主用户,在该项目设定为NO的情况下所有虚拟用户将无法访问。
pam_service_name=vsftpd PAM认证文件名。PAM将根据/etc/pam.d/vsftpd进行认证
以下这些是关于Vsftpd虚拟用户支持的重要CentOS FTP服务配置项目。默认vsftpd.conf中不包含这些设定项目,需要自己手动添加CentOS FTP服务配置。
guest_enable=YES 设定启用虚拟用户功能。
guest_username=ftp 指定虚拟用户的宿主用户。-CentOS中已经有内置的ftp用户了
user_config_dir=/etc/vsftpd/vuser_conf 设定虚拟用户个人vsftp的CentOS FTP服务文件存放路径。存放虚拟用户个性的CentOS FTP服务文件(配置文件名=虚拟用户名)
2)创建chroot list,将用户ftp加入其中:
touch /etc/vsftpd/chroot_list
echo ftp >> /etc/vsftpd/chroot_list
3)进行认证:
首先,安装Berkeley DB工具,很多人找不到db_load的问题就是没有安装这个包。
yum install db4 db4-utils
然后,创建用户密码文本/etc/vsftpd/vuser_passwd.txt ,注意奇行是用户名,偶行是密码
ftpuser1
ftppass1
ftpuser2
ftppass2
接着,.生成虚拟用户认证的db文件
db_load -T -t hash -f /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_passwd.db
随后,编辑认证文件/etc/pam.d/vsftpd,全部注释掉原来语句
再增加以下两句
auth required pam_userdb.so db=/etc/vsftpd/vuser_passwd
account required pam_userdb.so db=/etc/vsftpd/vuser_passwd
最后,创建虚拟用户个性CentOS FTP服务文件
mkdir /etc/vsftpd/vuser_conf/
vi /etc/vsftpd/vuser_conf/ftpuser1
内容如下:
local_root=/opt/var/ftp1 虚拟用户的根目录(根据实际修改)
write_enable=YES 可写
anon_umask=022 掩码
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
4.启动vsftp服务器
mkdir /opt/var/ftp/ftpuser1
chmod 777 /opt/var/ftp/ftpuser1
service vsftpd start
常见错误:
1.553 Could not create file
一般都是SELinux的问题,设置SELinux的一个值,重启服务器即可。
setsebool -P ftpd_disable_trans 1
service vsftpd restart
2.500 OOPS: bad bool value in config file for: write_enable
注意你的CentOS FTP服务文件中保证每一行最后没有任何空格,一般出错就是在多余的空格上。
更改端口号:listen_port=端口号 (需要自己添加)
欢迎信息:ftpd_banner=欢迎信息
====================================================================
权限问题:
一些RadHat版本是默认打开SeLinux的。这个东西有加强安全性的同时很讨厌,比如让配置好的vsftpd无法正常登录。
#setsebool -P ftpd_disable_trans 1
重启FTP服务~
IP限制的方法
vsftpd中的配置需要 tcp_wrappers=YES
/etc/hosts.allow 中加入允许的IP
vsftpd : IP1 IP2 : allow
/etc/hosts.deny 中屏蔽所有IP
vsftpd : ALL : deny
重启服务 service xinetd restart (此服务应该开机启动!)
转载于:https://blog.51cto.com/cyhow/489819
CentOS FTP服务(vsftpd)配置相关推荐
- 如何对CentOS FTP服务配置 - 51CTO.COM
如何对CentOS FTP服务配置 - 51CTO.COM 根据很多人对CentOS FTP服务的不解,我觉得应该对CentOS FTP服务做出一定的解释. 1.安装 一般在CentOS上都自动安装了 ...
- CentOS FTP安装及配置
CentOS FTP安装及配置 LINUX下实现FTP服务的软件很多,最常见的有vsftpd,Wu-ftpd和Proftp等.Red Hat Enterprise Linux中默认安装的是vsftp ...
- 【Windows Server 2019】FTP服务的配置与管理——配置FTP站点(上)IP地址限制、身份验证、授权规则和请求筛选
目录 5. 配置FTP站点 5.1 FTP IP地址和域限制 5.2 FTP身份验证 5.3 FTP授权规则 5.4 FTP请求筛选 参考资料 关联博文 5. 配置FTP站点 5.1 FTP IP地址 ...
- 【Windows Server 2019】FTP服务的配置与管理——配置FTP站点(下)SSL设置及被动模式
目录 5.5.FTP SSL设置 准备工作 (1)创建FTP用户访问组 (2)编辑FTP站点[fjnu-ftp]的权限 (3)创建SSL证书 *配置FTP SSL 验证 (1)不加密访问FTP服务 ( ...
- linux centos6.5 ftp网页vsftpd配置
安装命令 centos下 yum install vsftpd 出现"Complete!"时意味着安装完成.Linux中,系统对于大小写严格区分,比如abc和ABC是完全不相同的字 ...
- 查看linux centos ftp服务,Centos7开启FTP服务
一.查看并安装vsftpd 执行以下命令进行查看: vsftpd -v 如果没有安装的话就执行以下命令进行安装: yum -y install vsftpd 二.配置vsftpd 2.1.取消匿名登陆 ...
- Ubuntu14.04 ftp服务安装配置
一.安装ftp服务 wyj@wyj-virtual-machine:~$ dpkg -l|grep vsftpd //查看是否安装ftp服务 wyj@wyj-virtual-ma ...
- Linux安装FTP服务-----vsftpd
检查是否已经安装vsftpd服务 rpm -qa | grep vsftpd 没有出现 vsftpd-xxx字样表示没有安装 1.下载vsftpd.rpm格式的安装包 redhat5: http:// ...
- linux虚拟用户创建目录权限不足,centos7的FTP服务vsftpd里建立虚拟用户不同目录分配不同权限...
1.virtual_use_local_privs参数 当virtual_use_local_privs=YES时,虚拟用户和本地用户有相同的权限: 当virtual_use_local_privs= ...
最新文章
- 345 所开设人工智能本科专业高校名单大全
- cassandra可视化工具_程序员绘图工具——PlantUML
- 玩转 Pandas 的 Groupby 操作
- 从飞机上看下雨是这样子,太震撼了!
- python子类分配
- zabbix 3.0 监控windows 部署
- 关于Etcd的几个问题
- JavaScript清空数组的三种方法
- sklearn之Pipeline 估计器
- Membership学习(二)membership入门[xgluxv]
- java socket 实现 http_Java Socket编程 - 基于Socket实现HTTP下载客户端
- MySQL5.7报错[ERROR] Unix socket lock file is empty /tmp/mysql.sock.lock的解决方法
- 计算机系统-记录Bochs调试器几个常用命令
- 机器学习基础(二十)—— 数学语言与 Python 代码
- 桶排序/基数排序(Radix Sort)
- 编码:decode()/encode()、quote()/unquote()
- 做软件测试三,四年后的感想
- el-upload限制文件大小(图片尺寸)
- Rust 正则表达式 Regex
- EasyExcel 三分钟搞定导入导出
热门文章
- js删除数组中指定元素_js中数组操作详解
- java中scanner与hashmap_Java中HashMap的使用练习
- Golang——HTTP编程请求和响应实现
- 鸟哥的linux私房菜简答题答案,《鸟哥的Linux私房菜》7章 Linux文件与目录管理 习题答案...
- oracle 用户禁止登录,[转] oracle限制用户在某个时间段内禁止登录数据库
- matlab实现浮点转定点,浮点转定点方法总结.doc
- c语言循环程序怎么编程,c语言程序(5):循环结构程序设计
- java 正则表达式 反向_正则表达式中的数量表示符、反向引用、零宽断言、以及java中的用法...
- linux内核udp校验和计算函数,Linux 内核IP和UDP检验和计算
- less简介、less安装、编译、less语法之变量、嵌套、类混入、函数混入、运算、less文件导入