在阿里云CentOS7上搭建ftp服务器
当我再次被各种出站入站规则玩弄,在搜索引擎的帮助走出泥淖后,我决定记下这次经历
1. FTP服务器的部署
1.1 安装vsftpd
笔者使用的是阿里云的ECS服务器(这不是广告,而是提醒:P),操作系统为CentOS7。首先,安装vsftp(very secure FTP daemon),这是一个开源的ftp服务器软件。
# 安装vsftpd
yum install vsftpd
# 设置开机启动
systemctl enable vsftpd
可以用systemctl管理vsftpd进程:
# 启动,终止,重启,查看运行状态
systemctl [start|stop|restart|status] vsftpd
# 设置开机自启动,关闭开机自启动
systemctl [enable|disable] vsftpd
1.2 填写配置文件
1.2.1 配置vsftpd.conf
vim /etc/vsftpd/vsftpd.conf
# 去掉注释并改写
anonymous_enable=YES
anon_upload_enable=NO
anon_mkdir_write_enable=YES
chown_uploads=NO
async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to FTP service.
chroot_local_user=YES
# 添加
use_localtime=YES
listen_port=21
idle_session_timeout=300
guest_enable=YES
guest_username=vsftpd
user_config_dir=/etc/vsftpd/vconf
data_connection_timeout=1
virtual_use_local_privs=YES
pasv_min_port=10000
pasv_max_port=10020
accept_timeout=5
connect_timeout=1
1.2.2 新建用户文件
vim /etc/vsftpd/virtusers
# 以下为实例内容,两行为一组,第一行为用户名,第二行为密码
qdh
qdh
wb
wb
1.2.3 生成用户数据文件
db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.dbchmod 600 /etc/vsftpd/virtusers.db
1.2.4 修改/etc/pam.d/vsftpd文件
vim /etc/pam.d/vsftpd
# 先将auth及account的所有配置行均注释掉,添加以下两行,如果为32位系统,lib64改为libauth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusersaccount sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
1.2.5 新建系统用户
# 新建系统用户vsftpd,家目录为/home/vsftpd
# 登录终端设为/bin/false,使之不能登录系统
useradd vsftpd -d /home/vsftpd -s /bin/false
chown -R vsftpd:vsftpd /home/vsftpd
1.2.6 建立虚拟用户个人配置文件
# 新建文件夹用来存放虚拟用户个人配置文件,并进入该文件夹
mkdir /etc/vsftpd/vconf
cd /etc/vsftpd/vconf# 建立用户根目录
mkdir -p /home/vsftpd/qdh/
mkdir -p /home/vsftpd/wb/vim qdh
# 新建用户qdh的配置文件,内容如下,其他用户类似local_root=/home/vsftpd/qdh/
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
1.3 防火墙设置
1.3.1 CentOS7的防火墙
# 查看防火墙状态
firewall-cmd --state
# 查看端口开放情况
firewall-cmd --query-port=21/tcp
# 开放20号和21号端口
firewall-cmd --zone=public --add-port=20/tcp --permanent
firewall-cmd --zone=public --add-port=21/tcp --permanent
# 开放10060至10090号端口
firewall-cmd --zone=public --add-port=10000-10020/tcp --permanent
# 重新加载防火墙
firewall-cmd --reload
1.3.2 阿里云的安全组规则(老是忘)
在“云服务器ECS->实例->管理->本实例安全组->配置规则”中,选择“添加安全组规则“。在本例中,添加的第一个规则填写如下:
2. 客户端的配置
笔者在Windows10中,尝试用cmd的ftp命令和资源管理器两种方式尝试连接ftp服务器,其间出现了各种问题。进行以下操作时,结束后记得点击“确定”或“应用”之类的按钮以保存更改结果。
2.1 在使用ftp命令时出现“425 Failed to establish connection”
在“控制面板->系统和安全->Windows 防火墙->允许的应用”中,点击更改设置,然后根据所用网络勾选“文件传送程序”。
2.2 在资源管理器中出现“Windows 无法访问此文件夹,请确保输入的文件夹是正确的,并且你有权访问此文件夹”
在“控制面板->程序->启用或关闭Windows功能”中,找到“Internet信息服务”,把里面的“FTP服务器”中的“FTP服务”和“FTP扩展性”都打勾;找到“TFTP客户端”,并打勾。
在“控制面板->网络和Interne->Internet高级选项->高级”中,将“使用被动FTP(防火墙和DSL调制解调器的兼容)”前面的勾取消。
在“控制面板->系统和安全->Windows 防火墙->允许的应用”中,点击更改设置,然后根据所用网络勾选“文件传送程序”。
2.3 上传文件时出现“553 Could not create file”
在CentOS中修改ftp用户文件夹的访问权限即可。
在阿里云CentOS7上搭建ftp服务器相关推荐
- 在阿里云ECS上搭建Skynet服务器与Unity通信
在阿里云ECS上搭建Skynet服务器与Unity通信 创建阿里云ECS实例 Skynet搭建 服务端代码部分 客户端部分(Unity) 创建阿里云ECS实例 这部分的话按照阿里云流程去做就可以了.也 ...
- centos+7虚拟机web服务器,CentOS7上搭建WEB服务器
mysql 安装 直接yum install mysql-server是不可以的 1 wget http://repo.mysql.com/mysql-community-release-el7-5. ...
- 云环境下搭建FTP服务器(不使用21端口)
云环境下搭建FTP服务器(不使用21端口) 背景: 1:服务在某云端环境中 2:业务需要在云端环境中部署FTP服务 3:为了安全考虑,在云:安全组中,关闭20.21端口 步骤: 1:使用新的端口在服务 ...
- 手把手教你在阿里云ECS上搭建惊艳的博客
手把手教你在阿里云ECS上搭建惊艳的博客 相信大多数人都有自己搭建博客网站的想法,本文就手把手一步一步的进行,最终结果类似如下样式: 网站软件的选择 软件选择成熟而免费的WordPress,WordP ...
- Windows Server 2003上搭建FTP服务器(IIS同理)
Windows Server 2003上搭建FTP服务器(IIS同理) FTP File Transfer Protocol(文件传输协议)是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模 ...
- centos7上搭建git服务器
centos7上搭建git服务器 环境 centos7,git 1.8.3,tortisegit 安装git和创建用户 注:$代表用root用户登录 # 安装Git $ yum install git ...
- 阿里云Centos7上安装MySQL教程
阿里云Centos7上安装MySQL教程 1 基本安装过程 1.查看系统是否安装了mysql软件 # rpm -qa|grep -i mysql 2.将已经安装过的软件卸载掉.注意:这样的卸载是不彻底 ...
- 如何查看linux上的ftp服务器配置,ftp服务器配置:如何在Linux上搭建FTP服务器?
Linux搭建FTP服务器的话,直接使用系统自带的vsftpd服务器即可,轻便灵活,容易操作,下面我简单介绍一下安装和使用过程,感兴趣的朋友可以尝试一下ftp服务器配置: 01安装vsftpd首先ft ...
- 工具-在WIN10上搭建Ftp服务器(转)
在windows10上面搭建你的FTP服务器,正在学服务器这门课程,刚好学到搭建Ftp服务器.所以就在自己电脑上也搭建了一个Ftp服务器.我的电脑是win10的,所以本教程也是在win10上面搭建Ft ...
最新文章
- Android 环境搭建的错误解决方案
- “疫”不容辞,数据中心的“逆行之道”
- 《研磨设计模式》chap25 访问者模式Visitor(2)模式应用到场景
- 忍“乳”负重,身材好的女孩子究竟有多不容易?我从科学的角度算出来了……...
- HDU2795 Billboard
- 150W光速秒充!realme真我GT Neo3正式发布 售价1999元起
- ubuntu下点击安装VMware tools,没有压缩包文件
- Javascript脚本之清除浏览器历史数据
- MSSQL 2000 823错误原因分析及数据恢复方案
- 【20210305期AI简报】基于TensorRT完成NanoDet模型部署、Google AI发布TensorFlow 3D
- 白山搜索引擎优化收费_百度搜索引擎优化收费标准
- TableauとSFDCデータ整理
- Q_D以及Q_Q指针理解
- 预防猝死,8个心率监测方案随时监测的身体状况
- SpringCloud(H版alibaba)之基本框架篇
- 禅意茶艺茶道茶文化PPT模板
- 和石侃博士关于“香山”的一小时讨论
- 【STM32学习笔记】(5)—— STM32工程添加源文件和头文件
- 当人工智能变成美妆博主……
- 谷歌浏览器 一律不翻译英语 恢复
热门文章
- [滑模控制器浅述] (5) 基于分层滑模的吊车控制
- html抓取网址某链接,URL 筛选小工具 提取网页中的链接地址
- 血氧仪方案-血氧仪的功能及应用
- [Spark进阶]-- Spark Dataframe操作
- 债券价格和到期收益率的关系_债券价格、到期收益率与票面利率之间的关系是什么?...
- 三种主流RIA技术之争,你该如何选型?
- 统信软件宣布旗下深度社区全新规划 打造我国主导的全球桌面系统根社区
- Android Things 开发入门
- c++ stl栈容器stack用法介绍
- Praat将连续录制的声音文件切成小单位文件