天天看点

Linux中快速架设FTP服务和在 iptables放行FTP

环境:

oracle linux 6.4

1、安装vsftpd

yum install vsftpd

2、快速配置

vim /etc/vsftpd/vsftpd.conf

如果要用匿名上传下载:

anonymous_enable=YES

anon_upload_enable=YES

如果想启用本地用户上传下载:

local_enable=YES

userlist_enable=YES

userlist_deny=NO

#为no时只有/etc/vsftpd/user_list文件中的用户能登录,yes时里面的用户不能登录

还需要修改:

vim /etc/vsftpd/ftpusers

把需要登录的本地用户名注释掉或者删除掉,比如root

因为在/etc/pam.d/vsftpd中有做限制,/etc/vsftpd/ftpusers里面的用户都不能登录

3、iptables放行ftp

如果客户端用主动模式连接:

tcp, 20(20号端口用于数据传输),21(21号端口用于控制连接)

-A INPUT -p tcp -m tcp –dport 21 -j ACCEPT

-A INPUT -p tcp -m tcp –dport 20 -j ACCEPT

如果客户端用被动模式连接:

tcp, 21(用于控制连接) >1023(端口号大于1023的随机端口用于数据传输)

有两种方法:

一是加载模块法

vim /etc/sysconfig/iptables-config

#IPTABLES_MODULES=”ip_conntrack_ftp”

#IPTABLES_MODULES=”ip_nat_ftp”

然后只要开放21端口即可

一种是设定数据传输时的端口范围

vi /etc/vsftpd/vsfptd.conf

pasv_min_port=30001

pasv_max_port=31000

iptables -A INPUT -p tcp –dport 30001:31000 -j ACCEPT

这个只是快速架设的方法,比较简单。生产中如果要用ftp,最好用虚拟用户,权限好分配,特别是网站程序的上传。

继续阅读