易陆发现互联网技术论坛

 找回密码
 开始注册
查看: 648|回复: 2
收起左侧

iptables 添加限制规则允许某ip通过端口登录,其他不允许

[复制链接]
发表于 2022-7-3 08:30:06 | 显示全部楼层 |阅读模式
购买主题 本主题需向作者支付 5 金钱 才能浏览
 楼主| 发表于 2022-7-3 08:31:37 | 显示全部楼层
示例 1. 删除已有规则, ?* ?7 K, z9 H( ?' \& T. h, u2 I* X
在开始创建iptables规则之前,你也许需要删除已有规则。命令如下:, M' Z0 i! C: g+ p" k

1 k' n& J/ `( m+ I. tiptables -F
2 Q6 ~6 @' [" g4 P. A; Z; }
# F! S6 e- H9 y- `* a( or)8 s" G' b& R; x' s' S( M
) S2 a1 _, r2 V
iptables – flush
1 n. h, b3 I- w3 C7 b
1 d  r% y% \% ~8 C( m2.设置链的默认策略
5 I* m0 |. ^! D, E5 L
8 T' p2 N$ v! [# A4 u链的默认政策设置为”ACCEPT”(接受),若要将INPUT,FORWARD,OUTPUT链设置成”DROP”(拒绝),命令如下:; Y; _4 z# C! G2 h# m! ^5 |6 m

5 U9 |- X: z7 M* ^3 Miptables -P INPUT DROP
; ^6 x3 P+ G# l& {* C  }6 G& E9 J9 Y# M* V, k
iptables -P FORWARD DROP) ]8 j. s7 T8 X2 e9 G$ j" o
: {- G0 P+ T* o  W
iptables -P OUTPUTDROP) l: l" ^! ]) h) F' U6 N

& k/ w$ B5 p+ G/ q7 E. a当INPUT链和OUTPUT链都设置成DROP时,对于每一个防火墙规则,我们都应该定义两个规则。例如:一个传入另一个传出。在下面所有的例子中,由于我们已将DROP设置成INPUT链和OUTPUT链的默认策略,每种情况我们都将制定两条规则。当然,如果你相信你的内部用户,则可以省略上面的最后一行。例如:默认不丢弃所有出站的数据包。在这种情况下,对于每一个防火墙规则要求,你只需要制定一个规则——只对进站的数据包制定规则。+ h7 I2 `& s3 c- Q. A! {

. ^1 g) b: F$ n( e, X% p' j3. 阻止指定IP地址
2 B  F7 E, {- Y+ G+ k, I. p9 S( b$ p
例:丢弃来自IP地址x.x.x.x的包2 p# v7 g5 N5 C+ N5 A# P% p

) ^1 Y) f) [$ DBLOCK_THIS_IP= "x.x.x.x"/ f% k" b$ y9 T

# Z+ a# H$ A1 Riptables -A INPUT -s "$BLOCK_THIS_IP"-j DROP
: C. a8 t5 o" z2 d6 y& n: j( h9 T  n$ g4 D0 N8 b& ~
注:当你在log里发现来自某ip地址的异常记录,可以通过此命令暂时阻止该地址的访问以做更深入分析
' y0 E! u/ q) o6 C' s5 C+ Q, w1 k. J4 \& A5 b: j+ Y
例:阻止来自IP地址x.x.x.x eth0 tcp的包' Z3 D# C8 t1 p- N$ {5 H

/ e: A% F0 T& ]% Kiptables-A INPUT -i eth0 -s "$BLOCK_THIS_IP"-j DROP
* x% L1 N$ ?: P. H4 @, O; y, y2 Z. \) {8 Y/ M& ~0 @
iptables -A INPUT -i eth0 -p tcp -s "$BLOCK_THIS_IP"-j DROP
, B" p; v- |. X
* _/ A& f5 u) N5 y; g$ x4. 允许所有SSH的连接请求
( E0 x' ^: Q2 O
4 u  ~* `% T4 H例:允许所有来自外部的SSH连接请求,即只允许进入eth0接口,并且目标端口为22的数据包
3 r& K# A1 C; F* f! }) I" }
) Q) T8 |) g7 g) t  M2 {: s! @7 tiptables -A INPUT -i eth 0-p tcp --dport 22- mstate-- stateNEW,ESTABLISHED -j ACCEPT
! U* T7 ^6 T4 z- [0 H6 h
- x' Q/ W6 I; ?9 a2 `% Biptables -A OUTPUT -o eth 0-p tcp --sport 22- mstate-- stateESTABLISHED -j ACCEPT
" \: C! P/ {. s5 U' H" F5 m4 |6 K) l" [: c& n+ T" \! V
5. 仅允许来自指定网络的SSH连接请求$ a" W  v( j2 n& m$ M

4 ]# {* Z/ K& b2 i) I" ^例:仅允许来自于192.168.100.0/24域的用户的ssh连接请求9 z, M8 a- M! }! H  {' S
0 L) x! g1 N- w7 v" n' }
iptables -A INPUT -i eth 0-p tcp - s192.168. 100.0/ 24--dport 22- mstate-- stateNEW,ESTABLISHED -j ACCEPT# @8 C; m# o" U
9 z  f0 n( c1 S
iptables -A OUTPUT -o eth 0-p tcp --sport 22- mstate-- stateESTABLISHED -j ACCEPT
- S' e6 J0 D" |2 }5 v! K9 J% d. V- f6 \" J
6.允许http和https的连接请求4 W5 J' {# ?! z% o; ?% |

+ z1 z3 @  t6 _) w' Y" \例:允许所有来自web - http的连接请求+ b- s/ |: p9 m+ I, Q( J9 @/ v

( j' X* o  T8 [iptables -A INPUT -i eth 0-p tcp --dport 80- mstate-- stateNEW,ESTABLISHED -j ACCEPT
7 P  d; S. T  ^( T2 i. K* k6 N
4 H' {# ]  S. f' n5 i0 G: Riptables -A OUTPUT -o eth 0-p tcp --sport 80- mstate-- stateESTABLISHED -j ACCEPT
' o/ `! B* H# |: d6 S% |5 x& Y8 U2 S; s$ o0 w% _2 ~
例:允许所有来自web - https的连接请求8 Y! f6 z  P" o4 [) |8 ~
; A3 e) M( X8 e; w( s
iptables -A INPUT -i eth 0-p tcp --dport 443- mstate-- stateNEW,ESTABLISHED -j ACCEPT  B; e4 h1 ]/ y$ m7 r4 J

3 Q7 r+ r# Y- c* Q& _, J9 ^iptables -A OUTPUT -o eth 0-p tcp --sport 443- mstate-- stateESTABLISHED -j ACCEPT0 S1 D+ w8 _; `) Z5 A* M" u5 d

6 R" e+ d9 l/ k  ?) E, |7. 使用multiport 将多个规则结合在一起5 E- {) g7 Q7 N4 i3 Q

( i( \* k- R: M  \, ]5 [0 Q允许多个端口从外界连入,除了为每个端口都写一条独立的规则外,我们可以用multiport将其组合成一条规则。如下所示:
4 V3 U( h$ G- v- {) R7 m6 f8 G* x" F; f$ `4 D, @
例:允许所有ssh,http,https的流量访问
9 U+ Y6 d# I- a, w. y9 W  }  W4 p, r( b2 ], U  s9 h
iptables -A INPUT -i eth 0-p tcp - mmultiport --dports 22, 80, 443- mstate-- stateNEW,ESTABLISHED -j ACCEPT# w. \- G( P& j9 o- Z0 e

8 h1 }5 I0 r$ e8 d+ Hiptables -A OUTPUT -o eth 0-p tcp - mmultiport --sports 22, 80, 443- mstate-- stateESTABLISHED -j ACCEPT
3 W2 y- F* u: \: Y8 A8 _  v; d9 E+ D( T( _/ T
8. 允许从本地发起的SSH请求iptables -A OUTPUT -o eth 0-p tcp --dport 22- mstate-- stateNEW,ESTABLISHED -j ACCEPT6 A& \5 Z+ |3 U$ X, K8 N) f
  }- l- }3 v1 U% A/ }; V9 y. t( e
iptables -A INPUT -i eth 0-p tcp --sport 22- mstate-- stateESTABLISHED -j ACCEPT
1 X# ]$ g5 w* y$ L/ m# P* \
4 ]' n/ ^0 a6 `请注意,这与允许ssh连入的规则略有不同。本例在OUTPUT链上,我们允许NEW和ESTABLISHED状态。在INPUT链上,我们只允许ESTABLISHED状态。ssh连入的规则与之相反。
' a6 b" S4 D6 a, t* _! m" i+ l
! {1 o9 j7 @4 r9. 仅允许从本地发起到一个指定的网络域的SSH请求1 r1 ~  j" ~& J/ Y& Y1 d

- }& R( _# P% x例:仅允许从内部连接到网域192.168.100.0/24
  E( k; M( E2 u
+ g- b; i4 j" A" B# n. Riptables -A OUTPUT -o eth 0-p tcp -d 192.168. 100.0/ 24--dport 22- mstate-- stateNEW,ESTABLISHED -j ACCEPT' o! ?9 [- s# h$ R. S" K3 I$ E
/ G) R% S, p$ F0 {
iptables -A INPUT -i eth 0-p tcp --sport 22- mstate-- stateESTABLISHED -j ACCEPT
1 _. U7 ?7 Y; M
6 q$ Y! `: r5 _& R* i  X& ]' q  ~10. 允许从本地发起的HTTPS连接请求% Y/ F  w2 i6 q1 ?2 h
0 ?7 ?% R. N" g% P, w! a, @, {
下面的规则允许输出安全的网络流量。如果你想允许用户访问互联网,这是非常有必要的。在服务器上,这些规则能让你使用wget从外部下载一些文件
6 w- V; u7 U# n9 b- i$ `7 R* L. X
% i7 j6 n: p9 [iptables -A OUTPUT -o eth 0-p tcp --dport 443- mstate-- stateNEW,ESTABLISHED -j ACCEPT. ?# o7 {# n6 a* h" y

/ s) j, W: L& v6 jiptables -A INPUT -i eth 0-p tcp --sport 443- mstate-- stateESTABLISHED -j ACCEPT3 }% W: W6 B9 Z( S
. p- _' U7 L, @2 E
注:对于HTTP web流量的外联请求,只需要将上述命令中的端口从443改成80即可。; T- j, J2 K  n

, e5 _# ^( S& C# b: D# ?11. 负载平衡传入的网络流量! v3 b$ R' E( k+ X
. w% `8 K$ b1 s  S) m- r0 B
使用iptables可以实现传入web流量的负载均衡,我们可以传入web流量负载平衡使用iptables防火墙规则。
5 K2 ~6 \3 J9 [, \, U% E
' D; V/ w- a, }" s; s例:使用iptables nth将HTTPS流量负载平衡至三个不同的ip地址。
5 d" u" {: ?! D) q( f
$ N! F0 h& x/ p/ kiptables-APREROUTING-ieth0-ptcp--dport443 -mstate--stateNEW-mnth--counter0 --every3 --packet0 -jDNAT--to-destination192 .168.1.101:443# `$ |) X! h  \  i: o6 W4 m, n
. M- I+ ~8 X- D. ]4 ~) ^
iptables-APREROUTING-ieth0-ptcp--dport443 -mstate--stateNEW-mnth--counter0 --every3 --packet1 -jDNAT--to-destination192 .168.1.102:443
: l( T  F# T7 J3 {" ]- ]0 T
: a3 B: F" y  diptables-APREROUTING-ieth0-ptcp--dport443 -mstate--stateNEW-mnth--counter0 --every3 --packet2 -jDNAT--to-destination192 .168.1.103:443
% _" b) A8 _" W7 U3 ]* N) Q  w: W
12. 允许外部主机ping内部主机iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT. \! N6 v* c) c" t1 }
, l7 U7 @$ t$ Z9 w' P* N4 Q& y5 O
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT) _. Y( w& s6 z+ `$ p4 d, P

4 q9 ?7 t  L% g1 Q13. 允许内部主机ping外部主机iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT* T$ O( |+ q* p; x- W! T. _) M
$ Y, Q3 Z  w: [
iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
: w1 Y3 h! z6 R/ k
* a% ]! g) k2 Q, [/ F- P14. 允许回环访问
0 M" S6 M6 Q- W. y4 o3 G0 C! P& l5 J" Z: q! ~2 N+ D! Q
例:在服务器上允许127.0.0.1回环访问。0 U% Z1 K, z9 d; Y  O- P- j! B
3 Q+ w  g; q$ F; _! g
iptables-A INPUT -i lo -j ACCEPT
6 u- a" N8 V; g. ~* Z
* {9 h; [8 X7 N. E, ziptables -A OUTPUT -o lo -j ACCEPT
( N7 l3 P# E! x$ v' w3 j0 K
2 n# @) X; E% x' {: m1 X% b4 ]  j15. 允许内部网络域外部网络的通信7 O$ G9 I9 P" \% L. s3 r8 J5 q

7 {3 H2 C% x. m- ^; R( j防火墙服务器上的其中一个网卡连接到外部,另一个网卡连接到内部服务器,使用以下规则允许内部网络与外部网络的通信。此例中,eth1连接到外部网络(互联网),eth0连接到内部网络(例如:192.168.1.x)。
+ V5 U3 R! m8 k5 H0 P# U+ f+ r3 I- m6 _
iptables-A FORWARD -i eth0 -o eth1 -j ACCEPT
+ ^7 J# b4 \1 ~3 j/ Q" R" C. ?# W) _' R% g8 Z
16. 允许出站的DNS连接iptables -A OUTPUT -p udp -o eth0 --dport 53 -j ACCEPT/ |& R( {* v, S
7 O+ r0 Z/ m+ v8 A4 p
iptables -A INPUT -p udp -i eth0 --sport 53 -j ACCEPT, B3 i9 m1 n1 a1 \4 ]1 N( V
+ L. D; y! O" O& R
17. 允许NIS连接
+ E$ s, y. A  n8 L' o$ N7 U$ _. o9 M6 K' V: l
如果你使用NIS管理用户帐户,你需要允许NIS连接。如果你不允许NIS相关的ypbind连接请求,即使SSH连接请求已被允许,用户仍然无法登录。NIS的端口是动态的,先使用命令rpcinfo –p来知道端口号,此例中为853和850端口。
5 T5 ]2 B4 I9 l  P2 e. c2 a% `0 B  w( y5 m" j% m
rpcinfo-p | grep ypbind4 b& U+ q5 Y9 K7 f0 Y# P
5 N9 ]$ B. J+ R" Q5 \
例:允许来自111端口以及ypbind使用端口的连接请求
, h* I: I3 V* ?1 i3 g3 }6 T% D% a4 B8 d7 U' `9 q. T; C
iptables -A INPUT -p tcp --dport 111 -j ACCEPT% @3 \8 B2 x9 I1 Q% m+ \
0 w. V8 I- c0 C
iptables -A INPUT -p udp --dport 111 -j ACCEPT' s$ P: L" t# A

- ]: C2 A( T/ Riptables -A INPUT -p tcp --dport 853 -j ACCEPT, O& v" S: h) i! K

: w9 p8 i* i) K4 P3 ]iptables -A INPUT -p udp --dport 853 -j ACCEPT
0 g! l% H/ U$ f  }2 b/ `
" _( X' g1 C4 b( riptables -A INPUT -p tcp --dport 850 -j ACCEPT5 n: D, \9 [! q  C

: h. c% f( f7 z9 piptables -A INPUT -p udp --dport 850 -j ACCEPT
$ ~+ A9 ^! F# {$ _; L
# F3 t! a6 I- W注:当你重启ypbind之后端口将不同,上述命令将无效。有两种解决方案:1)使用你NIS的静态IP 2)编写shell脚本通过“rpcinfo - p”命令自动获取动态端口号,并在上述iptables规则中使用。
/ x7 {6 X7 P5 z+ Y: h
; K2 t8 f2 C. F4 X2 z; r8 Y18. 允许来自指定网络的rsync连接请求
  c0 k/ T& w( [4 k+ S% y
- t5 P3 [8 n& ^: \! L; K例:允许来自网络192.168.101.0/24的rsync连接请求
7 ^) A, P, z5 {- B4 Y1 D7 D9 Z$ d& a
iptables -A INPUT -i eth 0-p tcp - s192.168. 101.0/ 24--dport 873- mstate-- stateNEW,ESTABLISHED -j ACCEPT
( `4 Z/ F; [# l3 Q7 L7 k- w' E; J) c0 X( ~4 X. b
iptables -A OUTPUT -o eth 0-p tcp --sport 873- mstate-- stateESTABLISHED -j ACCEPT
% I/ a% K1 x/ C& g3 Q8 Y) h7 k
$ d7 w) ]4 @5 @/ Z. `: m19. 允许来自指定网络的MySQL连接请求
( m  D; i# s! v! ^; d! U) s5 m3 K( [/ q
很多情况下,MySQL数据库与web服务跑在同一台服务器上。有时候我们仅希望DBA和开发人员从内部网络(192.168.100.0/24)直接登录数据库,可尝试以下命令:. w+ T, |9 Y2 l3 `
- E8 p) Q* p+ B% m! w
iptables -A INPUT -i eth 0-p tcp - s192.168. 100.0/ 24--dport 3306- mstate-- stateNEW,ESTABLISHED -j ACCEPT# R# n- z9 l- s* w7 H/ z2 u6 g9 E
- z  b7 f- E& o) F3 G
iptables -A OUTPUT -o eth 0-p tcp --sport 3306- mstate-- stateESTABLISHED -j ACCEPT
9 Z, F) `2 ?+ }* c8 s$ P0 F6 P9 X" w$ A( @
20. 允许Sendmail, Postfix邮件服务0 U) G; I' `+ B6 ?# n7 ^+ F

+ v3 b: O& m5 H# p% fSendmail和postfix都使用了25端口,因此我们只需要允许来自25端口的连接请求即可。; E  a* L$ V, F2 \

* [- g/ F5 y/ C0 A: B+ d/ Fiptables -A INPUT -i eth 0-p tcp --dport 25- mstate-- stateNEW,ESTABLISHED -j ACCEPT" W3 a) N* A, y3 e% J

9 `! g9 n: ]6 S2 ^iptables -A OUTPUT -o eth 0-p tcp --sport 25- mstate-- stateESTABLISHED -j ACCEPT: V: a, d7 C5 I6 v4 {* c1 w! L8 e

0 \% [; l! @" I: V; R  b21. 允许IMAP和IMAPS9 g+ O; y- n' q; X. a* ]; K2 x
9 ~# Y. m' x; l
例:允许IMAP/IMAP2流量,端口为143
/ z1 l3 |. L+ G  n( X, _6 H. m
$ E& s; o6 h* D( U' Wiptables -A INPUT -i eth 0-p tcp --dport 143- mstate-- stateNEW,ESTABLISHED -j ACCEPT  n; w! S8 ?( n/ T+ K+ |

; q6 D3 E; x$ [# F3 qiptables -A OUTPUT -o eth 0-p tcp --sport 143- mstate-- stateESTABLISHED -j ACCEPT) K. A; I# [" ?! k! b6 w

1 q( o) c& y! ^; }  `& @( @例:允许IMAPS流量,端口为993( n- J, k6 e2 m$ ?8 i1 F" |
4 s! R* y7 a! g7 j) ]
iptables -A INPUT -i eth 0-p tcp --dport 993- mstate-- stateNEW,ESTABLISHED -j ACCEPT( y0 o* K1 h5 T6 `0 s* V7 M' I
2 i) m" o9 m' Z8 }( P
iptables -A OUTPUT -o eth 0-p tcp --sport 993- mstate-- stateESTABLISHED -j ACCEPT# r8 a* M7 }) F% w. b

2 r! d' ]: W2 a+ p1 q/ o& a22. 允许POP3和POP3S
# d& Y( s6 u/ e" z, v& |  |$ Q* e# |( ?: z4 h) p
例:允许POP3访问9 L+ F0 v9 t# H5 f
" E  X' `- O9 b% k  n
iptables -A INPUT -i eth 0-p tcp --dport 110- mstate-- stateNEW,ESTABLISHED -j ACCEPT
# e7 G3 y1 h" p7 b
/ k6 a( M( w) Y8 hiptables -A OUTPUT -o eth 0-p tcp --sport 110- mstate-- stateESTABLISHED -j ACCEPT
3 F" K  w( w2 x' \; z0 \
( \, p& d$ E. \' I& z例:允许POP3S访问
3 a0 S5 }; b' A+ c0 T( |( W- t. n. B  J9 ?0 F
iptables -A INPUT -i eth 0-p tcp --dport 995- mstate-- stateNEW,ESTABLISHED -j ACCEPT
* H8 {5 ~& R' P* h! y  p
& H8 i# W) K5 Q# n$ Uiptables -A OUTPUT -o eth 0-p tcp --sport 995- mstate-- stateESTABLISHED -j ACCEPT
; m4 n3 p) t8 U# `* F4 i: N
' \9 k( `# x' n23. 防止DoS攻击iptables -A INPUT -p tcp --dport 80 -m limit-- limit25/minute -- limit-burst 100 -j ACCEPT; M' U6 p+ R% I1 {
( e! p& h8 o, d0 n& Q; f+ p: S
上述例子中:% a% S/ @& X: m; C* Z; b5 h

& h( h7 h, s; o8 q9 w-m limit: 启用limit扩展
# B' H( b. N. B& g- ?3 b) z7 U, o% m6 p6 D% @% L
–limit 25/minute: 允许最多每分钟25个连接(根据需求更改)。# |9 B4 l; ]' Q2 o9 b; U! e

' ]; F& Q8 E) X( p/ _! C–limit-burst 100: 只有当连接达到limit-burst水平(此例为100)时才启用上述limit/minute限制。+ z) i# ?0 b# l" }

: O2 H3 _6 l* b# O$ N) W( a: N# ^24. 端口转发
4 K* \+ e0 m5 ~8 N0 ?" C例:将来自422端口的流量全部转到22端口。* z4 u' u& v+ S7 i2 R* a7 c/ m
# Z. V8 O) `8 ]7 ^. u
这意味着我们既能通过422端口又能通过22端口进行ssh连接。启用DNAT转发。
" h. n( H9 g1 G5 G
* P$ `; |& M) ?, Iiptables-tnat-APREROUTING-ptcp-d192 .168.102.37--dport422 -jDNAT--to192 .168.102.37:22
0 ]0 @! G& L; p4 B: t* O& w$ b+ j
9 O- \! `# H* ?4 x  D除此之外,还需要允许连接到422端口的请求
! ]0 d3 y: i& g! Z: A+ d3 c  S  z5 ]# B+ B0 r% v
iptables -A INPUT -i eth 0-p tcp --dport 422- mstate-- stateNEW,ESTABLISHED -j ACCEPT: }& C7 i8 B- P3 ]; f
9 q$ W: J0 }3 j, ^1 F4 d' v
iptables -A OUTPUT -o eth 0-p tcp --sport 422- mstate-- stateESTABLISHED -j ACCEPT
  A4 g& N. N) a8 h  r+ ]. c% @6 x. G+ q. G
25. 记录丢弃的数据表
% K# H# A1 j1 l
# B+ K$ X& [( |第一步:新建名为LOGGING的链
# @; G  W6 r% _4 Q( ?
' y: V+ ^) y" t  K$ Diptables-N LOGGING) v# B  y( b) j" N3 w* f% E
) C8 {. c, ~9 F8 `
第二步:将所有来自INPUT链中的数据包跳转到LOGGING链中: a$ o9 m6 `* l( R
" G0 F+ J  O3 ^1 @3 _+ W& G/ t$ Q- @
iptables-A INPUT -j LOGGING( p: K6 i* N: R. r. j: j
8 u: c7 r: i& m; G0 w
第三步:为这些包自定义个前缀,命名为”IPTables Packet Dropped”
$ H: F( }3 x; b+ e7 b8 ^, D' k
1 |$ I  |& p0 uiptables -A LOGGING -m limit-- limit2/min -j LOG -- log-prefix "IPTables Packet Dropped: "-- log-level 71 j% l8 q3 k/ D6 L. `: O
: U" I5 k% s3 ^* R; Z& t
第四步:丢弃这些数据包$ T5 C; N: r* {: I0 L
3 n0 z7 y) c2 w2 ?3 I) a4 b
iptables-A LOGGING -j DROP
 楼主| 发表于 2022-7-3 08:34:52 | 显示全部楼层
使用packstack安装完成后的openstack,再新加计算节点的时候,总是提示连接失败。6 w# ~; p! ?# l, l/ D
检查了半天是因为iptable的原因,因为自己安装的脚本在给rabbitmq加的rule如下,只有通过192.168.12.22这个节点才可以访问它,所有新加的计算节点总是连接不大rabbitmq。, p5 U+ E1 U" d
ACCEPT     tcp  --  192.168.12.22        0.0.0.0/0            multiport dports 5671,5672. ?9 P" [' e5 ~0 {/ M

! e9 d4 X! {% f- k why controller drop my compute node packet, check below iptable rule:1 z0 k8 U6 W  \9 V
[root@controller log(keystone_admin)]# iptables -nL4 U$ m: Y' J2 Y1 @7 U
Chain INPUT (policy ACCEPT)
* c* y6 i+ u2 g) Jtarget     prot opt source               destination- x9 c) ~- ?: ?" V# t0 O2 `
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:53
# ]" z4 n$ Y# ^7 XACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:537 r: ~" Y9 n5 k- s! }/ n
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:67
5 X: w0 D! S& i/ c3 Q1 E4 r6 @ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:67' J' @' S( m. _) B
# only allow 192.168.12.22 packet to connect to rabbitmq
0 k0 \/ W7 t! [  e7 VACCEPT     tcp  --  192.168.12.22        0.0.0.0/0            multiport dports 5671,5672 /* 001 amqp incoming amqp_192.168.12.22 */
* f( {  m' _0 e: M4 d0 KACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 8042 /* 001 aodh-api incoming aodh_api */5 V' a$ B5 S) y  W) X4 L2 k
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 8777 /* 001 ceilometer-api incoming ceilometer_api */
- c+ H) E+ c( u; m" XACCEPT     tcp  --  192.168.12.22        0.0.0.0/0            multiport dports 3260 /* 001 cinder incoming cinder_192.168.12.22 */
6 [! T4 M- k) p( n% M' C9 V- I, AACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 8776 /* 001 cinder-api incoming cinder_api */
5 I" _! l% j( k" O- j9 [ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 9292 /* 001 glance incoming glance_api */8 I- h9 _' h9 w; \3 k+ M, c
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 8041 /* 001 gnocchi-api incoming gnocchi_api */1 U; p: J! Q" u% n/ r0 J" t9 e
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 80 /* 001 horizon 80 incoming *// ?( D' Z# q2 P: C  M
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 5000 /* 001 keystone incoming keystone */" e- W$ Y5 C. l+ e9 Z1 U
ACCEPT     tcp  --  192.168.12.22        0.0.0.0/0            multiport dports 3306 /* 001 mariadb incoming mariadb_192.168.12.22 */
7 R0 L8 J4 b; g+ YACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 9696 /* 001 neutron server incoming neutron_server_192.168.12.22 */
: j! A$ |- |* s; }) zACCEPT     udp  --  192.168.12.22        0.0.0.0/0            multiport dports 6081 /* 001 neutron tunnel port incoming neutron_tunnel_192.168.12.22_192.168.12.22 */6 b% r" c( \8 P; {5 A9 T
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 8773,8774,8775,8778 /* 001 nova api incoming nova_api */
1 C- F9 F' `3 _9 }ACCEPT     tcp  --  192.168.12.22        0.0.0.0/0            multiport dports 5900:5999 /* 001 nova compute incoming nova_compute */
! J/ x3 x: M( rACCEPT     tcp  --  192.168.12.22        0.0.0.0/0            multiport dports 16509,49152:49215 /* 001 nova qemu migration incoming nova_qemu_migration_192.168.12.22_192.168.12.22 */
  }. x) F! ~2 MACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 6080 /* 001 novncproxy incoming */
7 Q7 R; ^, t; r& VACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 6641 /* 001 ovn northd incoming ovn_northd_192.168.12.22 */
2 l, D4 t4 Z2 G% _4 m% AACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 6642 /* 001 ovn southd incoming ovn_southd_192.168.12.22 */
/ M9 c2 }, R$ i3 D# XACCEPT     tcp  --  192.168.12.22        0.0.0.0/0            multiport dports 6379 /* 001 redis service incoming redis service from 192.168.12.22 */
! X/ `( }) L8 @! nACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 8080 /* 001 swift proxy incoming swift_proxy */2 N% |, p, B5 v8 k+ C/ V
ACCEPT     tcp  --  192.168.12.22        0.0.0.0/0            multiport dports 6000,6001,6002,873 /* 001 swift storage and rsync incoming swift_storage_and_rsync_192.168.12.22 */
+ H( D* `+ d3 t3 eACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
; g2 o/ g5 g0 H) e( hACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0  `# v' P) o8 A8 q
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
. r+ I1 l, }% B4 B# `) i5 rACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:226 e7 b/ p# }: b$ @+ a: a  E7 e$ A
REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited4 x( i& D0 l+ }

+ Y1 M9 J* k8 K: K' c
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

北京云银创陇科技有限公司以云计算运维,代码开发

QQ|返回首页|Archiver|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )点击这里给我发消息

GMT+8, 2026-4-9 00:02 , Processed in 0.057931 second(s), 26 queries .

Powered by Discuz! X3.4 Licensed

© 2012-2025 Discuz! Team.

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