Setup and Configure the vsftpd server in CentOS 7 operation system
##############################################################################
1. close the firewall service
=====THE COMMAND YOU CAN TYPE INTO YOUR CONSOLE======
#systemctl stop firewalld.service //stop the firewall service
#systemctl disable firewalld.service //disable it to luanch when the system starts up
##############################################################################
2. install iptables
=====THE COMMAND YOU CAN TYPE INTO YOUR CONSOLE======
#yum install iptables iptables-services //install iptables
#vim /etc/sysconfig/iptables //edit iptables' configuration file
# Firewall configuration written by system-config-firewall # Manual customization of this file is not recommended. *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -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 -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT
Type <- :wq! -> to save it and leave it out.
=====THE COMMAND YOU CAN TYPE INTO YOUR CONSOLE======
#systemctl restart iptables.service //restart the firewall for taking effect
#systemctl enable iptables.service //configure the iptables service automatically reboot when the system starts up
Notice that: 21 port is the FTP server's port, however, the ports which are needed on the passive mode of the vsftpd are from 10060 port to 10090 port , these ports you can define by yourself, it is up to you.
##############################################################################
3. Close SELINUX
vim /etc/selinux/config
#SELINUX=enforcing #SELINUXTYPE=targeted SELINUX=disabled
:wq! to save and leave it out.
=====THE COMMAND YOU CAN TYPE INTO YOUR CONSOLE======
#setenforce 0 //Enable configuration to take effect immediately
##############################################################################
4. Install vsftpd
=====THE COMMAND YOU CAN TYPE INTO YOUR CONSOLE======
#yum install -y vsftpd //install vsftpd
#yum install -y psmisc net-tools systemd-devel libdb-devel perl-DBI
# systemctl start vsftpd.service
#systemctl enable vsftpd.service
##############################################################################
5. Configure vsftpd server's configuation file
=====THE COMMAND YOU CAN TYPE INTO YOUR CONSOLE======
#cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.backup
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=YES
#xferlog_file=/var/log/xferlog
xferlog_std_format=YES
idle_session_timeout=300
data_connection_timeout=1
#nopriv_user=ftpsecure
async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to blah FTP service.
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd/banned_emails
chroot_local_user=YES
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd/chroot_list
#ls_recurse_enable=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
use_localtime=YES
listen_port=21
guest_enable=YES
guest_username=vsftpd
user_config_dir=/etc/vsftpd/vconf
virtual_use_local_privs=YES
pasv_min_port=10060
pasv_max_port=10090
accept_timeout=5
connect_timeout=1
allow_writeable_chroot=YES
##############################################################################
6. create a virtual user list file
=====THE COMMAND YOU CAN TYPE INTO YOUR CONSOLE======
#touch /etc/vsftpd/virtusers
#vim /etc/vsftpd/virtusers
web1 123456 web2 123456 web3 123456
:wq! to save and leave it out.
##############################################################################
7. generate a virtual user data file
=====THE COMMAND YOU CAN TYPE INTO YOUR CONSOLE======
#db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db
#chmod 600 /etc/vsftpd/virtusers.db
##############################################################################
8. Edit /etc/pam.d/vsftpd file and add some information as below
=====THE COMMAND YOU CAN TYPE INTO YOUR CONSOLE======
#cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.backup
#vim /etc/pam.d/vsftpd
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
Note that: if your system is 32bit system, you can modify lib64 into lib, or you will fail to configure it correct.
##############################################################################
9. Create a system user vsftpd, its home directory is /home/wwwroot, set user login console as /bin/false (in order to disable its login function)
=====THE COMMAND YOU CAN TYPE INTO YOUR CONSOLE======
#useradd vsftpd -m -d /home/wwwroot -s /bin/false
##############################################################################
10. Create the configuration file for the virtual user vsftpd
=====THE COMMAND YOU CAN TYPE INTO YOUR CONSOLE======
#mkdir /etc/vsftpd/vconf
#cd /etc/vsftpd/vconf
#touch web1 web2 web3
#mkdir -p /home/wwwroot/web1/http/
#mkdir -p /home/wwwroot/web2/http/
#mkdir -p /home/wwwroot/web3/http/
#vim web1
local_root=/home/wwwroot/web1/http/ write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES
#vim web2
local_root=/home/wwwroot/web2/http/ write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES
#vim web3
local_root=/home/wwwroot/web3/http/ write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES
##############################################################################
11. Restart vsftpd server
=====THE COMMAND YOU CAN TYPE INTO YOUR CONSOLE======
#systemctl restart vsftpd.service
##############################################################################
Thank you for your reading!
That's all, at the same time, it's my pleasure to share something I know, hope it will be helpful for you.
##############################################################################
Setup and Configure the vsftpd server in CentOS 7 operation system的更多相关文章
- Setup VSFTPD Server with Virtual Users On CentOS, RHEL, Scientific Linux 6.5/6.4/6.3
We have already shown you How to Setup VSFTPD Server on CentOS 6.5/6.4 in our previous article. In t ...
- Setup FTP Server On CentOS, RHEL, Scientific Linux 6.5/6.4/6.3
setsebool allow_ftpd_full_access onsetsebool -P ftp_home_dir on vsftpd (Very Secure File Transport P ...
- setup FTP server on CentOS 7
Setup FTP Server on CentOS 7 Install vsftpd vsftpd (Very Secure File Transport Protocol Daemon) is a ...
- Setup Git Server in CentOS 6.3
0. Environment: Server machine: CentOS 6.3 x86 Client machine: Windows 10 Pro x86_64 1. Install ssh ...
- Installing MySQL Server on CentOS
MySQL is an open-source relational database. For those unfamiliar with these terms, a database is wh ...
- How to: Set up Openswan L2TP VPN Server on CentOS 6
Have you ever wanted to set up your own VPN server? By following the steps below, you can set up you ...
- Install RabbitMQ server in CentOS 7
About RabbitMQ RabbitMQ is an open source message broker software, also sometimes known as message-o ...
- Tigase XMPP Server在CentOS部署和配置
Tigase XMPP Server在CentOS部署与配置 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 以下讲述Tigase XMPP Server ...
- You must configure either the server or JDBC driver (via the serverTimezone configuration property
使用JDBC连接MySql时出现:The server time zone value '�й���ʱ��' is unrecognized or represents more than one ...
随机推荐
- Ant-打增量包
如何打增量包具体用法见如下百度网盘的文档. http://pan.baidu.com/s/1gd5pAp1 1, ant 打源码增量包 build_incremental_src.xml 内容如下: ...
- 关于Visio Studio 2012使用Nuget获取Sqlite驱动包报错:“System.Data.SQLite.EF6”的架构版本与 NuGet 的版本 2.0.30625.9003 不兼容
背景 笔者的VS2012版本比较老旧,是几年以前下载的.平时添加三方包和驱动包都是手动添加.后来了解到有Nuget这个工具,如获至宝.可是在使用过程中却出了不少问题. 最初,笔者尝试使用Nuget添加 ...
- Python基础知识总结
看了一个礼拜Python的书,断断续续的看了一大半.今天刚好没有课,想着也没什么事情干,就把这几天Python总结一下,都是一些基础知识 变量和对象的引用 在python中一切都是对象,不像C,jav ...
- android studio集成ijkplayer
介绍 ijkplayer是一款非常火的开源视频播放器,android和IOS通用.关于怎么编译怎么导入android Studio中自己的项目,其中坑很多,本篇记录下自己的操作记录.ijkplayer ...
- Linux学习——Shell基础
1 shell概述 Shell 是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用shell来启动,挂起,停止甚至编写一些程序. Shell 还是一 ...
- HTML 简述
1.本页超链接 <a href="#t">查看 Chapter 4.</a> <a name="t">Test</a& ...
- 怎样使用自定义标签简化 js、css 引入?
国庆将至,工作兴致全无,来总结点项目里平时不起眼干货. 前端引入 js .css 一般是这样: <script type="text/javascript" src=&quo ...
- Dice (II) (DP)唉,当时没做出来
Dice (II) Time Limit: 3000MS Memory Limit: 32768KB 64bit IO Format: %lld & %llu [Submit] [ ...
- hdu4081(秦始皇的道路系统)
During the Warring States Period of ancient China(476 BC to 221 BC), there were seven kingdoms in Ch ...
- Two Sum IV - Input is a BST
Given a Binary Search Tree and a target number, return true if there exist two elements in the BST s ...