Iptables – 介紹設定簡單的 iptables 防火牆

2023-10-24 05:18

本文主要是介绍Iptables – 介紹設定簡單的 iptables 防火牆,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

雖然大家都說 Linux 不會中毒

但隨著使用人數增加

慢慢的 Linux 中毒(基本上都是被入侵)的新聞都出來了

所以安全性也是要顧一下

底下就紀錄一些我學防火牆的筆記

基本上 iptable 有三個表

分別是 INPUT、FORWARD、OUTPUT

就字面上來看就是

INPUT:從外面連到主機

FORWARD:轉送主機封包用

OUTPUT:從主機連到外面

而這三個規則表都會有個預設值(policy)

要麻就是通過(ACCEPT)

要不然就是丟棄(DROP)

下 sudo iptables -L

可以看到目前主機的 iptables 的設定是啥

目前都沒有設定任何一條規則

預設都是允許(ACCEPT)連線封包進入

接下來就是要開始設定 iptables 的規則了

如果你主機還沒裝 apache 的請先參考下面文章安裝一下

[ubuntu] LAMP 基本架站

這樣才可以測試咩!!

首先 iptables 有個基本格式

iptables [-t 表格] [-A / -I 規則鏈] [-I / -O 網路介面] [-s 來源IP] [-d 目的IP] [-p 通訊協定] [--sport / --dport Port] -j [ACCEPT|DROP]

很長、很煩、很難記

不過其實有些不一定要打

就是看個人需要

-t 表格:預設就是filter,可以不管,假設你有用到DHCP才會指定成nat。

-A / -I 規則鏈:-A 是新增,-I 是插入。新增的話會加到最後面,插入的話會加到最前面。

-I / -O 網路介面:指定要用那張網卡。

-s 來源IP:可以指定單一IP也可以是一網段。

-d 目的IP:跟來源IP一樣

-p 通訊協定:指定封包格式,有tcp、udp、icmp還有all,表示所有通訊協定

--sport / --dport Port:要監控的port

-j :進行動作。

理論講完

來點實作吧!

雖然之前那張圖片顯示我的防火牆都還沒設定

不過還是先清空一下

sudo iptables -F

把外面要連到主機的連線

預設都是丟棄封包

sudo iptables -P INPUT DROP

這時候看一下規則表

發現有不一樣的地方囉

這時候用另外一台電腦連過來看一下網頁

果然~

連不上是正常了

不過這時候你也應該會發現到

你從主機自己要開網頁也都沒辦法開了

因為網路是雙向溝通的

你把流進來的封包給丟棄了

所以你自己當然也沒辦法開網頁

這時候加入底下這規則

讓主機主動建立的連線可以進來

sudo iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

現在應該可以正常開啟網頁了

可是你在看一下規則表

有多了一行東東唷!!

OK~

那現在從外面進來的都全檔了

裡面出去的也都正常了

所以現在要開一些洞給外面的人進來囉

不然大家要怎樣看你的網頁咧

輸入

sudo iptables -A INPUT -i ppp0 -p tcp --dport 80 -j ACCEPT

就可以讓外面看的主機的網頁囉

不過其中要注意的是紅色的部份

假設你在學校有配固I

不用透過撥號連線的話

正常是應該設定 eth0 或者是其他網路介面卡

但是我是在家裡透過 hinet 上網

所以我才設定成 ppp0

那如果要遠端ssh到主機呢?

以目前的規則來說

現在是把所有進來的連線都擋掉

但是主機建立起來的連線就可以進來

外面要看80 port的網頁也可以進來

其餘的都不行

SSH看你設定的是哪個PORT

一般預設都是22

那你要怎加咧!?

參考一下上面的指令吧~

我要把答案字體顏色用白色

反白一下就看到囉!!

答案:sudo iptables -A INPUT -i ppp0 -p tcp –dport 22 -j ACCEPT

到這邊簡易的防火牆教學就完成了

基本上防火牆是門學問

更深奧的可能要多翻點書才會了

參考資料:

圖書館借來的書

[ubuntu]設定簡易防火牆與NAT(iptables)

http://wiki.centos.org/zh-tw/HowTos/Network/IPTables




转载地址:http://blog.jsdan.com/997

这篇关于Iptables – 介紹設定簡單的 iptables 防火牆的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/272943

相关文章

iptables持久化命令:netfilter-persistent save

在Linux上,使用netfilter-persistent命令可以保存iptables防火墙规则,确保它们在系统重启后仍然有效。以下是如何使用netfilter-persistent来保存iptables规则的步骤: 打开终端:首先,你需要打开Linux系统的终端。保存规则:使用netfilter-persistent save命令可以保存当前的iptables规则。这个命令会调用所有插件,将

Netfilter学习之NAT类型动态配置(六)全锥型NAT用户空间iptables命令行实现

本文主要实现全锥型NAT的用户空间iptables命令行扩展的实现,实现思路见上文,具体可以模仿MASQUERADE的源码进行改写。 1.关键部分实现代码   由于fullcone类型并不需要输入参数,因此parse可以为空,print和save也很简单,只需要help和结构注册两部分保证正确即可。   help如下: static void FULLCONE_help(void){

iptables四表五链

netfilter/iptables netfilter是Linux内核中的一个框架,工作在网络层,用于处理ip数据包,iptables 则是一个命令行工具,通过与netfilter框架交互,实现对数据包的过滤和转发等操作 常见的UFW防火墙、firewalld防火墙都是基于iptables的,它们提供了更简单的管理iptables的rules的命令 Tables 表 filter 过滤

Linux运维--iptables防火墙命令以及端口号等详解(全)

Linux之iptable防火墙命令以及端口号等详解(全) 在Linux系统中,你可以使用firewalld和iptables来管理和设置防火墙规则。Firewalld是一个动态管理防火墙的工具,而iptables是一个更底层的工具,可以直接配置Linux内核的防火墙规则。 在RHEL 6.9及更早版本中,使用的是iptables作为防火墙管理工具,而在RHEL 7及更新版本中则使用Fire

iptables官方手册整理

1. 简介 2. 首先,什么是包过滤? 3. 快速入门指南 4. 数据包过滤流程 5. 具体如何使用 Iptables 命令实现过滤功能 6. 地址转换(NAT) 7. 排除建议 1. 简介   ———————————————————————————————————————————————— 读者们,大家好:   在这里我们假设你已经有一定的 IP 地址、网络地址、子网掩码、路由、DNS 基

iptables四个表五条链

iptables四个表五条链     其实关于iptables的使用网上的资料和教程也比较多,主要是要理解其中的路由前和路由后每个表和链所处的位置和作用,明白了也就简单了,以下是我转载的觉得写的比较详细的一篇博客,有时间我将写一篇关于这些表和链的实质性的配置例子。 一、netfilter和iptables说明:     1、   netfilter/ip

linux防火墙iptables详细教程

2.1 框架图 -->PREROUTING-->[ROUTE]-->FORWARD-->POSTROUTING-->  mangle     |     mangle     ^ mangle    nat       | & 2.1 框架图  -->PREROUTING-->[ROUTE]-->FORWARD-->POSTROUTING-->   mangle

QT開篇——一個簡單的文本查看器

打算趁着假期這幾天用QT寫一個簡單的計算器。所以便開始動手學習QT。所以這篇文章是我邊摸索邊寫的。其中肯定會有不對的地方。所以如果有哪位看我的博客的話,歡迎之出來錯誤。大家共同進步。 QT是一套跨平臺的應用程序開發框架,貌似遊戲爐石傳說就是用這個做出來的。 其實它和微軟年久失修的MFC都是MVC軟件設計模式的一種實現。至於MVC軟件設計模式,作爲一個剛入門的程序員我也說不清,我也說不了。大概意

CentOS 7告iptables防火墙提示Unit iptables.service failed to load

使用CentOS 7时发现使用iptables防火墙时提示错误Unit iptables.service failed to load,意思是防火墙运行启动失败了,那么要如何处理呢。 一直用CentOS 6 习惯了,一下没适应过来。防火墙配置后执行service iptables save 出现”Failed to restart iptables.service: Unit iptables.

centos7.5防火墙(iptables和firewall)的相关操作命令

iptables防火墙 1、基本操作 #查看防火墙状态 # ​service iptables status   # 停止防火墙 # service iptables stop  # 启动防火墙 # service iptables start   # 重启防火墙 # service iptables restart   # 永久关闭防火墙 # chkconfig iptab