Centos7 ftp服务器搭建
1.使用yum安装ftp服务端:
yum install -y vsftpd
2.使用yum安装ftp客户端:
yum install -y ftp.x86_64
3.开启ftp服务设置开机启动并查看状态:
systemctl start vsftpd systemctl enable vsftpd systemctl status vsftpd
4.配置配置文件:
4.1备份配置文件,防止意外:
cp /etc/vsftpd/vsftpd.conf/etc/vsftpd/vsftpd.conf.bak
4.2 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 #是否锁定所有用户不能离开自己的主目录。YES时,锁定;NO时,所有都不锁定 chroot_local_user=YES #开启例外用户列表,本列表含义跟chroot_local_user配置有关联。当锁定时,本列表中的用户不锁定;当不锁定时,本列表中的用户锁定 chroot_list_enable=YES #设置例外用户列表文件 chroot_list_file=/etc/vsftpd/chroot_list listen=NO #PAM认证文件名。PAM将根据/etc/pam.d/vsftpd进行认证 pam_service_name=vsftpd #为YES时,开启用户验证;为NO时,不开启 userlist_enable=YES #为NO时,允许user_list中用户登陆;为YES时,禁止user_list中用户登陆 userlist_deny=YES #设定启用虚拟用户功能 guest_enable=YES #指定虚拟用户的宿主用户,一般新建一个nologin类型的用户作为虚拟用户的宿主用户 guest_username=vsftpd virtual_use_local_privs=YES #设定虚拟用户个人配置文件存放路径 user_config_dir=/etc/vsftpd/vuser_conf
5.建立虚拟用户列表
#第一行用户名,第二行密码,不能使用root为用户名 vim /etc/vsftpd/virtusers 添加内容 test1 123456 test2 123456
6.生成db文件
db_load -T -t hash-f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db 注释:db_load如果没有自行安装。 #修改文件权限 chmod600/etc/vsftpd/virtusers.db (权限r,w即可)
7.修改/etc/pam.d/vsftpd文件
#备份文件,防止意外 cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak #vim /etc/pam.d/vsftpd,注释文件内容,添加下面两行: auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers 注释:根据自己的机器类型选择lib64还是lib。
8.新建系统nologin用户vsftpd,新建虚拟用户根目录,配置虚拟用户个人配置
8.1新建系统用户
#先在家目录下建立vsftpd文件夹,这也是我们所有虚拟用户访问的空间 mkdir -p /home/vsftpd #用户登录终端设为/sbin/nologin(即:使之不能登录系统) useradd vsftpd -d/home/vsftpd -s /sbin/nologin
8.2新建虚拟用户根目录,其他用户类似
mkdir -p /home/vsftpd/test1/ chown -R vsftpd:vsftpd /home/vsftpd/test1
8.3配置虚拟用户个人配置
vim /etc/vsftpd/vuser_conf/test1,文件名跟虚拟用户名相同: #设置虚拟用户的主目录 local_root=/home/vsftpd/test1 #需要设置本项,不然登陆时会登陆不了,权限问题
allow_writeable_chroot=YES #下面这些项根据需要添加 write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
9.关闭防火墙。当然也可以设置对服务开放,为了方便直接关闭。
systemctl stop firewalld systemctl disable firewalld systemctl status firewalld
10.关闭SELinux。当然也可以根据需要开放,为了方便直接挂壁。
修改/etc/selinux/config文件中的SELINUX=disabled ,然后重启。
完毕!
本人安装过程遇到的问题:
1.配置完成后,启动时发生错误:
==== AUTHENTICATION COMPLETE ===
Job for vsftpd.service failed because the control process exited with error code. See "systemctl status vsftpd.service" and "journalctl -xe" for details.
原因:配置文件中,配置项后多了东西。每个配置项后面什么都不能有,包括空格,否则会出现上述问题。
#设定启用虚拟用户功能
guest_enable=YES #
Centos7 ftp服务器搭建的更多相关文章
- centos7 配置ftp服务器搭建(匿名访问,以及本地登录)
大家好,今天来给大家分享一个基于centos 7的ftp服务器搭建 实现功能:匿名访问,本地登录 查看系统版本: [root@localhost ~]# cat /etc/redhat-release ...
- 记一次ftp服务器搭建走过的坑
记一次ftp服务器搭建走过的坑 1.安装 ①下载 wget https://security.appspot.com/downloads/vsftpd-3.0.3.tar.gz #要FQ ②解压 ta ...
- FTP服务器搭建及操作(一)
FTP服务器搭建及操作(一) FTP搭建 PHP FTP操作 搭建方法参照(windows):http://www.cnblogs.com/lidan/archive/2012/06/04/25351 ...
- 基于腾讯Centos7云服务器搭建SVN版本控制库
基于腾讯Centos7云服务器搭建SVN版本控制库 最近在和小伙伴组队参加一个关于人工智能的比赛,无奈不知道怎么处理好每个人的代码托管问题,于是找到了晚上免费svn托管服务器的服务,但是所给的免费空间 ...
- 《Linux下FTP服务器搭建及FTP使用》
.LOGAndy:mxtd114 <Linux下FTP服务器搭建> 0.root登录 1.安装ftp # yum -y install ftp 2.安装vsftpd # yum -y in ...
- ftp服务器搭建及简单操作
ftp服务器搭建及简单操作 1. 添加一个新用户,使用名useradd testftp,然后使用passwd testftp对新添加的用户设置密码(这里设置为“1234567”). 2. 安装ftp服 ...
- Linux CentOS 6.5 下 vsftpd ftp服务器搭建
Linux CentOS 6.5 下 vsftpd ftp服务器搭建 by:授客 QQ:1033553122 操作系统环境:CentOS 6.5-x86_64 下载地址:http://www.ce ...
- FTP-Linux中ftp服务器搭建
一.FTP工作原理 (1)FTP使用端口 [root@localhost ~]# cat /etc/services | grep ftp ftp-data 20/tcp #数据链路:端口20 ftp ...
- (转)【Java FTP及FTP服务器搭建】
转至 http://blog.csdn.net/studyvcmfc/article/details/8147052 目录(?)[+] -[Java FTP及FTP服务器搭建] 一:本文采用apach ...
随机推荐
- Label下FormattedText中的Span无法使用Binding的解决方法
在Xamarin.Forms中,Xaml的模板功能并没有原生WPF丰富,比如Label中虽然有FormattedText可以添加Span来丰富Label的功能,但是下面的Span中的Text并没有绑定 ...
- ZKEACMS 自定义表单的使用
ZKEACMS Core 2.2 已经发布了,其中主要添加了自定义表单的功能.使用自定义表单的功能,您可以在几分钟内就创建一个表单,并用它来收集一些信息.导出收集的信息,就可以做一些统计分析. 创建表 ...
- Mysql 学习笔记09
---Mysql 的主从复制 replication 1 主从复制原理 至少有2台服务器,一台主服务器,一台从服务器,主服务器的所有改动,如 insert update delete 操作,都会同步 ...
- 洛谷P3643 [APIO2016]划艇(组合数学)
题面 传送门 题解 首先区间个数很少,我们考虑把所有区间离散化(这里要把所有的右端点变为\(B_i+1\)代表的开区间) 设\(f_{i,j}\)表示考虑到第\(i\)个学校且第\(i\)个学校必选, ...
- Angularjs2 学习笔记
angularjs2 学习笔记(一) 开发环境搭建 开发环境,vs2013 update 5,win7 x64,目前最新angular2版本为beta 17 第一步:安装node.js 安装nod ...
- 理解webpack中的publicPath
outPut中的publicPath 默认值: 空字符串. publicPath是非常有必要配置的,他是项目中引入静态资源(js.css)时的基础路径. 例如: outPut.publicPath = ...
- esp32编程第一例 hollow word
#include<stdio.h>#include"freertos/FreeRtos.h"#include"freertos/task.h"#in ...
- 23.each和map函数
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- TCP/IP——何时用UDP代替TCP
UDP和TCP UDP和TCP都有其自身的特点,不同的应用场景和要求需要使用不同的协议来传输,那么何时我们可以用UDP代替TCP呢. UDP 的优点 UDP支持广播和多播,事实上如果应用程序使用广播或 ...
- HTML中title前面小图标和网站收藏现实的图标
网站上的logo实际上是一个“favicon.ico”图片.实现步骤:第一步:制作favicon.ico,大小为16*16毫米:第二步:将“favicon.ico”放到项目的根路径下. 第三步:在所有 ...