RedHat 9上用iptables做NAT閘道器+遠端使用kiwisyslog記錄日誌(轉)
RedHat 9上用iptables做NAT閘道器+遠端使用kiwisyslog記錄日誌(轉)[@more@]RedHat 9上用iptables做NAT閘道器- -我使用中的配置
一、將下列內容加入/etc/rc.local檔案中:eth0綁內網IP eth1綁外網IP
################
[root@RHNAT01 root]# vi /etc/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
route add -net 0.0.0.0 gw 外網閘道器 netmask 0.0.0.0 dev eth1
route add -net 內網網段A gw 內網閘道器 netmask 255.255.240.0 dev eth2
route add -net 220.114.128.0 gw 211.162.0.129 netmask 255.255.224.0 dev eth2
route add -net 內網網段B gw 內網閘道器 netmask 255.255.255.0 dev eth2
route add -net 內網網段C gw 內網閘道器 netmask 255.255.255.0 dev eth2
route add -net 內網網段D gw 內網閘道器 netmask 255.255.0.0 dev eth2
route add -net 內網網段E gw 內網閘道器 netmask 255.255.0.0 dev eth2
####NAT#####
echo 1048576 > /proc/sys/net/ipv4/netfilter/ip_conntrack_max
sysctl -w net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=1800
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
echo 268435456 >/proc/sys/kernel/shmall
echo 268435456 >/proc/sys/kernel/shmmax
echo "1024 65000" > /proc/sys/net/ipv4/ip_local_port_range
#####
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/modprobe ip_tables
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_nat
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/iptables --flush INPUT
/sbin/iptables --flush FORWARD
/sbin/iptables --flush POSTROUTING --table nat
/sbin/iptables --policy FORWARD DROP
/sbin/iptables --table nat --append POSTROUTING --out-interface eth1 --source 內網網段A/19 --jump MASQUERADE
/sbin/iptables --table nat --append POSTROUTING --out-interface eth1 --source 內網網段B/18 --jump MASQUERADE
/sbin/iptables --table nat --append POSTROUTING --out-interface eth1 --source 內網網段C/24 --jump MASQUERADE
/sbin/iptables --table nat --append POSTROUTING --out-interface eth1 --source 內網網段D/24 --jump MASQUERADE
/sbin/iptables --append FORWARD --in-interface eth1 --match state --state ESTABLISHED,RELATED --jump ACCEPT
/sbin/iptables --append FORWARD --source 內網網段A/19 --jump ACCEPT
/sbin/iptables --append FORWARD --source 內網網段B/18 --jump ACCEPT
/sbin/iptables --append FORWARD --source 內網網段C/24 --jump ACCEPT
/sbin/iptables --append FORWARD --source 內網網段D/24 --jump ACCEPT
/sbin/iptables iptables -I FORWARD -m state --state NEW -j LOG --log-level debug
二、日誌儲存
vi /etc/syslog.conf
在原來不動的基礎上新增
#remote net recevie stepup
kern.=debug @*.*.*.X #儲存本地就用此句 -/var/log/iptables.log
*.* @*.*.*.X
至此完成Iptables Nat的配置和遠端日誌傳送設定
幾個命令
################
service syslog restart
Syslog服務重新載入
iptables -L
這個命令會盡可能地以易讀的形式顯示當前正在使用的規則集。比如,它會盡量用檔案/etc/services裡相應的名字表示埠號,用相應的DNS記錄表示IP地址。
但後者可能會導致一些問題,例如,它想盡力把LAN的IP地址(如192.168.1.1)解析成相應的名字。但192.168.0.0/16這個網段是私有的,也就是說,它只能
用在區域網裡,而不能在Internet裡使用,所以它不會被Internet上的DNS伺服器解析。因此,當解析這個地址時,命令就好像停在那兒了。為了避免這種情況
的發生,我們就要使用選項:
iptables -L -n
如果你想看看每個策略或每條規則、每條鏈的簡單流量統計,可以在上面的命令後再加一個verbose標誌,如下:
iptables -L -n -v
不要忘了,iptables -L命令還可以檢視nat表和mangle表的內容哦(更不要忘了,預設的表是filter),只需要使用-t選項,比如我們只想看nat表的規則,就
用下面的命令:
iptables -L -t nat
在/proc裡,可能還有一些檔案你會感興趣。比如,你可以在連線跟蹤記錄表裡看到當前有哪些連線。這個表包含了當前的所有連線,你還可以透過它瞭解到每個
連線處於什麼狀態。要注意,這個表是不能編輯的,即使可以,也不應該更改它。可以用下面的命令檢視這個表:
cat /proc/net/ip_conntrack | less
此命令會顯示當前所有被跟蹤的連線,但要讀懂那些記錄可是有些難度哦。
修正和清空iptables的命令 iptables -D INPUT 10
iptables -F INPUT
iptables --list檢視過濾表
一、將下列內容加入/etc/rc.local檔案中:eth0綁內網IP eth1綁外網IP
################
[root@RHNAT01 root]# vi /etc/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
route add -net 0.0.0.0 gw 外網閘道器 netmask 0.0.0.0 dev eth1
route add -net 內網網段A gw 內網閘道器 netmask 255.255.240.0 dev eth2
route add -net 220.114.128.0 gw 211.162.0.129 netmask 255.255.224.0 dev eth2
route add -net 內網網段B gw 內網閘道器 netmask 255.255.255.0 dev eth2
route add -net 內網網段C gw 內網閘道器 netmask 255.255.255.0 dev eth2
route add -net 內網網段D gw 內網閘道器 netmask 255.255.0.0 dev eth2
route add -net 內網網段E gw 內網閘道器 netmask 255.255.0.0 dev eth2
####NAT#####
echo 1048576 > /proc/sys/net/ipv4/netfilter/ip_conntrack_max
sysctl -w net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=1800
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
echo 268435456 >/proc/sys/kernel/shmall
echo 268435456 >/proc/sys/kernel/shmmax
echo "1024 65000" > /proc/sys/net/ipv4/ip_local_port_range
#####
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/modprobe ip_tables
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_nat
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/iptables --flush INPUT
/sbin/iptables --flush FORWARD
/sbin/iptables --flush POSTROUTING --table nat
/sbin/iptables --policy FORWARD DROP
/sbin/iptables --table nat --append POSTROUTING --out-interface eth1 --source 內網網段A/19 --jump MASQUERADE
/sbin/iptables --table nat --append POSTROUTING --out-interface eth1 --source 內網網段B/18 --jump MASQUERADE
/sbin/iptables --table nat --append POSTROUTING --out-interface eth1 --source 內網網段C/24 --jump MASQUERADE
/sbin/iptables --table nat --append POSTROUTING --out-interface eth1 --source 內網網段D/24 --jump MASQUERADE
/sbin/iptables --append FORWARD --in-interface eth1 --match state --state ESTABLISHED,RELATED --jump ACCEPT
/sbin/iptables --append FORWARD --source 內網網段A/19 --jump ACCEPT
/sbin/iptables --append FORWARD --source 內網網段B/18 --jump ACCEPT
/sbin/iptables --append FORWARD --source 內網網段C/24 --jump ACCEPT
/sbin/iptables --append FORWARD --source 內網網段D/24 --jump ACCEPT
/sbin/iptables iptables -I FORWARD -m state --state NEW -j LOG --log-level debug
二、日誌儲存
vi /etc/syslog.conf
在原來不動的基礎上新增
#remote net recevie stepup
kern.=debug @*.*.*.X #儲存本地就用此句 -/var/log/iptables.log
*.* @*.*.*.X
至此完成Iptables Nat的配置和遠端日誌傳送設定
幾個命令
################
service syslog restart
Syslog服務重新載入
iptables -L
這個命令會盡可能地以易讀的形式顯示當前正在使用的規則集。比如,它會盡量用檔案/etc/services裡相應的名字表示埠號,用相應的DNS記錄表示IP地址。
但後者可能會導致一些問題,例如,它想盡力把LAN的IP地址(如192.168.1.1)解析成相應的名字。但192.168.0.0/16這個網段是私有的,也就是說,它只能
用在區域網裡,而不能在Internet裡使用,所以它不會被Internet上的DNS伺服器解析。因此,當解析這個地址時,命令就好像停在那兒了。為了避免這種情況
的發生,我們就要使用選項:
iptables -L -n
如果你想看看每個策略或每條規則、每條鏈的簡單流量統計,可以在上面的命令後再加一個verbose標誌,如下:
iptables -L -n -v
不要忘了,iptables -L命令還可以檢視nat表和mangle表的內容哦(更不要忘了,預設的表是filter),只需要使用-t選項,比如我們只想看nat表的規則,就
用下面的命令:
iptables -L -t nat
在/proc裡,可能還有一些檔案你會感興趣。比如,你可以在連線跟蹤記錄表裡看到當前有哪些連線。這個表包含了當前的所有連線,你還可以透過它瞭解到每個
連線處於什麼狀態。要注意,這個表是不能編輯的,即使可以,也不應該更改它。可以用下面的命令檢視這個表:
cat /proc/net/ip_conntrack | less
此命令會顯示當前所有被跟蹤的連線,但要讀懂那些記錄可是有些難度哦。
修正和清空iptables的命令 iptables -D INPUT 10
iptables -F INPUT
iptables --list檢視過濾表
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-959502/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- iptables防火牆如何記錄日誌防火牆
- 工業閘道器應用分享:PLC遠端監控與遠端維護
- 日誌記錄器
- monolog 日誌記錄器解析Mono
- 從Java 9開始JDK已經提供日誌記錄器JavaJDK
- iptables(三)網路地址轉換NAT
- Janusec應用安全閘道器(WAF閘道器)
- python日誌記錄器的配置Python
- 記錄騰訊雲使用日誌
- .NET Core使用Nlog記錄日誌
- 5G工業閘道器的裝置遠端控制應用有哪些?
- LoRa無線閘道器在工業溫溼度遠端監測的應用
- 家庭路由/閘道器 網路配置折騰日記路由
- Python:使用logging模組記錄日誌Python
- ThinkPHP日誌記錄PHP
- 串列埠轉發閘道器實現工業裝置資料採集和遠端控制串列埠
- 遠端同步ERP系統 零遁智慧閘道器使用體驗
- 【工業閘道器應用方案】資料庫機房遠端監控如何實現?資料庫
- 使用NAT閘道器輕鬆為單臺雲伺服器設定多個公網IP伺服器
- NAT閘道器之SNAT進階使用(二)構建ECS級別SNAT出網方式
- springboot使用logback記錄日誌,配置檔案Spring Boot
- Swoft AOP 記錄使用者操作日誌
- Gin 框架 - 使用 logrus 進行日誌記錄框架
- [python] Python日誌記錄庫loguru使用指北Python
- 【Rust】使用日誌記錄利器flexi_loggerRustFlex
- golang常用庫:日誌記錄庫-logrus使用Golang
- 使用Kafka做日誌收集Kafka
- Laravel sql 日誌記錄LaravelSQL
- 利用Spring Boot實現微服務的API閘道器統一日誌Spring Boot微服務API
- SpringCloud GateWay 使用 閘道器路由SpringGCCloudGateway路由
- 【Azure 事件中心】為應用程式閘道器(Application Gateway with WAF) 配置診斷日誌,傳送到事件中心事件APPGateway
- WAP閘道器相關知識【轉】
- Modbus TCP轉Profinet閘道器配置案例TCP
- .Net Core中使用DiagnosticSource進行日誌記錄
- 使用配置檔案方式記錄Python程式日誌Python
- .NetCore使用Docker安裝ElasticSearch、Kibana 記錄日誌NetCoreDockerElasticsearch
- 4G無線數採閘道器在水庫雨情遠端監測中的應用
- Ceph物件閘道器,多區域閘道器物件
- Asciinema - 終端日誌記錄神器,開發者的福音ASCII