管理番号:YMHSW-4143
本設定例では、ルーターのL2MSマスター機能・Luaスクリプト機能と、L2スイッチのL2MSスレーブ機能を使用しています。L2MSを使って、ルーターから、スイッチが持つ機能の設定を行います。
ルーターの対応機種は、FWX120です。
L2スイッチの対応機種は、SWX2300シリーズ、SWX2200シリーズ、SWX2100シリーズです。
L2MSマスター(ルーター)とL2MSスレーブ(L2スイッチ)の対応リビジョンは、技術資料「L2MS」でご確認ください。
Winnyフィルタ機能およびShareフィルタ機能を利用して、Winnyパケット、Shareパケットを監視し、発見した際には当該パケットを破棄します。また、Luaスクリプトによって、WinnyおよびShareを使用したホストが接続されたSWX2200のポートを閉じ、ホストからの通信を一定時間遮断します。
検知した内容は管理者宛てにメールで通知することもできます。
光回線に接続するためには、別途ONUが必要です。
対応機種のうち、設定例を掲載している機種は、以下のとおりです。
機種 | 掲載内容 | 備考 | |
---|---|---|---|
ルーター | FWX120 | コマンド設定例 Luaスクリプト例 |
L2MSマスター機能、 Luaスクリプト機能 |
L2スイッチ | SWX2200-8G SWX2200-24G SWX2200-8PoE | L2MSスレーブ機能 |
LANインターフェースの設定 (LAN1ポートを使用) |
ip lan1 address 192.168.0.1/24 |
---|---|
WANインターフェースの設定 (LAN2ポートを使用) |
pp select 1 pp always-on on pppoe use lan2 pp auth accept pap chap pp auth myname (ISPに接続するID) (ISPに接続するパスワード) ppp lcp mru on 1454 ppp ipcp ipaddress on ppp ipcp msext on ip pp mtu 1454 ip pp nat descriptor 1 pp enable 1 ip route default gateway pp 1 |
NATの設定 | nat descriptor type 1 masquerade |
DHCPの設定 | dhcp service server dhcp server rfc2131 compliant except remain-silent dhcp scope 1 192.168.0.2-192.168.0.100/24 |
DNSの設定 | dns server (ISPより指定されたDNSサーバーのIPアドレス) dns private address spoof on |
SYSLOGの設定 | syslog notice on |
L2MSの設定 | switch control use lan1 on |
Winny/Shareフィルタの設定 | pp select 1 ip pp intrusion detection out on ip pp intrusion detection out winny on reject=on ip pp intrusion detection out share on reject=on ip pp intrusion detection out default off |
フィルターの設定 | ip inbound filter 1001 reject-nolog * * tcp,udp * 135 ip inbound filter 1002 reject-nolog * * tcp,udp 135 * ip inbound filter 1003 reject-nolog * * tcp,udp * netbios_ns-netbios_ssn ip inbound filter 1004 reject-nolog * * tcp,udp netbios_ns-netbios_ssn * ip inbound filter 1005 reject-nolog * * tcp,udp * 445 ip inbound filter 1006 reject-nolog * * tcp,udp 445 * ip inbound filter 1007 reject-nolog 192.168.0.0/24 * * * * ip inbound filter 1099 pass-nolog * * * * * ip policy interface group 101 name=Private local lan1 ip policy address group 101 name=Private 192.168.0.0/24 ip policy address group 102 name=Any * ip policy service group 101 name="Open Services" ip policy service group 102 name=General dns ip policy service group 103 name=Mail pop3 smtp ip policy filter 1100 reject-log lan1 * * * * ip policy filter 1110 pass-log * * * * 102 ip policy filter 1122 static-pass-log * lan1 * * * ip policy filter 1123 static-pass-log * local * * * ip policy filter 1124 static-pass-log * * 192.168.0.0/24 * http ip policy filter 1150 pass-log * pp1 * * * ip policy filter 1500 reject-log pp* * * * * ip policy filter 1520 pass-log * lan1 * * 101 ip policy filter 1700 pass-log local * * * * ip policy filter 1710 static-pass-log * lan1 * * * ip policy filter 3000 reject-log * * * * * ip policy filter set 101 name="Internet Access" 1100 [1110 1123 [1124] 1122 1150] 1500 [1520] 1700 [1710] 3000 ip policy filter set enable 101 pp select 1 ip pp inbound filter list 1001 1002 1003 1004 1005 1006 1007 1099 |
Luaスクリプトのスケジュール設定 | schedule at 1 startup * lua (Luaスクリプトファイル名) |
設定値 | -- ルーターの LAN インターフェースの数 -- パケット検出時にメールを送信するか否か(on..送信する、off..送信しない) -- メールの設定 -- メールの送信に失敗した時に出力する SYSLOG のレベル (info, debug, notice) -- ポートの遮断からのタイムアウト -- 遮断しているポートの数 -- ポートを遮断されているホスト情報のテーブル |
---|---|
ホスト検索の関数 | function search(mac, addr, lan) -- LAN1のMACアドレステーブルでホストが見つかった場合 --[[ |
メールを送信する関数 | function send_mail(apl, addr, macaddr, route, port) mail_tbl.text = string.format("%sパケットを検出したため、switch(%s)の".. if (not rtn) then |
switch controlコマンドの実行関数 | function exec_sw_cmd(route, cmd) |
インターバルタイマ処理の関数 | function update_host_info() while (i >= 1) do if (host_info.timeout <= 0) then |
ホストテーブルの検索/追加をする関数 | function add_host(ipaddr, switchroute, hostport) for j = 1, #host_tbl do if (find == 0) then |
メインルーチン | local rtn, str, app, ipaddr, mac while (true) do if (rtn > 0) and (str) then for i = 1, num_lan do |
ご相談・お問い合わせ