找回密码
 立即注册
搜索
查看: 240|回复: 0

Centos7 配置iptables NAT端口转发

[复制链接]

985

主题

92

回帖

5万

积分

管理员

积分
53561
发表于 2023-12-1 16:35:19 | 显示全部楼层 |阅读模式
打开端口转发的功能
! ?  L9 Q9 d6 q. o- Y
" C7 e6 X6 H8 U- G6 z0 ~# u1,首先开启IP转发功能,默认是关闭的。
! a% x0 ~( K3 L- l, m" @) \: E
0 U! r1 D3 ?, O) N9 R9 [  `2 s临时修改:) O6 s0 I- I0 A' i  B

! i- v% J7 \4 [) \1! ], F6 ~% ^# ]3 G. q! q0 j: f
[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/ip_forward
7 v5 B2 c' g+ m* b修改过后就马上生效,但如果系统重启后则又恢复为默认值0。# R6 u- i% V4 H! L8 `

, l/ e) M% X$ T% J- ?. e/ p2 D永久修改:1 ~' ^  c5 a7 t' ?1 n; s6 @

$ f- g! D) `6 ?1 P' ~: m1
" p' B3 G9 h. K' t3 g; O24 p0 r& i+ @! D* Y" d# S/ Z1 Q9 @
3/ X1 v. N8 A, G3 |5 f7 c3 n
4
) X  W' M/ x- B+ W5
! b8 b( l$ D- z& R" I" l7 Lvi /etc/sysctl.conf) U  J7 D! h1 H9 P$ f, y$ Y" t
: W$ C- _7 l' j& D: \
# 找到下面的值并将0改成1,如果没有该配置,直接添加
- N6 e$ D1 m! b* z - _% Q. b! E* X8 a' u
net.ipv4.ip_forward = 1! O2 r0 j# J4 T* ^- w5 E# C. ]( I
# sysctl -p(使之立即生效)2 [0 |" l- B# w: g+ f: R8 T# l4 a
( b1 K3 }4 |* m
默认值0是禁止ip转发,修改为1即开启ip转发功能。
! f. M% W, Y2 I/ g8 ^3 g( K/ e9 z* |! [! S

& B( m0 G. U( j: b7 W5 w1 m: P& \3 e6 |7 {& `+ V2 j
端口转发; y  W% x* K3 b/ E+ }$ i( `+ d( s
2 `* ]9 l( l/ C% S- D
假设用户访问本机(10.1.1.5)的3306端口时我想让它转发到10.1.1.1:33067 {' n, }+ s1 Z* K, s' j9 r

5 Q5 X3 o4 D$ l+ A. ^19 E1 A3 l0 [- r, E
2
* D% w8 d6 D% g% \0 U5 }1 `8 y7 e3
5 A$ K4 b+ S& Z" ]1 {9 `0 `0 F& {4
- i9 [7 t( I" n- T/ U* j5
8 P3 W: d1 J4 p[root@mongo iptables]# cat iptables-open.sh
; @5 Y5 i+ w+ }; G* I5 i' h#!/bin/bash
( T5 A' a, x7 A9 g & L6 N' A7 U9 P. |. E8 B
iptables -t nat -A PREROUTING -p tcp --dport 3306 -j DNAT --to 10.1.1.1:3306
8 l1 M% B& f4 A  Ziptables -t nat -A POSTROUTING -p tcp -d 10.1.1.1 --dport 3306 -j MASQUERADE
5 t1 h" f2 ]# g. W9 m$ H* U  
9 M& b# z; ^$ r% R- u5 w
& O4 W( [. ]% |/ q2 w1 N# R查看规则  g* D' R4 X2 {& j4 U

& B- D+ Y# o( n查看当前iptables的nat表内的规则
& z* }% |# ]7 m, c, T8 M0 K1 o- n2 w" u( c
1% z& Z! V* X1 N( a2 _9 T
iptables -t nat -nL --line
0 x6 m; w) X# y1 X2 {" t9 Y命令解释:
/ T6 t. g; f- V$ ?& d2 ?5 T0 A9 M. i( Y! g$ K/ z: j
1
/ w/ H' y2 J! S2
6 F5 [, ^% |7 R3* C/ x' C6 b8 p
4
+ H! g" P& ^8 F' M56 ~& M+ L. R' Q, ]
-t nat指定看nat表,不用-t默认为filter表1 A- ?) u# Y6 j- Q; g
-L 列出表内所有规则,可以指定特定链5 l) _9 Y/ N$ @# t. q& ~* _& G/ |
-n 使输出中的IP地址和端口以数值的形式显示
' Q: \1 }" _; c! e8 a1 v+ Y-v 输出详细化! g" I( o  e+ j7 R. O
--line 显示出每条规则在相应链中的序号
; H( F# ~6 e) D& E+ T$ u& t$ z* |7 t7 s3 J4 O  d5 Z) A& {4 T" s- x

8 Y5 h* I2 Y9 C& [
+ Y' s0 v* ]8 k- K+ n
+ R: }3 G  P9 Q% K) E 删除规则
! p0 Z  I+ j8 B1 ~+ T
- u" h& C9 h" ~) H如果要删除PREROUTING规则,命令为% z  @$ u$ W% J) [
) o' L2 }/ [1 N8 i) p4 [" X3 L9 u; N
1
! {* g2 }4 G: z0 Viptables -t nat -D PREROUTING 1         # 1 代表前面的规则序号
( ^1 P- Y4 W0 b$ U$ F( |如果要删除POSTROUTING规则,命令为& u1 `) Z* j. O9 I" F

+ o5 S; a6 T" k* Q8 ]% ?1
0 z: H9 _, I5 Z1 M7 E+ iiptables -t nat -D POSTROUTING 5        # 5 代表前面的规则序号
4 N8 O( E9 Z' A5 u5 |命令解释9 @9 x& M. ^' F4 m" _: `/ }/ J

% R( Z$ g; e6 G4 Y1
" |5 L- b& j+ X/ m6 @' \- d$ f2
6 c/ @7 n2 z7 K( Z$ _3 S7 J3
- v9 J9 n( N8 _' T4" ^' k7 f1 z& V( B/ I/ A1 D
5
4 S; [, g1 V7 z60 ?8 ~9 _2 _: ^! ^% ?0 k
7
! z$ o8 S5 n- S; _8' l' }% L: s5 i; w
9% H8 v7 g# O" m; @0 v  P8 g
10  P& f. z0 E; k% k
11
6 U. n$ c% u' n* \12
6 K6 H2 J& Y, r$ s9 i8 k13" o* R1 _/ p/ Z' ~% }1 t
-t 指定配置表; |: }/ n. Q) \% |7 r! A) _/ E; F
-A, ––append 将规则添加到链中(最后)。
: J; {( [9 u$ f0 C% W& ]' a% ?-I, ––insert 将规则添加到给定位置的链中。0 `2 \5 P" h! d) K- \& u
-C, ––check 寻找符合链条要求的规则。$ J6 h; D$ Z& w
-D, ––delete 从链中删除指定的规则。0 O3 ]+ k: d) {4 z1 ~! o
-F, ––flush 删除对应表的所有规则,慎重使用。
6 {3 v$ w$ ?$ D. T: V8 ]-L, ––list 连锁显示所有规则。
/ ?" `& J0 N* Z! g/ ^8 x3 t-v, ––verbose 使用列表选项时显示更多信息。
' m# _4 I& C: T) G+ f-P, --policy 设置链的默认策略(policy)) l) R$ D5 t. \# e1 Y3 O2 W+ l
-N, --new 创建用户自定义链4 f: {1 W  u" d4 v
-X, --delete-chain 删除用户自定义链
& C2 T# Q8 T" _6 ]. v$ P-E, --rename-chain 重命名用户自定义链: c: [( S& J- n  [
-j target 决定符合条件的包到何处去,target模式很多
4 g/ |- e+ x# F- ?; P; l
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|

GMT+8, 2025-11-5 02:04 AM , Processed in 0.103579 second(s), 23 queries .

Powered by xyh-moon X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表