概述

最近在搞Oracle在Linux系统下集群,针对Linux系统,笔人也是一片空白。Liunx外部文件的传输,避免不了使用FTP服务,所以现在就整理下,CentOS7环境下,FTP服务的搭建。FTP服务器需要安装vsftp服务端软件。我们知道,在建立vsftpd用户时,我们一般是在linux下建立用户useradd的方式来访问ftp,但有时我们只想提供ftp服务,而避免用户用ftp的帐号去登录linux,采用一般的方式只能是限制该用户的访问权限,但还是避免不了用户登录进linux系统,所以比较好的方法是用vsftpd的虚拟用户(virtual users)。
FTP基于虚拟用户的配置
一、配置防火墙,开启FTP服务器需要的端口
CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙。
1、关闭firewall:
systemctl stop firewalld.service #停止firewall systemctl disable firewalld.service #禁止firewall开机启动
2、安装iptables防火墙
yum install iptables-services #安装 vi /etc/sysconfig/iptables #编辑防火墙配置文件,添加下面红色部分进入iptables,说明:21端口是ftp服务端口;10060到10090是Vsftpd被动模式需要的端口,可自定义一段大于1024的tcp端口 -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 10060:10090 -j ACCEPT :wq! #保存退出 systemctl restart iptables.service #最后重启防火墙使配置生效 systemctl enable iptables.service #设置防火墙开机启动
二、关闭SELINUX
vi /etc/selinux/config #SELINUX=enforcing #注释掉 #SELINUXTYPE=targeted #注释掉 SELINUX=disabled #增加 :wq! #保存退出 setenforce 0 #使配置立即生效
三、安装vsftpd
rpm -qc vsftpd #查询vsftpd是否安装 yum install -y vsftpd #安装vsftpd yum install -y psmisc net-tools systemd-devel libdb-devel perl-DBI #安装vsftpd虚拟用户配置依赖包 systemctl start vsftpd.service #启动 systemctl enable vsftpd.service #设置vsftpd开机启动
四、新建系统用户vsftpd
useradd vsftpd -d /home/wwwroot -s /bin/false #用户目录为/home/wwwroot, 用户登录终端设为/bin/false(即使之不能登录系统) chown vsftpd:vsftpd /home/wwwroot -R
五、建立虚拟用户个人Vsftp的配置文件和子账号FTP权限
mkdir /etc/vsftpd/vconf cd /etc/vsftpd/vconf touch web1 #这里创建虚拟用户配置文件 mkdir -p /home/wwwroot/web1/http/mydic #设置FTP上传文件新增权限,最新的vsftpd要求对主目录不能有写的权限所以ftp为755,主目录下面的子目录再设置777权限 chmod -R 755 /home/wwwroot/web1/http chmod R 777 /home/wwwroot/web1/http/mydic vi web1 #编辑用户web1配置文件,其他的跟这个配置文件类似,输入下面红色内容 local_root=/home/wwwroot/web1/http/ #设置FTP账号根目录 write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES :wq! #保存退出
六、配置vsftp服务器
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf-bak #备份默认配置文件
执行以下命令进行设置:
sed -i "s/anonymous_enable=YES/anonymous_enable=NO/g" '/etc/vsftpd/vsftpd.conf' sed -i "s/#anon_upload_enable=YES/anon_upload_enable=NO/g" '/etc/vsftpd/vsftpd.conf' sed -i "s/#anon_mkdir_write_enable=YES/anon_mkdir_write_enable=YES/g" '/etc/vsftpd/vsftpd.conf' sed -i "s/#chown_uploads=YES/chown_uploads=NO/g" '/etc/vsftpd/vsftpd.conf' sed -i "s/#async_abor_enable=YES/async_abor_enable=YES/g" '/etc/vsftpd/vsftpd.conf' sed -i "s/#ascii_upload_enable=YES/ascii_upload_enable=YES/g" '/etc/vsftpd/vsftpd.conf' sed -i "s/#ascii_download_enable=YES/ascii_download_enable=YES/g" '/etc/vsftpd/vsftpd.conf' sed -i "s/#ftpd_banner=Welcome to blah FTP service./ftpd_banner=Welcome to FTP service./g" '/etc/vsftpd/vsftpd.conf' echo -e "use_localtime=YES\nlisten_port=21\nchroot_local_user=YES\nidle_session_timeout=300 \ndata_connection_timeout=1\nguest_enable=YES\nguest_username=vsftpd #此处要和刚刚创建的用户名一直 \nuser_config_dir=/etc/vsftpd/vconf\nvirtual_use_local_privs=YES \npasv_min_port=10060\npasv_max_port=10090 \naccept_timeout=5\nconnect_timeout=1" >> /etc/vsftpd/vsftpd.conf
配置文件说明:
anonymous_enable=NO //设定不允许匿名访问 local_enable=YES //设定本地用户可以访问。注:如使用虚拟宿主用户,在该项目设定为NO的情况下所有虚拟用户将无法访问 chroot_list_enable=YES //使用户不能离开主目录 ascii_upload_enable=YES ascii_download_enable=YES //设定支持ASCII模式的上传和下载功能 pam_service_name=vsftpd //PAM认证文件名。PAM将根据/etc/pam.d/vsftpd进行认证 #以下这些是关于vsftpd虚拟用户支持的重要配置项,默认vsftpd.conf中不包含这些设定项目,需要自己手动添加 guest_enable=YES //设定启用虚拟用户功能 guest_username=vsftpd //指定虚拟用户的宿主用户,CentOS中已经有内置的ftp用户了,通过映射到vsftpd user_config_dir=/etc/vsftpd/vuser_conf //设定虚拟用户个人vsftp的CentOS FTP服务文件存放路径。存放虚拟用户个性的CentOS FTP服务文件(配置文件名=虚拟用户名)
七、建立虚拟用户名单文件
touch /etc/vsftpd/virtusers
编辑虚拟用户名单文件:(第一行账号,第二行密码,注意:不能使用root做用户名,系统保留)
vi /etc/vsftpd/virtusers web1 123456 :wq! #保存退出
八、生成虚拟用户数据文件
db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db chmod 600 /etc/vsftpd/virtusers.db #设定PAM验证文件,并指定对虚拟用户数据库文件进行读取
九、在/etc/pam.d/vsftpd的文件头部加入以下信息(在后面加入无效)
修改前先备份
cp /etc/pam.d/vsftpd /etc/pam.d/vsftpdbak
vi /etc/pam.d/vsftpd #先注释到vsftpd所有配置,加入下面红色部分
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
注意:如果系统为32位,上面改为lib,否则配置失败;
十、最后重启vsftpd服务器
systemctl restart vsftpd.service
可通过 tail -f /var/log/secure 指令,查看服务器安全日志,便于分析错误问题,设置操作效果一定要仔细.....
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# CentOS7
# FTP服务搭建
# centos7搭建ftp服务器
# centos7搭建ftp
# Centos7.3下vsftp服务的安装方法
# Centos7 ftp环境搭建教程详解
# CentOS7.0下安装FTP服务的方法
# 详解CentOS7安装配置vsftp搭建FTP
相关文章:
已有域名和空间,如何快速搭建网站?
自助网站制作软件,个人如何自助建网站?
建站主机系统SEO优化与智能配置核心关键词操作指南
如何通过山东自助建站平台快速注册域名?
如何用搬瓦工VPS快速搭建个人网站?
无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?
建站主机如何选?性能与价格怎样平衡?
网站制作难吗安全吗,做一个网站需要多久时间?
Python文件管理规范_工程实践说明【指导】
韩国服务器如何优化跨境访问实现高效连接?
建站之星CMS建站配置指南:模板选择与SEO优化技巧
如何快速辨别茅台真假?关键步骤解析
已有域名和空间如何快速搭建网站?
代刷网站制作软件,别人代刷火车票靠谱吗?
如何在橙子建站上传落地页?操作指南详解
如何在西部数码注册域名并快速搭建网站?
网站制作需要会哪些技术,建立一个网站要花费多少?
定制建站模板如何实现SEO优化与智能系统配置?18字教程
怀化网站制作公司,怀化新生儿上户网上办理流程?
建站之星安装需要哪些步骤及注意事项?
历史网站制作软件,华为如何找回被删除的网站?
如何通过FTP服务器快速搭建网站?
香港网站服务器数量如何影响SEO优化效果?
,购物网站怎么盈利呢?
定制建站平台哪家好?企业官网搭建与快速建站方案推荐
网页制作模板网站推荐,网页设计海报之类的素材哪里好?
Android自定义控件实现温度旋转按钮效果
合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?
,在苏州找工作,上哪个网站比较好?
百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?
西安大型网站制作公司,西安招聘网站最好的是哪个?
如何通过PHP快速构建高效问答网站功能?
建站之星如何优化SEO以实现高效排名?
C#如何使用XPathNavigator高效查询XML
怎么将XML数据可视化 D3.js加载XML
如何通过多用户协作模板快速搭建高效企业网站?
建站之星后台管理如何实现高效配置?
如何零基础开发自助建站系统?完整教程解析
如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何在Tomcat中配置并部署网站项目?
如何制作网站标识牌,动态网站如何制作(教程)?
免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?
视频网站app制作软件,有什么好的视频聊天网站或者软件?
邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?
如何用AWS免费套餐快速搭建高效网站?
Python路径拼接规范_跨平台处理说明【指导】
高端网站建设与定制开发一站式解决方案 中企动力
Android自定义listview布局实现上拉加载下拉刷新功能
*请认真填写需求信息,我们会在24小时内与您取得联系。