最近需要在一台阿里云的云服务器上搭建FTP服务器,在这篇博文中分享一下我们根据实际需求进行的一些配置。

ftp软件用的是vsftpd。

vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。

vsftpd 的名字代表”very secure FTP daemon”,安全是它的开发者 Chris Evans 考虑的首要问题之一。在这个 FTP 服务器设计开发的最开始的时候,高安全性就是一个目标。

准备工作

安装vsftpd

yum install vsftpd

设置开机启动vsftpd ftp服务

chkconfig vsftpd on

打开vsftpd配置文件

vi /etc/vsftpd/vsftpd.conf

需求及配置

1. 不允许匿名访问

anonymous_enable=NO

2. 使用本地帐户进行FTP用户登录验证

2.1 允许使用本地帐户进行FTP用户登录验证

local_enable=YES

2.2 创建用于FTP登录的本地帐户

增加用户ftpuser,主目录为/home/ftp,禁止登录SSH权限。

useradd -d /home/ftp -g ftp -s /sbin/nologin ftpuser -p password

该命令参考自:CentOS 6.2 ftp 配置

useradd命令参考文档:Linux的useradd

2.3 只允许刚创建的ftpuser登录FTP

vi /etc/vsftpd/vsftpd.conf

userlist_enable=YES
userlist_deny=NO

vi /etc/vsftpd/user_list

注释所有帐户,添加ftpuser

# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers
# for users that are denied.
#root
#bin
#daemon
#adm
#lp
#sync
#shutdown
#halt
#mail
#news
#uucp
#operator
#games
#nobody
ftpuser

配置到这里,就可以远程用FTP客户端登录并上传文件,文件会保存在ftpuser的主目录,也就是/home/ftp。

3. 不允许FTP下载

vi /etc/vsftpd/vsftpd.conf

download_enable=NO

4. 只允许指定的IP才能连接

4.1 安装tcp_wrappers

yum -y install tcp_wrappers

4.2 检查tcp_wrappers是否被设置为YES

vi /etc/vsftpd/vsftpd.conf

tcp_wrappers=YES

4.3 添回允许的IP

vi /etc/hosts.allow

vsftpd:允许的IP地址

4.4 拒绝所有其他的IP

vi /etc/hosts.deny

vsftpd:ALL

参考资料:

最新文章

  1. 【特别推荐】小伙伴们惊呆了!8个超炫的 Web 效果
  2. [转载]Linux 线程实现机制分析
  3. APICloud上有关iOS证书的一些问题
  4. C++为什么不支持某些东西
  5. $.get
  6. asp.net 备份和恢复数据库
  7. Struts2中OGNL
  8. Spring3 MVC 之 Hello Word
  9. Springmvc加载静态文件和开启EL表达式的支持
  10. 《Node.js In Action》笔记之流程控制
  11. 在四川大学的第二个冠军游戏在线编程:Peter的X
  12. ubuntu中文字符集格式转换
  13. Java数据持久层框架 MyBatis之背景知识一
  14. Spark源码编译(未完待续)
  15. Spring,Spring MVC及Spring Boot区别
  16. python学习日记(函数基础)
  17. 使用 Spring 2.5 注释驱动的 IoC 功能
  18. jquery操作checked
  19. Scanner的例子
  20. 单元测试+内存、SD卡、SP读写+XmlPullParser

热门文章

  1. Linux Shell ssh登录脚本
  2. jinkins配置python虚拟环境
  3. opencv 图像各方向旋转
  4. Learning opencv续不足(七)线图像的设计D
  5. DOClever线下部署安装说明文档
  6. 【Apache Kafka】二、Kafka安装及简单示例
  7. JeePlus 工作流版本 sping mvc oa crm erp java html5 源码
  8. Linux - redis持久化RDB与AOF
  9. Django——6 模型基础ORM 数据库连接配置 模型的创建与映射 数据的增删改查
  10. 【Codeforces 63C】Bulls and Cows