CentOS7iptables详解

一、CentOS7iptables设置防火墙

CentOS7默认使用的是firewalld作为防火墙,而iptables是传统的Linux防火墙。如果需要使用iptables,需要先停止firewalld。

systemctl stop firewalld
systemctl disable firewalld

接着安装iptables:

yum install iptables-services -y

安装完成后,就可以使用iptables来配置防火墙了。

二、CentOS7iptables设置指定IP访问

如果需要限制某个IP地址访问服务器,可以在iptables中添加相应的规则。

iptables -A INPUT -s 192.168.1.100 -j DROP

该命令的意思是,限制IP地址为192.168.1.100的主机访问服务器。

三、CentOS7iptables配置

iptables默认的配置文件是/etc/sysconfig/iptables,可以直接编辑该文件来配置防火墙规则。

以下是一个简单的iptables配置文件示例,允许SSH连接(端口22)、HTTP连接(端口80)和HTTPS连接(端口443):

*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -i lo -j ACCEPT
COMMIT

以上配置允许SSH、HTTP和HTTPS连接,同时允许本地回环(lo)接口连接。其余的连接都被拒绝。

四、CentOS7iptables默认配置

iptables默认规则是所有连接都是允许的,但是不允许IP转发。

如果需要更改默认规则,可以在/etc/sysconfig/iptables中修改默认策略:

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [2:216]
COMMIT

以上是默认规则,所有连接都允许通过。

五、CentOS7iptables保存配置

当iptables配置被更新后,需要保存配置,以便重启后保持生效。

service iptables save

该命令会把当前的iptables配置保存在/etc/sysconfig/iptables中。

六、CentOS7iptables无法设置端口

如果在iptables中设置某个端口,但是该端口仍然不能被访问,需要检查SELinux是否开启。

可以通过以下命令查看SELinux的状态:

sestatus

如果SELinux状态为enforcing,需要设置SELinux策略来允许该端口被访问。

七、CentOS7iptables配置与使用

以下是一个完整的iptables配置和使用示例:

  1. 编辑/etc/sysconfig/iptables文件:
  2. vim /etc/sysconfig/iptables
    

    添加以下规则:

    *filter
    :INPUT DROP [0:0]
    :FORWARD DROP [0:0]
    :OUTPUT ACCEPT [0:0]
    -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
    -A INPUT -i lo -j ACCEPT
    COMMIT
    
  3. 重启iptables服务:
  4. service iptables restart
    
  5. 测试连接:
  6. 测试SSH连接(端口22):

    ssh user@ipaddress
    

    测试HTTP连接(端口80):

    curl http://ipaddress
    

    测试HTTPS连接(端口443):

    curl https://ipaddress
    

八、iptables详解

iptables是Linux下的一个工具,用于管理和配置Linux内核的网络策略,包括端口转发、网络地址转换等功能。

iptables配置文件中的每个规则都有如下结构:

-A chain_name -m match_criteria1 --match_arg1 -j target_name

其中,chain_name是规则所属的链,match_criteria1是匹配规则,match_arg1是匹配参数,target_name是目标链。

常用的match_criteria有:

  • -p:指定协议
  • -s:指定源IP地址
  • -d:指定目标IP地址
  • –sport:指定源端口
  • –dport:指定目标端口

常用的target_name有:

  • ACCEPT:允许连接通过
  • DROP:拒绝连接通过
  • REJECT:拒绝连接通过,并发送响应报文
  • LOG:记录连接信息

九、Ubuntu安装iptables

Ubuntu默认也使用的是ufw作为防火墙,如果需要使用iptables,需要先停止ufw。

systemctl stop ufw
systemctl disable ufw

接着安装iptables:

apt-get install iptables -y

安装完成后,就可以使用iptables来配置防火墙了。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/252073.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝的头像小蓝
上一篇 2024-12-13 17:34
下一篇 2024-12-13 17:34

相关推荐

  • 神经网络代码详解

    神经网络作为一种人工智能技术,被广泛应用于语音识别、图像识别、自然语言处理等领域。而神经网络的模型编写,离不开代码。本文将从多个方面详细阐述神经网络模型编写的代码技术。 一、神经网…

    编程 2025-04-25
  • Linux sync详解

    一、sync概述 sync是Linux中一个非常重要的命令,它可以将文件系统缓存中的内容,强制写入磁盘中。在执行sync之前,所有的文件系统更新将不会立即写入磁盘,而是先缓存在内存…

    编程 2025-04-25
  • 详解eclipse设置

    一、安装与基础设置 1、下载eclipse并进行安装。 2、打开eclipse,选择对应的工作空间路径。 File -> Switch Workspace -> [选择…

    编程 2025-04-25
  • Python输入输出详解

    一、文件读写 Python中文件的读写操作是必不可少的基本技能之一。读写文件分别使用open()函数中的’r’和’w’参数,读取文件…

    编程 2025-04-25
  • Python安装OS库详解

    一、OS简介 OS库是Python标准库的一部分,它提供了跨平台的操作系统功能,使得Python可以进行文件操作、进程管理、环境变量读取等系统级操作。 OS库中包含了大量的文件和目…

    编程 2025-04-25
  • C语言贪吃蛇详解

    一、数据结构和算法 C语言贪吃蛇主要运用了以下数据结构和算法: 1. 链表 typedef struct body { int x; int y; struct body *nex…

    编程 2025-04-25
  • Linux修改文件名命令详解

    在Linux系统中,修改文件名是一个很常见的操作。Linux提供了多种方式来修改文件名,这篇文章将介绍Linux修改文件名的详细操作。 一、mv命令 mv命令是Linux下的常用命…

    编程 2025-04-25
  • Java BigDecimal 精度详解

    一、基础概念 Java BigDecimal 是一个用于高精度计算的类。普通的 double 或 float 类型只能精确表示有限的数字,而对于需要高精度计算的场景,BigDeci…

    编程 2025-04-25
  • git config user.name的详解

    一、为什么要使用git config user.name? git是一个非常流行的分布式版本控制系统,很多程序员都会用到它。在使用git commit提交代码时,需要记录commi…

    编程 2025-04-25
  • nginx与apache应用开发详解

    一、概述 nginx和apache都是常见的web服务器。nginx是一个高性能的反向代理web服务器,将负载均衡和缓存集成在了一起,可以动静分离。apache是一个可扩展的web…

    编程 2025-04-25

发表回复

登录后才能评论