安装vsftpd
通用安装和配置
1.下载安装包并安装
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/vsftpd-3.0.2-25.el7.x86_64.rpm
rpm -ivh vsftpd-3.0.2-25.el7.x86_64.rpm
2.创建ftp宿主用户
useradd ftpuser -s /sbin/nologin
echo "96@wB&RjaAql" | passwd --stdin ftpuser
3.备份配置文件
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf_bak`date "+%Y%m%d"`
echo '' > /etc/vsftpd/vsftpd.conf
4.设置登陆标语
echo "dirmessage_enable=YES" >> /etc/vsftpd/vsftpd.conf
echo "ftpd_banner=Welcome to login FTP service." >> /etc/vsftpd/vsftpd.conf
5.禁止匿名用户登陆
echo "anonymous_enable=NO" >> /etc/vsftpd/vsftpd.conf
echo "anon_upload_enable=NO" >> /etc/vsftpd/vsftpd.conf
echo "anon_mkdir_write_enable=NO" >> /etc/vsftpd/vsftpd.conf
echo "anon_other_write_enable=NO" >> /etc/vsftpd/vsftpd.conf
6.启用日志记录
echo "xferlog_enable=YES" >> /etc/vsftpd/vsftpd.conf
echo "xferlog_std_format=YES" >> /etc/vsftpd/vsftpd.conf
echo "xferlog_file=/var/log/vsftpd.log" >> /etc/vsftpd/vsftpd.conf
7.启用异步传输
echo "async_abor_enable=YES" >> /etc/vsftpd/vsftpd.conf
8.启用文本(ASCII)传输模式
echo "ascii_upload_enable=YES" >> /etc/vsftpd/vsftpd.conf
echo "ascii_download_enable=YES" >> /etc/vsftpd/vsftpd.conf
9.启用被动连接模式
echo "connect_from_port_20=NO" >> /etc/vsftpd/vsftpd.conf
echo "pasv_enable=YES" >> /etc/vsftpd/vsftpd.conf
echo "pasv_min_port=55000" >> /etc/vsftpd/vsftpd.conf
echo "pasv_max_port=56000" >> /etc/vsftpd/vsftpd.conf
10.开启上传下载删除等操作权限
echo "write_enable=YES" >> /etc/vsftpd/vsftpd.conf
echo "cmds_allowed=FEAT,REST,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RMD,RNFR,RNTO,RETR,DELE,SIZE,TYPE,USER,ACCT,APPE,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST,STOR" >> /etc/vsftpd/vsftpd.conf
11.设置文件的默认权限(目录为755,文件为644)
echo "local_umask=022" >> /etc/vsftpd/vsftpd.conf
12.启用白名单(使用user_list文件,避免用ftpusers文件)
echo "userlist_enable=YES" >> /etc/vsftpd/vsftpd.conf
echo "userlist_deny=NO" >> /etc/vsftpd/vsftpd.conf
13.启用pam认证
echo "pam_service_name=vsftpd" >> /etc/vsftpd/vsftpd.conf
14.解决pam文件中shell不存在问题
详情请参考:https://blog.csdn.net/woshijipinglong/article/details/92636979
sed -i 's/pam_shells.so/pam_nologin.so/g' /etc/pam.d/vsftpd
15.关闭selinux和防火墙
setenforce 0
sed -i "/SELINUX=enforcing/c\SELINUX=disabled" /etc/selinux/config
systemctl disable firewalld && systemctl stop firewalld && systemctl status firewalld
16.清空白名单
echo '' > /etc/vsftpd/user_list
配置FTP采用本地用户登陆
17.开启本地用户登陆
echo "local_enable=YES" >> /etc/vsftpd/vsftpd.conf
18.锁定用户活动范围为家目录
echo "chroot_local_user=YES" >> /etc/vsftpd/vsftpd.conf
echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf
echo "chroot_list_enable=NO" >> /etc/vsftpd/vsftpd.conf
19.将本地用户添加到白名单中
echo "ftpuser" >> /etc/vsftpd/user_list
20.启动ftp服务
systemctl enable vsftpd && systemctl restart vsftpd &&systemctl status vsftpd
验证
1.安装ftp客户端
yum -y install ftp
2.登陆
ftp
open 127.0.0.1 21
ftpuser
96@wB&RjaAql
put test
get test
delete test
ls
安装vsftpd的更多相关文章
- CentOS 6.4 下安装vsftpd
概述: vsftpd是Linux下比较著名的FTP服务器,搭建FTP服务器当然首选这个. 本文介绍了在CentOS 6.4下安装vsftpd.配置虚拟用户登录FTP的过程. 正文: 一:安装vsftp ...
- Linux下安装vsftpd
一.安装vsftpd及相关依赖包 #vsftpd安装程序 yum install vsftpd #vsftpd虚拟登陆账户必要依赖包 yum install pam* db4* 安装完之后,vsftp ...
- Centos 安装vsftpd 服务器
一:检查有没有安装vsftpd 二:安装vsftpd 三:安装之后重启 四:修改vsftpd配置文件 配置文件路径在/etc/vsftpd目录下 默认是注释掉的,把#号去掉 然后重启vsftpd 五: ...
- CentOS6.X安装vsftpd服务
#-----------------CentOS6.X安装VSFTPD服务 #! /bin/sh #1.关闭selinux setenforce 0 sed -i 's/enforcing/disab ...
- CentOS安装vsftpd
版本:vsftpd-3.0.2-9.el7.x86_64(CentOS是64位的). 1.安装vsftpd yum -y install vsftpd 2.配置vsftpd 修改配置前把原始配置文件备 ...
- 安装 vsftpd
(1)安装vsftpdsudo apt-get install vsftpd (2)配置sudo vi /etc/vsftpd.conf #anonymous_enable=YESlocal_enab ...
- Centos 6.4上面用Shell脚本一键安装vsftpd
Centos 6.4上面用Shell脚本一键安装vsftpd install.sh #!/bin/bash if [ `uname -m` == "x86_64" ];then m ...
- 3.linux安装vsftpd服务
1.首先查看本地是否安装了vsftpd rpm -qa |grep vsftpd 2.安装vsftpd: yum install vsftpd 3.查询当前ftp状态 chkconfig --list ...
- centos6 安装vsftpd
centos6 安装vsftpd vsftpd一般选择yum安装,以下是安装和配置过程 如果是centos6想要安装的话一般是编译安装 1.安装 yum安装 yum install vsftpd 编译 ...
- CentOS下安装vsftpd架设ftp服务器
什么是vsftpd vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序.特点是小巧轻快,安全易用. 首先安装vsftpd这个软件,命令是,yum install vsftpd servi ...
随机推荐
- SpringDatajpa 使用原生的SQL进行分组查询
话不多说,直接上代码 dao nativeQuery = true ---> 执行原生的SQL语法,也就是说这段sql拷贝到数据库中,然后就运行. 我们期望的结果: 取值: 取值结果: 结合实际 ...
- [转]Normal Map中的值, Tangent Space, 求算 Tangent 与 Binormal 与 TBN Matrix
原文出处 https://www.cnblogs.com/lookof/p/3509970.html - Normal Map中的值 - 有没有想过,Normal Map(法线贴图)为什么看上去都 ...
- 【Android-数据库Sqlite】Sqlite数据库 增、删、改、查
1.先创建一个Product类 Product.java 变量如下: int id; String code; String name; int qty; 2.创建一个DBHelper类 DBHelp ...
- JavaScript创建函数的三种方式
㈠函数(function) ⑴函数也是一个对象 ⑵函数中可以封装一些功能(代码),在需要时可以执行这些功能(代码) ⑶函数中可以保存一些代码在需要的时候调用 ⑷使用typeof检查一个函数对象时,会返 ...
- vue cli 3.x 配置使用 sourceMap
项目使用vue cli 3.x搭建,没有了配置文件,如何更方便的查找到对应的scss文件,配置项目支持sourceMap方式? 分二步走: 1.项目根目录(不是src目录,不要搞错了)添加vue.co ...
- Can't load Microsoft.ReportViewer.ProcessingObjectModel.dll
本机的时候是能正常看到report,但deploy到别的机器上却不行,按说从本机拷个dll过去就可以,但怎么也找不到. 原来要在cmd那里输入C:\WINDOWS\assembly\GAC_MSIL ...
- Linq to XML - C#生成XML
1.System.Xml.XmlDocument XML file转成字符串 string path3 = @"C:\Users\test.xml"; XmlDocument ...
- const 与指针 的用法
请找出下面程序中有哪些错误: 1 2 3 4 5 6 7 8 9 10 11 12 13 int main() { int i=10; int j=1; const int *p1; ...
- 11.17 模拟赛&&day-2
/* 后天就要复赛了啊啊啊啊啊. 可能是因为我是一个比较念旧的人吧. 讲真 还真是有点不舍. 转眼间一年的时间就过去了. 2015.12-2016.11. OI的一年. NOIP gryz RP++. ...
- 北京清北 综合强化班 Day1
a [问题描述]你是能看到第一题的 friends呢. —— hja何大爷对字符串十分有 ...