RouterBoardのフィルター

今年最後のネタとして。

RouterBoardをpppoeのNAT箱として使っていますが、
外部からnmapなどでポートスキャンすると
どのポートをみても「open」になってしまいます。

それだと困るので、
in-interface」でインターネット側からのコネクションステータス「new」をドロップし、
そのあとにコネクションステータス「established,related,new」を許可してあげます。
で残りは明示的に「action=drop」します。
pppインターフェイス=pppoe-out」としてます。


iptablesと同じく上から順番に評価されますので、
順番には注意しましょ。

[admin@MikroTik] > ip firewall  filter print  detail  
Flags: X - disabled, I - invalid, D - dynamic 
 0    chain=forward action=accept connection-state=new protocol=tcp dst-address=192.168.1.123 in-interface=pppoe-out dst-port=80 log=no log-prefix="" 

 1    chain=forward action=drop connection-state=new in-interface=pppoe-out log=no log-prefix="" 

 2    chain=forward action=accept connection-state=established,related,new log=no log-prefix="" 

 3    chain=forward action=drop log=no log-prefix="" 

内側にサーバがある場合はドロップする前に、
forward action=accept connection-state=new」してあげればOK。

NAT、ポートマッピングはこんな感じ

[admin@MikroTik] > ip firewall  nat  print  detail  
Flags: X - disabled, I - invalid, D - dynamic 
 0    chain=srcnat action=masquerade out-interface=pppoe-out log=no log-prefix="" 

 1    chain=dstnat action=dst-nat to-addresses=192.168.1.123 to-ports=80 protocol=tcp in-interface=pppoe-out log=no log-prefix="" 

まぁ明示的に書かなくても、設定してないところはDrop、Denyされているはずですけど。

*追記
@kometchtech さんありがとうございます!!
もう少しセキュリティーを確保したいなら

[admin@MikroTik] > ip settings  print   

               rp-filter: strict
          tcp-syncookies: yes
             route-cache: no

を入れたほうが良いらしいです。
https://wiki.mikrotik.com/wiki/Manual:IP/Settings

良いお年を!!

コメントを残す

メールアドレスが公開されることはありません。

Enter code * Time limit is exhausted. Please reload CAPTCHA.

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください