1. 程式人生 > >WEB 生產環境的 Linux iptables 設定指令碼

WEB 生產環境的 Linux iptables 設定指令碼

用於生產環境的 iptables rule,期間在內網測試把自己擋住在外面一次,接顯示器鍵盤才搞定,謹慎使用,下面指令碼經過無數次測試了,穩定無錯:

開啟了常用的埠 22 80 25 110 8080 3306 等,如果 sshd 埠不是 22,需要自行修改指令碼。

FTP 設定麻煩,也會導致不安全,所以不用設定,一般用 SFTP。

如何檢視自己的 ssh 埠:netstat -anpt|grep sshd

<span style="font-family: Arial, Helvetica, sans-serif;">#!/bin/bash</span>

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X

# 開放 sshd
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 22 -j ACCEPT

# DROP 掉所有的包
iptables -P INPUT ACCEPT 
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

# 本機放行
iptables -t filter -I INPUT 1 -i lo -j ACCEPT
iptables -t filter -I OUTPUT 1 -o lo -j ACCEPT

# DNS
iptables -A INPUT -p udp --sport 53 -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -p udp --sport 53 -j ACCEPT

# NFS
iptables -A INPUT -p tcp --dport=111 -j ACCEPT
iptables -A OUTPUT -p tcp --sport=111 -j ACCEPT
iptables -A INPUT -p tcp --dport=2049 -j ACCEPT
iptables -A OUTPUT -p tcp --sport=2049 -j ACCEPT

#sendmail
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 25 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 25 -j ACCEPT
iptables -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 110 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 110 -j ACCEPT

#sms
iptables -A INPUT -p tcp --dport 8060 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 8060 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 8060 -j ACCEPT

# SAMBA
iptables -A INPUT -p tcp --dport=139 -j ACCEPT
iptables -A OUTPUT -p tcp --sport=139 -j ACCEPT
iptables -A INPUT -p tcp --dport=445 -j ACCEPT
iptables -A OUTPUT -p tcp --sport=445 -j ACCEPT
iptables -A INPUT -p udp --dport=137 -j ACCEPT
iptables -A OUTPUT -p udp --sport=137 -j ACCEPT
iptables -A INPUT -p udp --dport=138 -j ACCEPT
iptables -A OUTPUT -p udp --sport=138 -j ACCEPT

# 21, yum
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 21 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 21 -j ACCEPT


# 80
iptables -A INPUT -p tcp --dport=80 -j ACCEPT
iptables -A OUTPUT -p tcp --sport=80 -j ACCEPT
iptables -A OUTPUT -p tcp --dport=80 -j ACCEPT

# 8080
iptables -A INPUT -p tcp --dport=8080 -j ACCEPT
iptables -A OUTPUT -p tcp --sport=8080 -j ACCEPT
iptables -A OUTPUT -p tcp --dport=8080 -j ACCEPT

# 443
iptables -A INPUT -p tcp --dport=443 -j ACCEPT
iptables -A OUTPUT -p tcp --sport=443 -j ACCEPT
iptables -A OUTPUT -p tcp --dport=443 -j ACCEPT

# 3306,只允許 192.168.0.2 連線
iptables -A INPUT -p tcp --dport=3306 -j ACCEPT
iptables -A OUTPUT -p tcp --sport=3306 -j ACCEPT
iptables -A OUTPUT -p tcp --dport=3306 -j ACCEPT
iptables -A INPUT -p udp --dport=3306 -j ACCEPT
iptables -A OUTPUT -p udp --sport=3306 -j ACCEPT


#rsync
iptables -A INPUT -p tcp -s 114.113.229.234 --sport 1024:65535 --dport 873 -j ACCEPT
iptables -A INPUT -p tcp -s 192.168.0.1/3 --sport 1024:65535 --dport 873 -j ACCEPT
iptables -A OUTPUT -p tcp -d 114.113.229.234 --dport 1024:65535 --sport 873 -j ACCEPT
iptables -A OUTPUT -p tcp -d 192.168.0.1/3 --dport 1024:65535 --sport 873 -j ACCEPT

#3690 svn
iptables -A INPUT -p tcp --dport=3690 -j ACCEPT
iptables -A OUTPUT -p tcp --sport=3690 -j ACCEPT
iptables -A OUTPUT -p tcp --dport=3690 -j ACCEPT

# DHCP
iptables -A INPUT -p udp --sport 67 --dport 68 -j ACCEPT

# ICMP
iptables -A INPUT -p icmp -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT

#allow old connection, deny new connection
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -m state --state NEW,INVALID -j DROP

iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP


/etc/init.d/iptables save
chkconfig iptables --level 2345 on

service iptables start

相關推薦

WEB 生產環境Linux iptables 設定指令碼

用於生產環境的 iptables rule,期間在內網測試把自己擋住在外面一次,接顯示器鍵盤才搞定,謹慎使用,下面指令碼經過無數次測試了,穩定無錯: 開啟了常用的埠 22 80 25 110 8080 3306 等,如果 sshd 埠不是 22,需要自行修改指令碼。 FTP

生產環境Linux常用命令【隨時更新】

1. 查詢檔案中的關鍵字並高亮顯示【查詢當前目錄關鍵字為elasticsearch的日誌檔案】 find ./ -name "my-elasticsearch.log" | xargs grep --color=auto "elasticsearch"   2. 檢視日誌檔案後100

生產環境tomcat引數設定建議

tomcat預設的引數配置是為開發環境定製的,所以記憶體和執行緒的配置都很低,如果直接應用在生產環境,很容易造成效能瓶頸;以下分別從JVM、執行緒池以及連線引數方面給出優化建議: 1. JVM 優化:

生產環境部署】部署專案到生產環境Linux

以前自己寫過一個開源的專案,沒部署到線上環境,藉此機會熟悉下線上部署的流程 1、Linux上安裝資料庫MySQL,建立一個數據庫database 名 Mxonline 2、使用遠端工具 Navicat Premium 登入Linux資料庫上,並把本地已經跑好的資料庫表同步傳輸到&nbs

一個簡單實用的iptables設定指令碼

echo "------------------ iptables firewall seting ------------------"; echo "old settings are:" iptables -L -n echo "seting now..." iptab

搭建符合自己實際需求的web生產環境之java篇

       在介紹如何搭建一個web生產環境的之前,我們先了解一下,如何選擇系統和相關軟體,還有一個web生產環境需要滿足哪些要求,只要把這些內容瞭解清楚,那麼再搭建過程中就會找到你自己的思路,而不是一成不變。 一:系統的選擇        適合做web生產環境的伺服器系統版本有很多

centos6.5實踐(2):搭建Java Web生產環境

準備工作 已安裝centos 6.5系統 jdk下載,筆者下的是rpm版的 Tomcat下載,筆者下的是tar.gz版的 做法 安裝jdk 新建java安裝目錄 mkdir /usr/java sudo mv ‘/home/

Linux環境WEB應用啟動或關閉tomcat指令碼編寫(二)

接下來,就是如何通過指令碼關閉tomcat: 1. 查詢程序pid 使用ps命令查詢到對應的程序,ps -aef | grep java|grep "【關鍵字】"關鍵字為應用安裝路徑,得到結果為展示當前應用pid的一條記錄 2. 將pid作為變數傳遞給下一個命令 使用sed

linux iptables常用命令之配置生產環境iptables及優化

檢視當前配置:iptables -L 防火牆配置檔案: vi /etc/sysconfig/iptables 開放80埠: /*-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j A

Linux Shell腳本生產環境下安全地刪除文件

rm safe 腳本編寫背景 無論是生產環境、測試環境還是開發環境,經常需要使用rm命令刪除&批量一些“重要”目錄下的文件。按照Linux的哲學“小即是美”(一個程序只做一件事)+“用戶清楚自己做什麽”(用戶知道自己想要什麽,也明白自己在做什麽,並且會為自己的行為負責),那麽用戶在執行r

linux 下安裝web開發環境

技術 cnblogs -- 時間日誌 java inux 協議 環境變量 含義 以下使用 linux centos系統 一、JDK的安裝 1、下載jdk-8u111-linux-x64.tar.gz 2、解壓該文件,將解壓後的文件復制到 /usr/local/jdk1.7

第三百九十八節,Django+Xadmin打造上線標準的在線教育平臺—生產環境部署Linux安裝nginx

兩個 騰訊 連接 自己 可執行 註意 help 需要 imap 第三百九十八節,Django+Xadmin打造上線標準的在線教育平臺—生產環境部署Linux安裝nginx Nginx簡介 Nginx是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP

企業生產環境不同業務linux系統分區方案

ali linux UC .html 系統分區 watermark roc htm linux系統 轉自:http://edu.51cto.com/lession/id-11842.html 企業生產環境不同業務linux系統分區方案

CentOS(5.8/6.4)linux生產環境若幹優化實戰

優化CentOS(5.8/6.4)linux生產環境若幹優化實戰CentOS系統安裝之後並不能立即投入生產環境使用,往往需要先經過我們運維人員的優化才行。在此講解幾點關於Linux系統安裝後的基礎優化操作。註意:本次優化都是基於CentOS(5.8/6.4)。關於5.8和6.4兩者優化時的小區別,我會在文中提

生產環境FTP(linux搭建手冊)

FTP linux 搭建手冊 linux配置生產環境FTP anonymous_enable=NOlocal_enable=YESwrite_enable=YESlocal_umask=022anon_upload_enable=YESanon_mkdir_write_enable=YESanon

生產環境優雅的重啟基於Nginx、Tornado的Web服務進程

進程關閉 nod add ocs unix 內部 start logfile stop Nginx是一個高效的Web服務器及代理服務器,Tornado是一個基於epoll的異步Web開發框架,通常使用Nginx做為Web服務器時,都會以FastCGI模式,而我們從開發、調試

Linux環境iptables防火牆基本用法演示

一、簡單新增 兩臺裝置,防火牆關閉,防火牆規則很乾淨,網路通暢。 當啟用防火牆後,iptables -vnL顯示出所有規則,但我們不使用預設規則,清空規則,自己定義 1、iptable -t filter -A INPUT -s 192.168.239.70 -j DROP(末尾新增),設定

20、linux筆記--設定Linux環境變數的方法和區別

致謝:設定Linux環境變數的方法和區別 設定 Linux 環境變數可以通過 export 實現,也可以通過修改幾個檔案來實現,有必要弄清楚這兩種方法以及這幾個檔案的區別。 通過檔案設定 Linux 環境變數 首先是設定全域性環境變數,對所有使用者都會生效: etc/profi

Linux:Ubuntu下部署Web執行環境

Linux:Ubuntu下部署Web執行環境 本次部落格將會從三部分內容詳述Ubuntu系統下Web執行環境的配置: 依次是:FTP伺服器的搭建、MYSQL資料庫的搭建、JDK的安裝等。 參考文章如下: FTP伺服器的搭建 首先闡述一下,我們為什麼要搭建FTP伺服器,因為我們

linux設定web服務tomcat記憶體

  linux下設定web服務tomcat記憶體 一,java.lang.OutOfMemoryError: Java heap space  JVM堆的設定是指java程式執行過程中JVM可以調配使用的記憶體空間的設定.JVM在啟動的時候會自動設定Heap siz