まず、透過プロキシを構成することにしました。 ルータには独自のWebプロキシがあり、透過的にするために、ドキュメントの例に従ってください
code> ip firewall nat add in-interface = ether1 dst-port = 80 protocol = tcp action = redirect to-ports = 8080 chain = dstnat
ip proxy set enabled = yes port = 8080
80(HTTP)ポートのリクエストを8080プロキシポートに転送しますブロックされたアドレスを追加できます
/ip proxy access add action=deny redirect-to=192.168.0.1/404 dst-host=:facebook
この場合、「facebook」という単語を含むリクエストはブロックされ、内部ページ192.168.0.1/404(もちろんオプションです)にリダイレクトされます。 コロンの後に、dst-hostパラメーターで正規表現を使用できます。
次に、訪問ログを実際に蓄積して処理する方法についての質問が発生しました。 製造元からの組み込み製品またはその他の製品は提供されていません。 ドキュメントを読んでテーマフォーラムを検索すると、製品Webproxy-logが見つかりました。 製品はやや不器用ですが、方向を示唆しています(ただし、小さな負荷でも機能します)。 仕組み:
1.ロギング先の構成では、syslogサーバーに転送するためのセクションが追加されます。
/system logging action add name=proxylog target=remote remote=192.168.0.1 src-address=192.168.0.3
192.168.0.1は、ログの送信先サーバーのsyslogアドレスです。 192.168.0.3はルーターの内部アドレスです。
2.ジャーナル自体のセクションを作成します。作成された宛先を使用し、そこにプロキシサーバーログを送信します
。
/system logging add topics=web-proxy action=proxylog
この段階で、ルーターは次の形式のログを送信します
Webプロキシ、アカウント192.168.0.59 GET imgcdn.ptvcdn.net/pan_img/appDownload/PandoraService/Service_Info
xmlアクション=許可キャッシュ= MISS
Webプロキシ、デバッグGET /pan_img/appDownload/PandoraService/Service_Info.xml HTTP / 1.1
Webプロキシ、キャッシュ制御のデバッグ:no-cache
Webプロキシ、デバッグプラグマ:no-cache
Webプロキシ、デバッグホスト:imgcdn.ptvcdn.net
Webプロキシ、デバッグAccept:text / html、* / *
web-proxy、デバッグAccept-Encoding:identity
Webプロキシ、デバッグユーザーエージェント:Mozilla / 3.0(互換性、Indyライブラリ)
Webプロキシ、デバッグX-Proxy-ID:1074695054
Webプロキシ、デバッグX-Forwarded-For:192.168.0.59
Webプロキシ、デバッグVia:1.1 192.168.0.3(Mikrotik HttpProxy)
Webプロキシデバッグ
ここで、Webプロキシ、アカウントプレフィックスを使用して、リクエストを送信したユーザーのアドレスとリクエスト自体が記録されます。
3.サーバーとして、2つの部分で構成される上記の製品を使用できます。
WebProxy Log Catcherは(サービスがインストールされていないため)アプリケーションそのものであり、さらに処理するためにログを収集してタイムスタンプを追加する単純なsyslogサーバーです。
WebProxy Log-コレクターによって蓄積されたログをローカルデータベースにインポートするたびに、ログを表示するためのインターフェース。
アプリケーションを設定しても問題は発生せず、ドキュメントに十分に説明されています。
単純なログ形式を考えると、ルーターから送信された独自のログアナライザーを作成することは難しくありません。後で、独自の目的のために、DelphiおよびICSコンポーネントを使用してWebインターフェイスを備えた小さなサービスを作成しました。
おそらく上記のすべてが、このような問題を解決する時間を節約し、このメーカーのルーターの機能を紹介するのに役立つでしょう。