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

Centos7 配置iptables NAT端口转发

[复制链接]

991

主题

92

回帖

5万

积分

管理员

积分
55457
发表于 2023-12-1 16:35:19 | 显示全部楼层 |阅读模式
打开端口转发的功能# d. y$ s) ^1 ]
" w% [+ A( o8 g( i" ^) [" f
1,首先开启IP转发功能,默认是关闭的。
% w2 P5 X! Q5 V1 x& R. x
0 f% `, I( r0 D# ?# Y' A临时修改:
/ N& R, P3 R7 T  G$ o' ]" ~' P4 Y0 D- ?1 F! t; ]+ X
18 b2 z# i/ z8 {" k% h$ {
[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/ip_forward
( z( h7 ^, k7 I. `修改过后就马上生效,但如果系统重启后则又恢复为默认值0。. ]. k; d* k8 d+ l# ~

. p' L* ]3 u, p9 b' j  y永久修改:
8 k# d% E) i: B$ d# o- T; m& L1 I" }8 H! A7 z. i2 ^0 m* W* D: C2 T& g  x8 D
1% Z( ^0 t, N" l
2* R/ k5 s; u+ _5 J" T$ w
3. f% \5 G) _* H4 v, G3 y
4
1 `6 r( K( m3 L# s9 V$ G" B5, Q  b8 V" c* y0 d
vi /etc/sysctl.conf
0 W0 e0 m! _' ^- P6 J
4 E( }5 ~5 \, c" C, _$ F# 找到下面的值并将0改成1,如果没有该配置,直接添加
$ {0 J7 Z+ @- r: O
/ g, _0 `0 j1 l! k5 bnet.ipv4.ip_forward = 1
. J8 C0 q- n/ Q& j/ I5 l# sysctl -p(使之立即生效)
9 G: |8 ]0 w. m  s9 T% y6 ^5 }$ B- ?% Z) ~4 O
默认值0是禁止ip转发,修改为1即开启ip转发功能。
' `* l, U+ D) Z: O* \% }. {
/ u% I% \2 U% \# q : N+ [" Q. A# `' ?0 i+ _, `

  \) I% F8 I. g* O' \& \; C( A0 a1 S端口转发
3 m* K# P2 ^/ k% V2 h
# y" a! Q3 n' {* w- y假设用户访问本机(10.1.1.5)的3306端口时我想让它转发到10.1.1.1:33069 j7 O  `3 b! G3 i# v

* M2 f; E% q1 s( c" u% ^17 q1 x/ s5 X; P3 Z$ u9 q
24 @$ n' I/ c3 I. W) |6 [. K
3
( ]! x( S# D# I45 i# ~7 @  q7 G6 y' z. u
5) ^7 [: i) f. e0 c$ {3 ~
[root@mongo iptables]# cat iptables-open.sh) Q1 \7 E" l  H- o: H* n7 W
#!/bin/bash" L& d; r. h: s
* G' S% L9 d: H5 ]: l- T
iptables -t nat -A PREROUTING -p tcp --dport 3306 -j DNAT --to 10.1.1.1:3306' @7 \% |; i0 U$ t' ~' n; u
iptables -t nat -A POSTROUTING -p tcp -d 10.1.1.1 --dport 3306 -j MASQUERADE8 U, t% Y" b( Y% v- A* v1 X
  ( r' z* Z5 ]& ]" V6 ?5 A$ i3 v
, B: o* _% a# v! `
查看规则' B4 j# m  N1 ~

0 Y; p; m' q+ Q5 N查看当前iptables的nat表内的规则
2 V% x2 a! L& F) P7 D
6 l. w& H( ]# ~' D3 c& W7 n1
, q3 s$ ?; U. m# }0 \0 J3 a  viptables -t nat -nL --line! o% b4 o( w- O. t1 N  b
命令解释:
; }0 T- l% ?' L1 z% j* l
' J; ^! k# a# u0 Q4 Q1
1 ~* n3 q: @, n. D( m2
; I; P% I& O! U3
* x9 b1 n2 ?2 n, i7 Y% w4
9 Z: N' C) J# J7 ~3 Q  L57 L4 {5 q( r  J8 X  i# u
-t nat指定看nat表,不用-t默认为filter表0 {2 ^# ?9 s$ [# h  R- e( n
-L 列出表内所有规则,可以指定特定链2 X3 R" \0 s0 r% e/ N) K
-n 使输出中的IP地址和端口以数值的形式显示
0 P) r! c, d: z4 P# N7 T-v 输出详细化: S6 }: b  n/ `* x
--line 显示出每条规则在相应链中的序号
# n( d( v6 [/ P+ r( {4 Y! ^; {  x2 f/ v* H

/ z/ Z1 ]7 `8 u
2 b3 D& G8 a! X& H
) ^8 U; D+ c- E 删除规则
+ V# `) ]+ B! Z! V# T# v; F7 K4 N: O1 d+ m* Q  k5 u6 F
如果要删除PREROUTING规则,命令为  p' N6 L1 x$ I/ Q9 D

/ \1 K6 B+ f* R7 W4 x1& D) h/ U( A% z4 w" Y* T  b! M) D6 y
iptables -t nat -D PREROUTING 1         # 1 代表前面的规则序号
* X: l2 J6 @9 M- q  [, N如果要删除POSTROUTING规则,命令为
8 Y) s) Q* u, L8 A1 A) k$ X0 c
" }* p) U  g2 S1- ?: t% ]* f5 E& V/ P& B9 b6 E
iptables -t nat -D POSTROUTING 5        # 5 代表前面的规则序号/ y' ]8 l) n( P1 H! Z
命令解释
0 D# f7 C5 c4 [; @6 a, Z0 U- M  B1 k7 Q3 j- d
1, x( q* b+ E2 z6 K
2/ D8 {  D5 x9 r) s
3
$ z$ \/ D3 N+ @3 r5 @8 a# x, o2 \+ }41 m, u8 e" s: `6 X
5: v7 P! {$ y3 \% H# J' n
6- E+ a. h: A$ v
73 i$ v5 b( f+ m/ ~9 H( j
8
, H. o! Y1 x+ {" S4 t9- T& e% @8 g' U/ x/ U& ^( `8 }
10
+ i0 e9 X. D  L& X& j) h11
  g0 `8 ~' `( S: H4 R8 K12+ F% v+ q1 C1 ?( ]* R% _
13
' _& D( C' e! y$ H- e- j+ \6 E  M; e  Z-t 指定配置表
9 I5 Q; l# ]' N# k8 g! Y) q* s-A, ––append 将规则添加到链中(最后)。1 n  l; k  [$ e9 W3 s
-I, ––insert 将规则添加到给定位置的链中。0 q8 a* |& E: Z" U
-C, ––check 寻找符合链条要求的规则。
1 c9 N' P4 i2 F; }* F( w8 z/ F  I-D, ––delete 从链中删除指定的规则。5 X( Q/ J5 |( Q" j
-F, ––flush 删除对应表的所有规则,慎重使用。
9 E. n) z" l/ M+ `& ^-L, ––list 连锁显示所有规则。1 {) A" `1 O- k; y
-v, ––verbose 使用列表选项时显示更多信息。
0 k, j, t: M) R! G* \" a-P, --policy 设置链的默认策略(policy)
  [* `8 o& g, g+ a$ K& n-N, --new 创建用户自定义链" q* R$ k8 {5 X- j* @
-X, --delete-chain 删除用户自定义链
0 v* x* q. t' C4 [& C5 I-E, --rename-chain 重命名用户自定义链- x" X9 e* _3 {3 C
-j target 决定符合条件的包到何处去,target模式很多1 ?( t- i& F: m. z
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|

GMT+8, 2026-8-5 10:19 AM , Processed in 0.080122 second(s), 23 queries .

Powered by xyh-moon X3.5

© 2001-2026 Discuz! Team.

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