`

FTP服务器iptables的配置

 
阅读更多

系统:CentOS6.2
软件:vsftpd, iptables
安装完系统后,默认的iptables的规则只允许状态为RELATED、ESTABILISHED的包和SSHD的数据包进入服务器,当安装好vsftpd后,通常需要在iptables上面放开21端口,完整的iptables配置如下:
iptables   -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
iptables   -A INPUT -p icmp -j ACCEPT 
iptables   -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT 
iptables   -A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
iptables   -A INPUT -i lo -j ACCEPT 
iptables    -A INPUT -j REJECT --reject-with icmp-host-prohibited
在这样的规则下面,客户端能否正常登录到FTP服务器上进行文件的上传和下载呢,测试过程如下:
此例中,FTP服务器IP地址为192.18.2.75,iptables配置如下:



客户端使用Filezilla Client进行连接,效果如下图:


上图中,服务器要求使用被动模式(PASV)连接,从图上可以看出,服务器监听端口44892(175*256+92)等待客户端的连接,但iptables的规则阻止访问该端口,所以连接失败。
将Filezilla配置为主动模式,如下图:

连接服务器:


可以看出连接成功。
因此,在上面的iptables规则下,只能使用主动模式连接。
如何允许使用被动模式呢?
方法一:使用nf_conntrack_ftp模块
插曲:在kernel2.6.19前,这个模块叫ip_conntrack.ko,位于
/lib/modules/`uname  -r`/kernel/net/ipv4/netfilter/ip_conntrack_ftp.ko。之后,这个模块改名为nf_conntrack_ftp.ko,位于
/lib/modules/`uname  -r` /kernel/net/netfilter/nf_conntrack_ftp.ko 
这个模块是Netfilter专门用来处理FTP这个复杂协议的模块,它能够将FTP的数据包标识为RELATED状态,从而允许使用被动模式访问。
使用命令: modprobe   nf_conntrack_ftp   加载该模块,之后客户端就能以被动模式连接至FTP服务器了。




上图所示,使用被动模式,服务器监听端口号为159*256+8=40712,在FTP服务器上查看TCP连接状态,如下图:



的确是使用的40712号端口。

方法二:在vsftp的配置文件中使用如下两个选项强制将被动模式时使用的端口号限定在一个范围,然后在iptables上运行对这个范围内端口的访问,选项如下:
Pasv_min_port=10000
Pasv_max_port=15000

分享到:
评论

相关推荐

    实验 安装和配置FTP服务器和WEB服务器

    首先,我们来探讨FTP服务器的安装和配置。常见的FTP服务器软件有vsftpd、FileZilla Server等。以vsftpd为例,你需要在Linux系统上执行以下步骤: 1. **安装vsftpd**:使用包管理器如`apt-get`(Ubuntu/Debian)或`...

    搭建和配置FTP服务器.zip

    要搭建和配置FTP服务器,你需要遵循以下步骤,并了解相关的知识点。 一、选择FTP服务器软件 在Linux系统中,常用的FTP服务器软件有vsftpd、ProFTPD和PureFTPd等。本示例将基于2019年6月20日的教程,使用vsftpd作为...

    linux下ftp的详细配置

    Linux下的FTP服务器配置主要涉及到如何使用vsftpd(Very Secure FTP Daemon)软件来搭建和管理FTP服务。这个过程包括三个部分:基于匿名用户、基于系统用户以及基于虚拟用户FTP服务器的配置。 首先,我们需要了解...

    Linux的Ftp服务器搭建的个人总结

    总结,Linux上的FTP服务器搭建涉及多个步骤,包括选择和安装服务器软件、配置服务器参数、创建用户以及确保安全。理解并熟练掌握这些步骤,可以有效地管理和维护FTP服务器。在实际应用中,应根据具体需求进行调整,...

    FTP服务器配置

    【FTP服务器配置】 FTP(File Transfer Protocol)是一种用于在互联网上传输文件的协议。配置FTP服务器,使得用户可以通过FTP客户端连接并传输文件,是网络服务中的一个重要环节。本篇文章将详细讲解如何在Linux...

    Linux下安装配置ftp服务器

    在Linux系统中,FTP(File ...至此,你已经在Linux上成功安装并配置了FTP服务器,本地用户现在可以使用FTP客户端连接到服务器并进行文件传输。记得定期更新和审查你的VSFTPD配置,以保持服务器的安全性和最佳性能。

    linux_ftp服务器部分配置

    本教程将基于描述中的“部分配置”分享Linux FTP服务器的设置知识,以帮助理解和实践这一过程。 首先,我们需要安装FTP服务器软件。在大多数Linux发行版中,最常用的FTP服务器是vsftpd(Very Secure FTP Daemon)。...

    LINUX FTP服务器设计

    在项目实施过程中,"源文件"可能包含FTP服务器的配置脚本或源代码,"源程序备份"可能是FTP服务器软件的备份版本,"可执行文件"可能是编译后的FTP服务程序,而"项目文档"则可能详述了服务器的部署和维护指南。...

    虚拟机ftp的配置

    #### 一、虚拟机环境下搭建FTP服务器的重要性 随着技术的发展,虚拟化技术在IT行业中变得越来越普遍。通过在Windows操作系统下利用虚拟机技术来构建Linux系统环境,不仅可以方便地进行开发测试,还可以利用FTP...

    centos FTP服务器的架设和配置

    CentOS FTP服务器的架设和配置是一个涉及多个步骤和配置选项的过程,主要目的是为了提供一个安全、可控的文件传输服务。下面将详细讲解这些步骤和配置。 1. **安装FTP服务器**: 在CentOS中,我们可以使用`yum`包...

    Linux虚拟机创建Ftp服务器文档

    接下来,我们将详细介绍如何在CentOS系统上安装并配置vsftpd作为FTP服务器。 1. **检查vsftpd是否已安装**: - 打开虚拟机的终端,运行命令 `rpm -qa | grep vsftpd`。如果未安装,此命令将不会显示任何结果。 - ...

    linux的FTP服务器

    总的来说,配置FTP服务器涉及多个步骤,包括安装软件、修改配置文件以及管理用户访问权限。理解并正确配置这些设置对于建立一个安全、功能齐全的FTP服务器至关重要。记住,修改系统配置时一定要谨慎,确保备份原始...

    FTP服务的配置与应用.rar

    FTP(File Transfer Protocol)服务是互联网上用于在不同计算机之间传输文件的标准协议。它允许用户从一台计算机(客户端)...在实际工作中,应根据具体场景选择合适的FTP服务器软件,合理配置以满足安全性和性能需求。

    fedora ftp服务器搭建以及文件上传

    Fedora FTP 服务器搭建与文件上传 FTP(File Transfer Protocol,文件传输协议)是一种常用的网络文件传输协议,广泛应用于文件上传、下载...通过本实验,我们可以了解 Linux 下的基本命令和 FTP 服务器的配置和使用。

    Linux下配置FTP服务器

    ### Linux下配置FTP服务器知识点详解 #### 一、概述 FTP (File Transfer Protocol) 是一种用于在网络上进行文件传输的标准协议和服务。在Linux环境下配置FTP服务器是很多系统管理员必须掌握的一项技能。本文档将...

    搭建ftp服务器

    FTP(File Transfer Protocol)是互联网上用于在不同...总的来说,搭建FTP服务器是一个涉及软件安装、配置、用户管理、网络安全等多个方面的过程。理解并掌握这些知识点,将有助于你顺利地建立和维护自己的FTP服务器。

    linux下配置ftp服务器

    Linux下的FTP服务器配置主要涉及到的是vsftpd(Very Secure FTP Daemon)服务的安装与设置,这是一个广泛使用的FTP服务器软件,尤其适用于安全性要求较高的环境。在Linux系统中,配置FTP服务器通常是为了方便用户...

    ftp_server.zip_FTP服务器_ftp服务端_linux ftp_linux服务器_搭建服务器

    本文将详细介绍如何在Linux系统上安装和配置FTP服务器,并探讨相关的核心知识点。 首先,我们需要选择一个FTP服务器软件。常见的Linux FTP服务器软件有vsftpd、ProFTPD和vsftpd等。这里我们将以vsftpd为例,因为它...

    Centos 下搭建FTP上传下载服务器

    配置文件位于/etc/vsftpd/vsftpd.conf,是整个FTP服务器设置的核心。通过编辑该配置文件,我们可以控制多个选项,其中包括: 1. 禁止匿名登录。这是出于安全考虑的重要步骤,防止未经授权的用户访问服务器资源。...

    Linux为FTP服务器添加iptables规则–案例分析

     由于开发提出需求,为他们搭建内部ftp服务器,搭建好后,提交给他们,测试可以正常使用。后来过了一段时间后,有无法登陆了。于是去ftp主机上检查问题,ftp的配置文件没有改动,端口监听也正常。telnet也可以通。...

Global site tag (gtag.js) - Google Analytics