お客さんのトコロで、フリーアクセスのオフィスに移転するという話と、併せて社員にノートPCをばら撒き、無線接続という話がありまして.....

うーむ。

じゃ私が求める仕事用ノートPCとは

1) Corei5 以上
2) 8Gb 以上のメモリ
3) 500Gb のハードディスク(SSDなら 256Gb 以上)
4) 有線用 RJ-45 コネクタ付き
5) 11 ~ 13 インチのスクリーンで縦は 1024 ドット以上
6) クルリポンの 2in1 でも USBメモリなど外部メディアで Linux が起動できる事 ,やっぱりクラムシェルがいい。
7) フットプリント A4以下で重さ 1.5Kg 以下
8) USB ポート3個程度
9) 外部 HDMI もしくは VGA ポート
10) 価格は 10万円を超えない程度(目標)
11) USB 外付けのポータブル光メディアデバイスは持っているし滅多に使わないからイラネ
12) 金属筐体と、ほぼ問題なく満足なブラインドタッチができる厚みのあるキーボード
13) 当たり前の BIOS パスワード ロック

と言ったところが、ITインフラエンジニアである「私が欲しいビジネスに必要なノートブックPC」です。

ところが、最近はあまりこのような仕様のPCが見当たらないンですね。

モバイル主体なら13インチ、A4モデルというと、紙っぺらみたいな1cm厚のノートが主流。勿論この厚さでは RJ-45 モジュラや、VGA ポートは問題外、しかも HDD ではなく 128Gb のSSD と4Gbのメモリという選択しか中々出てこないのですね。メモリとSSDはマザー直付けで固定。カスタマイズなし。割とこのテのPCは筐体の作りがしっかりしているようですが、ちょっと物足りないスペック。薄さは魅力だけれど、重要じゃない。外部I/Oは USB Type-C のみ。これはあまりお客さんにもお勧めしませんね。持ち帰り自宅仕事を増やすだけ。

結局、「ノートPCの厚み」というのは、アダプタ類を実装し、大容量低価格のハードディスクを内蔵するためのメリットじゃないかと思います。その分、フットプリントは犠牲になっても構わない。

Type-C用のネットワークとかUSB増設アダプタあるじゃん、と思った貴方は鋭い。しかし、エンドユーザという「彼ら」の仕事はそう言った「小物を紛失する」のも仕事なのです。小物だけじゃなくって、PC本体だって、自宅の鍵すらヨッパラって3件目の飲み屋とか電車に置き忘れる。これは上からも、下からも IT部門へのブツブツ不満となって帰ってくるわけですね。

そう言った「カッチョええ」PCは、自前でBYODして、混んだ電車のシルバーシートにハードボイルドに気取ってバキッと大股おっ開げて座り込み、意味のない無線信号飛ばしまくって、キーボードをバシバシ叩いて、じーっと目をつぶっている両隣のジジババを起こしてクソ餓鬼の写真でも見せびらかすためにあるのですね。とてもじゃないけど、ビデオ編集なんてできない。

私はエンジニアですから、フリーの技術ライターがお勧めする様なPCでは物足りません。客先で Hyper-V 仮想化とか、SUSE Linux の USB 起動+仮想化ハイパーバイザーブートが必要なので、ディスクの中身は仮想イメージだとか ISO なんかがごっちゃり入っています。必要であれば、出先の仮想環境でオペレーションマニュアル書いたりするので8Gbのメモリは必須です。そこまで酷使しなくても、8Gメモリは悲鳴を上げている。固定デスクトップは無条件に Linux サーバー化するので、ノートPCとは Windows のメインPCなのですね。

今のところ使っているのはマウスコンピューター製の 11.1 インチノートなのですが、ほぼこのスペックを満たしており、まぁは満足しています。が悲しいかな安物の二流国内メーカーで、プラ筐体なので、格安航空会社の格安チケットで出張中、モニタをゆっくり開いたらヒンジがバキリと音を立ててヒビが入りました。当然保証外。そこでほとんど自宅では、外部モニタが必須です。客先でもお借りすることがあります。電車の中でも安心して持ち運べる金属筐体が欲しい。やっぱりちょっと高いけど Dell とかレノボかな。パナとか東芝はちょっとお高く止まっている。VAIO はちょっと魅力。でもほぼコレというのは完全に20万円台の竹コースです。

ノートPCはキーボードもポインティングデバイスもモニタも「替えが利かない」ので、できるだけ長期保証が欲しい所ですが、このあたりも M-PC さん、ノートPCのキーボードもモニタもポインティングデバイスも消耗品扱いするので、ちょっと保証がモノ頼りない。以前 DELLの「像が踏んでも無償交換修理」という無敵の Dell Inspiron か何か使っていた事があったのですが、ベッドで使っている最中、眠ってしまい、夢の中でエルボーアタックでモニタにピキッとヒビが入った時は、2~3日で無償修理してくれました。結局5年間使えました。 結局お得でしたね。

電池の持ちはあまり気にしません。せいぜいUPS替わりに2時間も使えれば結構。その代わりACアダプタは必携です。どうせカタログで7時間と言っても1年もしないうちに半分くらいまでヘタります。

なぜ、ビジネス用PCに有線LANが必要かと言うと、「無線ほど信用できないモノはない」からです。接続の信頼性、スループット、スニッフィングの危険、気が付いたら「隣の家の無線を拝借していた事故」の防止。

この間もありましたけどね。有線無線両用している時にファイルサーバーとの接続がプチ切れる、ンで調べたら、隣のビルのコンビニからの電波がお客様が「拝借」して「お邪魔でぇーす」していたそうです。どうもゲスト用のパスワードなしのSSIDを捕まえてしまい、というトラブルです。勿論セキュリティもダダ漏れ状態。

ウチでも「激安アウトレット品」の Wifi ルータにヤラレタ事があります。DNS/DHCP は止められないし、デフォルトG/Wがインターネットルータになるので、ローカルLANのDNSを参照してくれないケースですね。こういったおバカ仕様だと当たり前ですが、無線/有線混在仕様だと、内部のシステムにアクセスできない事があり、ひどく怪しい動きをしてくれます。トンデモケースですが安物買いの銭失いですな。

それに最近はテザリングできるスマートフォンなんかあるわけで、カイシャにもどったら、さっき出先でテザリングしていたのを忘れて、ひたすら天井のアクセスポイントより全然近い、PCの隣で USB 充電中のスマートフォンとひたすら通信してたなんて話もよくあります、ってか私もよくやっちゃいます。

まぁ、昔、聞いたまじめな話。無線対応のプリンタが流行った頃、コンフィデンシャルな会議用ドキュメントをバキバキと印刷していたら、あれ、おかしい。ジャムったか、トナー切れか。とおもってトラブルを調べていたら、見知らぬカイシャから「おタクのカイシャのロゴが入った印刷物がゴッチョリ大量に出てきてウチのプリンタトナー使い切ったんだけど何とかしろ」とクレームが来たという。どうやら距離は結構そこそこに離れているんだが印刷した本人の席と問題のカイシャとの間にはガラス窓以外に遮蔽物がなく、「極秘文書」をジャンジャン他社に送り付けたらしい。総務が赤っ恥かいて謝罪にいったらしいけど、その後、その会社では無線の使用は厳禁になったとかならなかったとか。

ウソかホントか知らんけど似たトラブルはよく聞きます。「だからオフィスでは無線は使うなぁ、スイッチ切れぇ!」とお灸をすえてやりましたが.....

これから無料 Wifi スポットが増えるとそんなトラブルも良く出るんだろうなぁ。

有線が使えるなら、厚みやディスプレーのサイズにはこだわりません。まぁ肩が凝るほどの重量級ノートは遠慮しますが、かつては毎日、大型ノート2台持ちもしたくらいですからモニタサイズと重量はあまり気にしない。できれば電源は二個持ち、一個は固定使用、予備は持ち歩き用。AC電源アダプタとかディスプレーでも壊れりゃ、ただのウエイトトレーニングの用途にしかならないのがノートPCです。

確かにスマートフォンや、容量の少ない記憶装置は、クラウド主体のビジネスモバイルとしては充分かも知れません。が、この使い方はあくまでも、あくまでもシャドウIT。IT部門の管理から外れた利用方法になるため、余分な機密データの持ち出しや、大量かつ巨大データの加工、生産には向いていません。例え、リアルタイムに常時接続したい、というニーズはタブレットやスマートフォンではお分かりの通り少ないンです。だからこれらのデバイスでは無線でも充分。しかしプロの生産活動にはやはり有線接続のPCは必要なのです。

また、多くのフリーランスやITメディア編集部のITライターさんが書くインプレッション記事は、新品状態の細かなスペックだとか、自宅兼オフィスの深夜の丑三つ時、静的環境で数台のPCやタブレットを使ってみての夏休みの感想文なのです。彼らフリーランスのITライターは数百台のPCが存在し、巨大な画像ファイルや図面を使う、不動産業や金融業の資産調査に使うデジタルカメラのデータ、建設現場などの航空写真、書籍を作るための大量の図形や文書、巨大なビデオデータなど共有データを必要とする、現場の激務の中で仕事をするプロフェッショナルに必要なファイルサーバーなどの存在を気にする事はありません。

せいぜい「オフィス兼自宅」のNASと一対一で転送してスペックを記事にするだけです。そもそも 802.11ac ったって、チャネルあたり 443Mbps しか出ないのです。4チャンネル束ねて 1.6Gbps とかド派手にパッケージにコンジキでド派手に書かれているけど、普通は端末側は対1チャネルしかないのですね。無線だと、普通カタログスペックの3割しか出ないというし、輻輳したり、「1チャネルを皆ンなで共有」なんて事すると、ひと昔の3G回線並みのが普通になります。まぁ YouTube で「昨日の大相撲のこの一番」を見るのには困りませんがね。5分の動画ストリーミングでも、5分間ゆっくり転送しても困りません
a0056607_07341480.jpg
早朝6時、たったあ2Gでえ9分とかありえない。
他はブチブチ切れるな。こりゃ朝飯の時間だ。

a0056607_07345371.jpg
802.11n 54Mbs でこれだ。 32Mbitps = 8bit(1Bit) * 4MByte/S うーむ納得できる数字だ
条件いい時間帯なんだけどね。


a0056607_07450859.jpg
無線じゃやっておれんぞ。
RJ-45のモジュラが壊れているのでUSB 2.0 アダプタ経由でやってみる。
それでも帯域はフルに使っている。そこそこだ。


そもそも端末側が 2.4Ghz 帯の 802.11n しか対応していなければ、まぁ「つながった!良かったね」そんな程度です。

ITメディアが提供する記事は鵜呑みにすべきではない、これが現場が必要とするプロのエンドユーザ環境なのです。

実際のエンドユーザさんは私たちの様なITバカではありません。業務の「その道に関してはプロ」なのです。ヘビーユーザーなんですね。60分の映像データでも10秒で共有ストレージにアップロードしなければならない。400枚の高解像度のカメラの映像から使える画像をピックアップする。そんなプロのオフィスユースには、とてもじゃありませんが、無線はお勧めできない。みんな昼飯食いに行くしかない。

これもまた聞きなのですが、生産現場の ITエンジニアに、せいぜいオフィスとブラウザ程度しか使えないペラペラのノートPC配ってドメインのポリシーでロックダウンかけたという事でエラそーに言っていた営業出身の某経営者がいました。これでどーやって Linux のサポートするのよ、って渡された本人怒っていましたけどね。これなら紙とエンピツの方がよっぽどましだぞって。

環境は統一したいけど、現場にいかに適合した環境もまた検討できるかが勝負なのです。




無線LAN トラブル 有線接続 インターネット 接続できる LANに接続できない 


[PR]
by islandcenter | 2017-07-22 12:58 | プライベートクラウド | Trackback | Comments(0)

エレコムから 89,800 8Port の 10GbaseT HUB が出ました。


この手のデバイスはチップメーカーが出し始めると、別ブランドでも同じチップを使ったより低価格のモノが出てくるものです。1ポート 12,000 円台と言うのは完全に普及価格帯ですね。もっとも使われるのは小規模なデータセンターやサーバールームの iSCSI NAS との接続だったり、バックアップデバイスとの接続に限られてしまうのでしょうが、光ファイバーより遥かに取り扱いが容易なので、仮想環境下でのサーバー : ストレージ間の接続には有力な選択肢となります。

Nbase-T(802.3bz) はどうなる。

Cat5e ケーブルで 2.5Gbps や 5Gbps で通信できるマルチギガビットネットワークはどうなる? たぶん普及しないだろう。というより、高性能な HUB, NIC が 802.3bz に対応したポートが付いていれば、1Gでも10Gでもなく、ネゴシエーションの結果 2.5Gbps で繋がっちゃった、という結果になるのでしょうね。まだ対応した NIC や HUB がなく 10Gbps が使えるようになれば Wifi のボトルネックは吸収されてしまうから、2.5G/5G のケーブルインフラの問題だけとなります。幹線の 10Gbps 化が進めば、2.5/5G の速度はフロアの配線インフラを有効に使いたいという出番だけでしょう。元々 10Gbps はそれなりに普及する以前の段階で標準化が進んでいるわけです。

--
とにかく驚きなのは、ネットワークの専用機器メーカーではなく、エレコムという周辺機器メーカーから 10GbaseT HUB が出たことです。他の周辺機器メーカーでも同様な製品が続々とでてくるのではないでしょうか。



[PR]
by islandcenter | 2016-10-06 10:49 | プライベートクラウド | Trackback | Comments(0)

Administrator 以外の一般ユーザがリモートデスクトップPCクライアントを利用できない。

- 現象 -

ドメインに参加しているPCに対して Administrator@mydomain.intra ユーザがログオンすることができるが、一般ユーザ user@mydomain.intra がログインできない。MSTSC からログインしようとすると

このリモートコンピューターにログオンするには"ターミナルサービスを使ったログオンを許可する" 権利が必要です.....」

a0056607_11044474.jpg
と表示されログインできない。なお、このユーザは "Remote Desktop Users" グループに所属させている。
a0056607_11052581.jpg


- 対策 -

リモートデスクトップPCに接続するユーザを「対象のPC」にリモートデスクトップ接続できる様にリストに追加する必要がある。

具体的には、Administrator@mydomain.intra でログインしてから、コンピューター > 右ボタン「プロパティ」 > リモートデスクトップ接続、の中の「ユーザの選択」の中に「追加」ボタンから、リモートデスクトップ接続を許可するドメインユーザ(もしくは別途作成したユーザグループにユーザを追加し)を検索して「追加」する必要がある。
a0056607_11060802.jpg

ちなみに、このグループに Built in Group である"Remote Desktop Users" はリストに出ないため選べない。(すごい仕様だ)
a0056607_09310267.jpg
ビルトインの Remote Desktop Group なんてないじゃん。

この作業を行わないと、ドメインユーザがVDIなどのサーバーにインストールされた仮想PCのリモートデスクトップが利用できない。
a0056607_09313717.jpg
これはおなじみだったりする

ちなみに、この問題のユーザを ドメインの中で "Remote Desktop Group" から削除しても、ローカルPCにリモートデスクトップユーザ、あるいはユーザグループとして登録しておけば、問題なく接続できる。(つまりDCで Remote Desktop User を設定しても無意味なんだな、何のためのDCなのよ...とほほ)DCサーバー側からの制御はできない。

a0056607_11052581.jpg
本当か .....? ってかこの方法しかなかったンだけど、他にいいアイディアがある方はコメントください。



ちなみにユーザかグループは選べるが、コンテナ(OU) は選択できない非常におバカな仕様である。当たり前だが Novell eDirectory よりバカだな、やっぱり Windows って。


[PR]
by islandcenter | 2016-04-01 11:13 | Windows | Trackback | Comments(0)

Windows10 で動かす Zabbix2

タイトルこそ "Windows10 で動かす Zabbix2" ですが、実際は"Windows10 の Hyper-V で動かす Zabbix2 アプライアンス"が正解です。

何かと Linux を使うという事は「専門性」が要求されるわけですが、自称"オープンソース専門家"ではなくても使えるオープンソースという考え方は重要だと思います。

ここでは Zabbix 2.2 仮想アプライアンスを Windows10 の Hyper-V 環境で動かすことを前提としています。

※ 最新の Zabbix 3.0 は Ubuntu ベースで、死ぬほど苦労したにも関わらず、動作させたところ不安定なところがいくつか見受けられました。また致命的な変更点は、通信の暗号化程度で、インターフェースがコスメティックに変化していた程度でした。ここでは 2.2 の利用方法を説明しています。まぁ現在 openSUSE が leap 版だという事もあり Zabbix 3.0 がUbuntu でも仕方がないでしょう。

- Zabbix アプライアンスの入手 -

Zabbix アプライアンスはこちらから入手します。ここでは Hyper-V を使用しましたが、仮想環境があるのであれば、 XEN でも KVM, VMware のイメージでも構いません。
または

※ここでは Zabbix2.2 の説明をしています。ダウンロードするアプライアンスも 2.2 を取得してください。また、Zabbix アプライアンスは小規模ネットワークでの評価目的ですので、数千台のサーバーがあるデータセンターでの導入だとか、詳細なサポートは Zabbix LLC. のサポートを強くお勧めします。

アプライアンスの詳細はこちらのドキュメントをご参考ください。デフォルトのパスワードなどが記載されています。

-Zabbix アプライアンスの実装-

VHD の圧縮イメージを入手したら、任意のディレクトリに解凍します。

Hyper-V ウィザードから Zabbix アプライアンスの VHD イメージを実装します。
「新規仮想マシン」を作成します。ここでは Hyper-V の細かな導入、設定、操作方法は説明していませんのであしからずご了承ください。Hyper-V のデフォルトでネットワーク構成が「なし」(笑)なので、必ず、ブリッジを指定します。
ただし、仮想ハードディスクは「既存の仮想ハードディスクを使用する」から、解凍した VHD イメージを指定します。
a0056607_08162890.jpg

これがサマリです。必ず"ネットワーク"はブリッジ接続しましょう。デフォルトは "なし"です。
a0056607_08171013.jpg

Hyper-V マネージャから仮想アプライアンスに接続して起動すると openSUSE が起動して、仮想アプライアンスが起動します。root/zabbix のデフォルトでコンソールに接続できます。
a0056607_08193228.jpg

仮想アプライアンスは SUSE Linux で作られているため、あらかじめMicrosoft 製 Hyper-V 用の仮想ドライバが組み込まれています。

zabbixhv:~ # cat /var/log/messages | grep Microsoft
2016-03-22T02:13:06.804337+00:00 zabbixhv kernel: [ 0.000000] DMI: Microsoft Corporation Virtual Machine/Virtual Machine, BIOS 090006 05/23/2012
2016-03-22T02:13:06.804340+00:00 zabbixhv kernel: [ 0.000000] Hypervisor detected: Microsoft HyperV
2016-03-22T02:13:06.806502+00:00 zabbixhv kernel: [ 13.505447] input: Microsoft Vmbus HID-compliant Mouse as /devices/virtual/input/input4
2016-03-22T02:13:06.806505+00:00 zabbixhv kernel: [ 13.505490] hid 0006:045E:0621.0001: input: <UNKNOWN> HID v0.01 Mouse [Microsoft Vmbus HID-compliant Mouse] on
zabbixhv:~ #

-IP の固定化-

openSUSE の yast ツールを使って、DHCP アドレスから固定 IP に変更します。

# yast

から Network Devices > Network Setting を開き
a0056607_08202214.jpg

DHCPだった IP の設定をEdit から Static/SubnetMask に変更します。
その他 'Hostname/DNS' タブと 'Routing' タブの DNS と Default Route を変更して OK を押します。
ついでに DNS 名、ホスト名が linux-xxxxx.site となっているので、例えば zabbix22.yourcompany.com などに変更します。変更結果は再起動した後、プロンプトに設定したホスト名に変更されます。
a0056607_08240357.jpg
※ ちなみに Zabbix Appliance には yast に必要なメニューしかバンドルされていません。 # zypper install yast2* を実行すると、様々な楽し気でナイスなメニューが出てきます。使えないものもありますが ......

-NTP の変更-

NTP は公共の ntp プールを使っているので、できれば、LAN内部の NTP サーバーを使用するようにしましょう。
a0056607_08243787.jpg

yast > Network Service > NTP servivce の Add メニューから "Server"、 イントラネット内部の NTP サーバーを指定します。実際通信できているかは TEST ボタンを押して確認します。
a0056607_08250863.jpg

これが出来上がった ntp の状態です。デフォルトで Hardware Clock が指定されていますが、これは削除するのがよいでしょう。
a0056607_08255976.jpg
-PHP.ini の書き換え-

php.ini の書き換えはタイムゾーンの変更だけです。ここだけは vi を使います

# vi /etc/php5/apache2/php.ini

で php.ini を開き

# date.timezone = 'UTC'
の部分をコメントアウトして
date.timezone = Asia/Tokyo
に変更します。

zabbixhv:/etc/php5/apache2 # ls php.ini
php.ini
zabbixhv:/etc/php5/apache2 # cat php.ini | grep timezone
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
#date.timezone = 'UTC'
date.timezone = Asia/Tokyo
zabbixhv:/etc/php5/apache2 #

なお、PHP は Zabbix アプライアンス内部で最適化されているようです。百台程度のデバイスの評価目的ならメモリなどのチューニングはデフォルトのままで結構でしょう。ソースから導入する場合は、 php.ini を書き換える必要があるそうです。

HOSTNAME の変更が反映されるよう、サーバーを再起動して、NTP や Apacheなどが起動したら、ブラウザのフロントエンドからブラウザのアドレスバーに、固定したアドレスをセットして Admin/zabbix でログインします。
a0056607_08264524.jpg
Monitoring > Graphs の右端の時刻が日本時間になっていれば php.ini のタイムゾーンの設定はOKです。
a0056607_08273906.jpg
※ここでのキャプチャ画面は英語ですが、右上のプロファイルメニューから日本語に変更できます。

- 監視対象ホストの設定 -

Configuration > Host から "Create Host" ボタンを押して、監視対象のホストを登録します。
a0056607_08290076.jpg
"Host Name", "Visual Name" をセットして
- "Agent Interface" -- エージェントがなければ空欄でも構いません。
- "SNMP Interface" に Add ボタンで監視対象のコンピュータの "DNS名"、もしくは IP を設定します。DNS名を設定した場合、IP アドレスは空欄でも構いません。一旦 "Save" しましょう。
a0056607_08293183.jpg
次にHost の "Template" タブを開き Link new Template から Template SNMP OS Linux を選びます。空欄に "snmp" と入れると、テンプレート snmp のリストが出るので、一番近いテンプレートを選び 'Add' し、'Save' します。
a0056607_08300907.jpg
監視対象が Windows や NAS, スイッチング HUB などの場合は "SNMP Generic" など近いものを選ぶと良いでしょう。


ここから5分ほど置いてからホスト一覧を再読み込みしてください。 Availability のところが"緑色" になっていれば、 SNMP 監視が始まっています。登録した当初は Grafhs(x) の値が0になっていますが、 Zabbix がデータを収集し始めると、設定されたアイテムに従って、グラフデータを収集し始めます。
a0056607_08313099.jpg

SNMPの監視が始まってから約1時間待つと、"Graph" の数値が 0 からいくつかのグラフ数が入り、描画が始まります。
Monitoring > Graph を選び、右のトグルボタンから"Group"、"Host"、"Graphの対象(Eth0など)" を選ぶとグラフが表示されます。
a0056607_08323381.jpg
※ここはとにかく1時間じっくり待ちます。とにかく慌てないこと。

-監視対象は SNMP が動いているか-

監視対象デバイスで snmp が動いているかどうかは snmpwalk を使って確認します。一般的な NAS やスイッチングHUB などの場合、 バージョンは version '2c' コミュニティ名は Read Only(RO) の 'public' を指定すればよいでしょう。この記事では Trap の機能までは説明しません。

ちなみに SUSE Linux はデフォルトでは正しく動作しません。net-snmp パッケージを導入して snmpd.conf の Community 行の書き換えが必要です。snmpwalk に使用する OID .1.3.6.1.2.1.1 などは、MIB 関連のドキュメントを読んで勉強してください。(と逃げる)

zabbixhv:~ # snmpwalk -v 2c -c public dns2.intra .1.3.6.1.2.1.1
Created directory: /var/lib/net-snmp/mib_indexes
SNMPv2-MIB::sysDescr.0 = STRING: Linux dns2 3.0.101-63-xen #1 SMP Tue Jun 23 16:02:31 UTC 2015 (4b89d0c) x86_64
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10

: 略

zabbixhv:~ #

とズラズラ帰ってくれば、Zabbix の snmp での状態監視はできるようです。帰ってこない場合は、コミュニティストリングが違うとか、snmp が disable になっているとか、snmp なんて機能ないよ、という SOHO 機器の場合に起こりえます。諦めましょう。


- デスクトップPCでも試せる Zabbix -

実際、この体験はデスクトップPCではなく、一般的なモバイルPCで行いました。特別なサーバーハードウェアを用意しなくても Zabbix の "体験"ができるのは貴重なことです。

この体験を通じて本格的なネットワークモニタリングツールの導入、運用、トレーニングができればと思います。


あわせて読みたい
まぁ、長期運用はやめた方がいいようですね。




[PR]
by islandcenter | 2016-03-23 08:33 | プライベートクラウド | Trackback | Comments(0)

ネットワーク管理者にとっては、シャドウIT、シャドウクラウドはセキュリティ上でも、運用の上でも脅威の一つです。
その中でも極悪なのが Microsoft の OneDrive です。OneDrive はローカルに保存したデータを、クラウドに転送しようとするため、ただでさえ空けておきたい上り回線に大きな負荷をかけてしまいます。

OneDrive のアイコン自体が非常に目立つところにあるので、エンドユーザとしては「便利なのかどうなのか」の判断もなく、そこにファイルを重要なのか、共有したいのか、モバイル機器でも利用したいのか、という判断なく保存します。目立つところにあるから保存してしまうのですね。その結果がどうなるのかは全く気にしない、というのが普通の企業内のエンドユーザ様の行動です。

内部構造がどうなっているのかはわかりませんが、最悪な作りは、「データベースの差分」を同期するのではなく、「ファイルそのものの同期」です。この手のアプリケーションサービス固有の問題として、コッチのPCで編集して、アッチのPCで編集なんかすると Notes や Evernote の様な、「同期エラーによる複製」が作られてしまう可能性もあり、決して便利とは言えません。

ははーん、これ使えばUSBメモリがなくても自宅で風呂敷残業できるンだなぁ。と気が付くエンドユーザさんはまだいい。これで「USBメモリによる重要データの持ち出し禁止」のルールを別な方法で、しかもシステム管理者、セキュリティ担当者に気づかれずに社内ルールには合法的に行う事ができるのですから、非常に便利であるし、運用側からするとリスキーな機能そのものなのです。

ある日、やけに Outgoing のトラフィックが多いなぁ。これは情報漏えいか、DDoS の踏み台にされていたのかと気になっていたので調べたら原因は OneDrive でした。

また、ノートブックなどで、スマートフォンのテザリングを有効にしている間、メールチェックのつもりが、OneDrive の同期なんかが始まってしまうと、通信容量制限にあっという間に引っかかったり、従量制課金の場合、後で怖い請求書を見る事になります。

という事で、OneDrive を無効にする方法。

gpedit を起動 > ローカルコンピュータポリシー> 管理用テンプレート> Windows コンポーネント> OneDrive の 「OneDrive を記憶域として利用できない様にする」 を 「有効」にします。
a0056607_20412797.jpg


再起動すると OneDrive 自体がエクスプローラから綺麗さっぱり消え去ってくれます。

--
あのぉ、ウチのは Pro じゃなくて 無印版なんですけどぉ。と言う方、そもそも 無印版を企業で使う事自体オカシイです。そういう質問を必死にしていた方が Microsoft Community にいらっしゃいましたが、質問する事自体、おかしいですね。 SOHO の場合は逆に OneDrive は便利だ、と考えて積極的に、あなたの猫の写真の保管場所にでもすることをお勧めします。タブレットとかスマホで他人に簡単に自慢できますから。そういう機能なんです。

その他の情報はこちら
islandcenter.jp


- Keyword -
Windows10 OneDrive 削除 非表示 トラフィック 従量課金 低減



[PR]
by islandcenter | 2015-08-15 13:19 | Windows | Trackback | Comments(2)

特定のデバイスが snmp に対応しているか、あるいはイネーブルにして動作しているかどうかを確認するには snmpwalk を使います。

SUSE Linux の場合、net-snmp パッケージが導入されている必要があるので、
yast(or yast2) > Software > Search "snmp" で検索して、スペースキーで Accept してインストールすることができます。

Linux のコンソールから

snmpwalk -v 2c -c public MyDeviceIP .1.3.6.1.2.1.1

を実行します。パラメータは

-v 2c ... snmp version 2c
1 - 生存確認を返すだけ(プリンタなどはこのケースが多い)
2c - 一般的に利用される
3 -- 2c と同じ内容を暗号化する(一般的に設定が面倒で使いづらい)

-c public (コミュニティ名)

MyDeviceIP のアドレスかホスト名(myserver.intra)

OID は

.1.3.6.1.2.1.1 が一番使いやすいでしょう。

.1.3.6.1.2.1 までは決まり事の様なもの、ほとんど全部のステータス
.1.3.6.1.2.1.1 は更に枝葉の部分だけを取り出すこと
.1.3.6.1.2.x.x によって枝葉の部分を特定できる。

このあたりは、snmp の詳しいサイトや教科書でリファレンスを調べましょう。
MIB とか OID について入門編はこのITmedia の記事で何となく理解できます。
図解で知るSNMP――MIB情報のすべて

-Sample-

sles11:~ # snmpwalk -v 2c -c public device.intra .1.3.6.1.2.1.1
SNMPv2-MIB::sysDescr.0 = STRING: Linux dns2 3.0.13-0.27-xen #1 SMP Wed Feb 15 13:33:49 UTC 2012 (d73692b) x86_64
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (86836941) 10 days, 1:12:49.41
SNMPv2-MIB::sysContact.0 = STRING: Administrator
SNMPv2-MIB::sysName.0 = STRING: dns2
SNMPv2-MIB::sysLocation.0 = STRING: Right here, right now.
SNMPv2-MIB::sysServices.0 = INTEGER: 76
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (582) 0:00:05.82
SNMPv2-MIB::sysORID.1 = OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance
SNMPv2-MIB::sysORID.2 = OID: SNMP-MPD-MIB::snmpMPDCompliance
SNMPv2-MIB::sysORID.3 = OID: SNMP-USER-BASED-SM-MIB::usmMIBCompliance
SNMPv2-MIB::sysORID.4 = OID: SNMPv2-MIB::snmpMIB
SNMPv2-MIB::sysORID.5 = OID: TCP-MIB::tcpMIB
SNMPv2-MIB::sysORID.6 = OID: IP-MIB::ip
SNMPv2-MIB::sysORID.7 = OID: UDP-MIB::udpMIB
SNMPv2-MIB::sysORID.8 = OID: SNMP-VIEW-BASED-ACM-MIB::vacmBasicGroup
SNMPv2-MIB::sysORDescr.1 = STRING: The SNMP Management Architecture MIB.
SNMPv2-MIB::sysORDescr.2 = STRING: The MIB for Message Processing and Dispatching.
SNMPv2-MIB::sysORDescr.3 = STRING: The management information definitions for the SNMP User-based Security Model.
SNMPv2-MIB::sysORDescr.4 = STRING: The MIB module for SNMPv2 entities
SNMPv2-MIB::sysORDescr.5 = STRING: The MIB module for managing TCP implementations
SNMPv2-MIB::sysORDescr.6 = STRING: The MIB module for managing IP and ICMP implementations
SNMPv2-MIB::sysORDescr.7 = STRING: The MIB module for managing UDP implementations
SNMPv2-MIB::sysORDescr.8 = STRING: View-based Access Control Model for SNMP.
SNMPv2-MIB::sysORUpTime.1 = Timeticks: (582) 0:00:05.82
SNMPv2-MIB::sysORUpTime.2 = Timeticks: (582) 0:00:05.82
SNMPv2-MIB::sysORUpTime.3 = Timeticks: (582) 0:00:05.82
SNMPv2-MIB::sysORUpTime.4 = Timeticks: (582) 0:00:05.82
SNMPv2-MIB::sysORUpTime.5 = Timeticks: (582) 0:00:05.82
SNMPv2-MIB::sysORUpTime.6 = Timeticks: (582) 0:00:05.82
SNMPv2-MIB::sysORUpTime.7 = Timeticks: (582) 0:00:05.82
SNMPv2-MIB::sysORUpTime.8 = Timeticks: (582) 0:00:05.82

sles11:~ #


islandcenter.jp
[PR]
by islandcenter | 2014-04-30 12:00 | プライベートクラウド | Trackback | Comments(0)

普段、ネットワークの製品を導入するにあたり、ipv6 などは、まずSOHOやある程度の企業のネットワークでは使いません。勿論オフィスのダニにRIFD タグなぞ付けてビッグデータを使うというのであれば、必要かもしれません。

なぜか優先LAN接続している接続状態が「パブリックネットワーク」をデフォルトのプロファイルとするので、「診断」してみたら、こんなのが出てきました。

a0056607_6335615.jpg


なんじゃこれ、というところでしょうか。

これはこれでいいとして、例えばBYODのために無線LANアクセスポイント(ルータ)なんぞを定義したとしましょう。もしDHCP機能がデフォルトでオンだと ipv6 を使わないアドレス体系でも、自動的に「持ち込みPC」はipv6 ネットワークに参加できてしまう。

勿論、外部接続するルータなんぞは ipv6 の設定をしていなければ、別に ipv6 で出ていくことはないのでしょうし、デフォルトで ipv4 とのデュアルスタックであれば、デバイスは問題なくネットワークに接続できます。

しかし、ネットワーク管理者の「知らない世界」で ipv6 ネットワークが構成されてしまうと、非常に厄介な問題が起こりそうです。外部から持ち込んだ「 ipv4 のない」機器が、ディユアルスタックのデバイスに接続して、そこを介して、社内のシステムにつながってしまうという危険性が「ない」とは私は断言できません。

Windows 系のシステムは DNS の設定より MSbrowse の機能を優先するため、ネットワーク内部で、「管理者の知らない」デバイスがつながってしまうと、DNSを無視して ipv6 の独自のネットワークを構築してしまう可能性があります。

ipv4 は arp を使って MAC アドレスを検出しますが、 ipv6 は ICMP をつかうらしいので、一般的な接続検出アプライアンスでは、デバイスの検出ができないのです。

Windows はまたこまった仕掛けを作ってくれまた。


islandcenter.jp
[PR]
by islandcenter | 2013-11-26 06:50 | Windows | Trackback | Comments(0)

Windows 2008 はマスタブラウザのデフォルトがオフです。
そのため、エクスプローラから「ネットワーク」を開いても、正しい情報が出ない場合があります。これは、最新のサーバを導入したにもかかわらず、Windows サーバがマスタブラウザとして機能を発揮しないため、その他の Windows 7 なり XP なりが自動的にマスタブラウザとしてネットワークの情報を保持してしまうことになるわけです(たぶん)

Windows 2008 をマスタブラウザーとするには

-「サービス」の"Computer Browser"を有効にして起動
- [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Browser\Parameters] > "MaintainServerList"="Auto" から Yes に

target="_blank">http://technet.microsoft.com/ja-jp/library/cc722044(v=ws.10).aspx

a0056607_13494221.jpg


に設定しておけば、必ず Windows 2008 がマスタブラウザとなるため古いコンピュータやデスクトップPCが勝手にマスタブラウザになるということが防げるはず、ということになります。

これ以前の Windows XP/2003 系は「自動」で Auto なので、マスタブラウザが Auto (勝手に)切り替わってしまうため、マスタブラウザが「どれ」なのかは nbtstat コマンドで一々調べるしかありません。

ちなみに Windows 7 では”Computer Browser”のサービスは「手動」ですが「開始」されています。おそらく、エクスプローラの「ネットワーク」を開いたときに勝手に起動するようになっていると想像しています。
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Browser\Parameters]
のデフォルトではキーもありませんでした。おそらく、これも推測ですが、 Windows 7 がマスタブラウザーとなったときに勝手につくられるのかもしれません。

私は SUSE Linux で Samba を使っているので、これをマスタブラウザとしています。
Windows 7 ネットワークに表示されない - SUSE + samba で解決する。


islandcenter.jp
[PR]
by islandcenter | 2013-05-23 14:08 | Windows | Trackback | Comments(0)

タブブラウザが一般的になり、ブラウザの種類も増えると、一つのコンピューターで多くのウェブページを開いて...ということが一般的になってきました。おまけに gmail や google Calender などのクラウドサービスを標準で使う所もあるでしょう。BYODによって、持ち込みのBYODタブレットを社内の無線ルータにつないで、「トイレの個室で Youtube を見る」なんてことも当たり前になります。

そうなると、いかにWAN回線の効率化を行うかが課題となります。

ここではSUSE Linux 11 で squid キャッシュを作り、チューニングを行う方法を説明します。

SLES11 ではデフォルトでは squid 2.7 系がインストールされます。目先を変えてここでは squid 3.x 系をインストールしてみました。

参考文献:SUSE 公式(日本語)
第30章 Squidプロキシサーバ

-インストール-

YaST > Software Management より squid を検索すると、 squid 2 と 3 の選択肢が出てきます。
a0056607_18382847.jpg

スペースキーで "Squid 3 WWW Proxy" を選びます。

Yast(YaST2) でインストールすると、 2.7 系に上書きされてしまうので Yast 用のプラグインは無効(削除)にしておくと良いでしょう。ここでは squid3 をインストールします。

squidcache:/etc/squid # rpm -qa | grep squ
:squidGuard-1.4-13.6.1
squidGuard-doc-1.4-13.6.1
squid3-3.1.12-8.10.1
squidcache:/etc/squid # :



SUSE のパッケージにある squid3 の conf ファイルは以下の通りです。従来のマニュアルを兼ねた squid.conf は必要最小限の設定ファイルとなりました。従来の形式の squid.conf は squid.conf.documented に置き換えられています。

squidcache:/etc/squid # ls -l
total 244
-rw-r--r-- 1 root root 419 Dec 22 2011 cachemgr.conf
-rw-r--r-- 1 root root 419 Dec 22 2011 cachemgr.conf.default
-rw-r--r-- 1 root root 1547 Dec 22 2011 errorpage.css
-rw-r--r-- 1 root root 1547 Dec 22 2011 errorpage.css.default
lrwxrwxrwx 1 root root 26 Apr 10 13:40 errors -> /usr/share/squid/errors/de
-rw-r--r-- 1 root root 11651 Dec 22 2011 mime.conf
-rw-r--r-- 1 root root 421 Dec 22 2011 msntauth.conf
-rw-r--r-- 1 root root 421 Dec 22 2011 msntauth.conf.default
-rw-r--r-- 1 root root 2557 Dec 22 2011 squid.conf
-rw-r--r-- 1 root root 2557 Dec 22 2011 squid.conf.default
-rw-r--r-- 1 root root 200091 Dec 22 2011 squid.conf.documented



-設定-

squid.conf の初期設定は次のように非常にすっきりしたものになっています。

squidcache:/etc/squid # cat squid.conf
#
# Recommended minimum configuration:
#
acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1

# Example rule allowing access from your local networks.
# Adapt to list your (internal) IP networks from where browsing
# should be allowed
acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
acl localnet src 172.16.0.0/12 # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
acl localnet src fc00::/7 # RFC 4193 local private network range
acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines

acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT

#
# Recommended minimum Access Permission configuration:
#
# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access deny manager

# Deny requests to certain unsafe ports
http_access deny !Safe_ports

# Deny CONNECT to other than secure SSL ports
http_access deny CONNECT !SSL_ports

# We strongly recommend the following be uncommented to protect innocent
# web applications running on the proxy server who think the only
# one who can access services on "localhost" is a local user
#http_access deny to_localhost

#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#

# Example rule allowing access from your local networks.
# Adapt localnet in the ACL section to list your (internal) IP networks
# from where browsing should be allowed
http_access allow localnet

# Allow localhost always proxy functionality
http_access allow localhost

# And finally deny all other access to this proxy
http_access deny all

# Squid normally listens to port 3128
http_port 3128

# We recommend you to use at least the following line.
hierarchy_stoplist cgi-bin ?

# Uncomment and adjust the following to add a disk cache directory.
#cache_dir aufs /var/cache/squid 100 16 256

# Leave coredumps in the first cache dir
coredump_dir /var/cache/squid

# Add any of your own refresh_pattern entries above these.
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320
squidcache:/etc/squid #



-変更部分-

デフォルトで使ってもかまいませんが、一般的なものとしてここでは 8080 のポート番号にしました。 cachemgr を使う場合を考慮して 80 はあえて使いませんでした。

# http_port 3128
http_port 8080



-追加部分-

# キャッシュディレクトリの指定がコメントアウトされているので、キャッシュサイズ(ここでは8G)、階層数を記述します。

#cache_dir aufs /var/cache/squid 100 16 256
cache_dir ufs /var/cache/squid 8000 16 256



# パフォーマンスに関わる記述です。最大キャッシュオブジェクトサイズは 128Mb としました。

maximum_object_size 128 Mb
maximum_object_size_in_memory 32 Mb



#dns キャッシュを行う場合のDNSサーバーのアドレスです。
#イントラ用DNSと google のDNSキャッシュを指定しました。
#(覚えやすいので...)

dns_nameservers 192.168.1.2 8.8.4.4 8.8.8.8

# squid のバージョンや内部の IP アドレス、ホストを相手に記録させないための設定です。
# 一部のサイトでは匿名プロクシ経由のアクセスを禁止する場合があるため、
# この設定をしました。


via off
header_replace User-Agent Nutscrape/1.0 (CP/M; 8-bit)
visible_hostname unknown
forwarded_for off

※header_replace の行は効果があるとは思えないのですが....

この状態で squid を起動します。/etc/init.d/squid start をしても良し、yast > System > System Service(Runlevel) で初期起動設定を行い start しても良いでしょう。

a0056607_18474751.jpg


「かくにん君」などのサイトにアクセスしてみて squid キャッシュ経由で、squid のバージョンや内部ホスト名などの情報が漏洩していないことを確認します。デフォルトのままだと、squid キャッシュのバージョンから、内部のPCの名前、ローカルアドレスなどがバレバレとなってしまいます。かくにん君はこちら
http://www.ugtop.com/spill.shtml
a0056607_18495923.jpg

LAN内での運用ということでこういう設定にしました。LAN 外部に設置する場合、全世界に「匿名串」を提供することになるので注意が必要です。

-動作確認 cachemanager-

squid には squidclient という「動作状態確認ツール」がありますが、ここでは cachemanager を使います。
事前に apache2 をインストールしておきます。cgi を /srv/www/cgi-bin にコピーします。

squidcache:/etc/squid # find / -name "cachemgr*"
/usr/lib64/squid/cachemgr.cgi
/usr/share/man/man8/cachemgr.cgi.8.gz
/usr/share/doc/packages/squid3/scripts/cachemgr.readme
/etc/squid/cachemgr.conf.default
/etc/squid/cachemgr.conf
squidcache:/etc/squid # ls /srv/www/
cgi-bin htdocs
squidcache:/etc/squid # cp /usr/lib64/squid/cachemgr.cgi /srv/www/cgi-bin/ -v
`/usr/lib64/squid/cachemgr.cgi' -> `/srv/www/cgi-bin/cachemgr.cgi'

squidcache:/etc/squid #



cachemanager の conf ファイルを修正します。デフォルトポートを使う場合は変更の必要はありませんが、 8080 のようにポート番号を変えた場合は次のように変更します。

squidcache:/etc/squid # cat cachemgr.conf
# コメント行略
localhost:8080
squidcache:/etc/squid #


ここで apache2 をリスタートさせます。

# /etc/init.d/apache2 restart



ブラウザから

http://MySquidCache.intra/cgi-bin/cachemgr.cgi



にアクセスします。パスワードは設定していないので localhost:8080 を選んだまま continue します。
a0056607_18544239.jpg


# squidclient -h localhost -p 8080 mgr:client_list

を実行した時と同じ内容の動作状態がブラウザで確認できます。メニューの 2/3 あたりに client_list を確認するリンクがあります。
a0056607_18552396.jpg


cachemgr はブラウザでどのユーザからも参照できます。ただし一部の作業を許可する場合は、次のように squid.conf に記述を追加します。シャットダウンを許可する場合は

# cache_mgr
cache_mgr squidman
cachemgr_passwd yourpassword shutdown



と記述します。
a0056607_1224625.jpg

シャットダウン操作だけ Authentication (squidman/yourpassword)が必要になります。cachemgr_passwd の許可するコマンドリストはsquid.conf.documented に詳しく書かれています。


一週間程度稼動させた squid3 のキャッシュヒット率は 40% を超えました。実際にはここまでは行くことはなさそうですが、業務の内容によっては20%程度は目標としておきたいところです。
a0056607_18563515.jpg


mrtg で見てみると、青線(output) が緑(in)よりはるかに多く 「ブラウザ立ち上げっぱなし」でかなり効果が出ているようです。
a0056607_10342097.png


--
本来は、"Youtube のコンテンツを快適にできないか" という不純な動機でした。しかし、これらの動画サイトや Windows Update といったサービスは「重い」にも関わらず、 squid ではキャッシュできないようです。ということで回線容量の確保にはあまり squid キャッシュサーバーは貢献できないようです。

また最近のブラウザはどれもこれらのコンテンツをブラウザキャッシュとして保管していない(できない?)ようです。これはおそらくサイト側の作りによってキャッシュが行われないような仕組みになっているためだろうなと思います。もし、他に良いアイディアがあればコメント下さい。


逆に「まじめにお仕事をしている」人にとっては、繰り返し参考にするウェブサイトは、キャッシュヒット率が上がります。隣のヤツが不純な動機でトイレで隠れて動画サイトばかりを見ていても、かなり快適に仕事ができるという「非常に良い効果」があるでしょう。

本来であれば、トランスペアレントにしても良いのですが、隊障害性対策やインフラやトポロジの変更が必要です。

zabbix2 で状態を管理していると、幾つかの Disk Busy のアラートが上がっていました。 /var/cache/squid は出来れば本体とは別なディスクデバイスを使い、別パーティションとしたほうが良いようです。あるいは、思い切りメモリを増設して RAM ディスクをキャッシュパーティションとするのも手段かも知れません。あるいは、SSDをキャッシュとするのも良いアイディアでしょう。SSDの寿命を考えてもどうせキャッシュデータですからそういう割り切り方も良いでしょう。

仮想環境で運用するならルートパーティションのディスクイメージはHDDに収容し、キャッシュ用の仮想ディスクは SSD という方法もあります。本来「キャッシュ」データですからSSDの寿命を考えても「消耗品」と割り切れば、この構成も良いアイディアでしょう。

個人的にはSSDをデータ保管のためサーバーで使うのは止めた方がいいと思いますが、キャッシュ目的で消耗品だと思えばそういう選択もアリだなと思います。

ということで、"きゃりーぱみゅぱみゅ"の「にんじゃりばんばん」を何十回もロードしたにも関わらず、 squid やブラウザキャッシュは有効にならずに、コンピューターの中ではなく私の頭の中にキャッシュされてしまいました。すっかり頭の中のキャッシュが「にんじゃりばんばん」です。トイレの隣の個室で「にんじゃりばんばん」を鼻歌でほざいていたら、私かも知れません。こういったコンテンツはコンピュータを使わず「心に染み付くまで楽しめ」というメッセージなのでしょうね。

※もっと「こうしたほうがいいよ」というご意見があれば歓迎します。

続き
squid の効率をチェックして、キャッシュをクリアする。


問い合わせは
islandcenter.jp


-Keyword-
SUSE SLES11 Squid3 キャッシュ 設定 チューニング
[PR]
by islandcenter | 2013-04-10 19:03 | SUSE | Trackback | Comments(0)

ip-sentinel をはじめとする arp poisoning の技術を使った「認証されていないデバイスの接続拒否」システム(検疫システム)やプログラムをいろいろと検討してみました。

http://www.nongnu.org/ip-sentinel/

ip-sentinel はデバイスが吐き出す arp のブロードキャストをキャプチャして、リストにない mac アドレスを検出すると、その mac アドレス(未登録デバイス)に偽の mac アドレスを送りつけて(arp poisoning)、未登録デバイスが目的の機器、ネットワークへの接続を阻止します。 ip-sentinel 自体は非常に単純な機能しかないし、C言語で書かれた僅かなコードは、マイコンCしか知らない私でも、何とか「どこでエラーを返しているか」くらいは調べられる単純なプログラムでした。ソースも古く、「これだけでまず必要十分」な機能だけを備えています。

この20Kbほどの小さなプログラムの実運用にはかなりスクリプトなどと組み合わせた運用方法を考えなければ使いこなすのは困難そうなので、他に何か良い製品はないかと調べてみました。

しかしこの仕組み(arp ポイズニング)を使った、検出アプライアンスや通信遮断ソフトウェアをいろいろと調べてみると、ほぼどこの製品でも ipv6 は対応していませんでした。

ipv6 では通信経路を見つけるため arp を使わず、 ICMP を使うためです。

--

ここで「はてipv6 って何だ」ということになるのですが、どこに情報を探ってみても「ipv4」とは似て非なるもの、全く異なるもの、と評価している人が多いようです。ここで問題となるのは ip-sentinel をはじめ、同様な機能を持った「未登録デバイスの検疫遮断システム」なるものは、現状の環境ではほとんど ipv6 の前には使い物にならないということです。

もっとも、社内のルータやソフトウェアが ipv4 にしか対応させていない以上、これらのデバイスにはアクセスできませんが、ネットワーク内部に ipv6 のみの機器同士を適切に設定すると通信できてしまうわけですね。たぶん。

何しろ「世界中の石ころにもIPアドレスが振れる」んじゃないかというアドレス空間ですから、ほとんどのデバイスが「グローバルアドレス」に近いものを持ちます。従って、ipv6 対応の端末が、持ち込まれると、ipv4 ルータの外へは無理としても社内に持ち込まれてしまうとどうしようもありません。特に管理しているPCで ipv4 と ipv6 をデュアルスタックにしていれば、致命的でしょう。このような端末であれば、ipv6 を喋る端末からもアクセスできてしまうし、 ip-sentinel のような検出遮断ツールからも遮断できません。

となると、対策は一つ

「管理できるデバイス、PCは ipv6 を完全に無効にする」

しか方法はありません。

BYODを積極的に取り入れる場合、持込端末の制御はユーザに嫌われる以上、これらの端末の ipv6 の無効化はユーザに歓迎されません。これらの端末が不用心なBYODポリシーの中で持ち込まれると対応のしようがないわけです。

--

Novell は ipx から IP に完全に移行して「ipxを殺す」ために、NetWare 4x では ip/ipx ゲートウェイという機能でNATのような機能を提供を始め 1998年の NetWare 5 で完全にIP対応してから、デュアルスタックに移行し、昨年の OpenEnterpriseServerr 11 (OES11) の発売で「ip/ipxデュアルスタックを完全に殺す」ことに成功しました。今では Windows XP クライアントのみが ipx 接続のために残されています。

OSX以降の Macintosh は詳しくないのですが、90年代に大流行した Appletalk を殺すことに成功しているようです。

これは1ベンダー、あるいは1ユーザの中でクローズした世界でのことで、世界中に無限大に存在する ipv4 資産を持つステークスホルダーを「殺す」まで、いったい何十年かかることでしょう。たぶんボクが生きている間は不可能じゃないか、という気すらします。今後、数十年は、販売されるデバイスが ipv4/6 のデュアルスタック対応となるでしょう。

もっとも、この数年間は「ウチには ipv6 は必要ない」と思う方がほとんどでしょう。問題の先送りなのかも知れませんが、私もそう思います。

あるいは、「自分のネットワークだけは早期に ipv6 にしてしまおう」その考え方も投資効果は別として積極的で結構だと思います。

もし、イワシが持っている携帯電話を調べて、次にどのイワシがどのマグロに食われるかを予想するようなビッグデータを使ったアプリケーションが大ヒットするようになれば、必要になるかも知れません。もっともイワシが携帯電話を持っていればの話です。

--
しかし「現実」に Windows でも Linux でもインストールや直後の設定の場面で「ipv6を意識的に無効にする」作業が必要なのが現状なのです。そんな中で「ウチは ipv6 は無効にしているから」という言い訳は出来なくなってきていることに気が付きます。

ユーザ部門にデバイスのセットアップを任せているケースでは、「無意識に ipv4/ipv6 デュアルスタックを使っている、あるいは使えて”踏み台化”している状態になっている」わけです。そこまで時代が進んでいることに気が付かない管理者の皆さんは大勢いるのではないでしょうか。

まず「意図的的に ipv6 は使えないようにする」作業が必要となります。

ここで、アセット管理(資産管理)システムとの統合の問題が出てくるわけです。

まずは通常のアセット管理システムでは検出できないような、ipv6 端末も検出できるように設定を変更しなければならないわけですね。あればですが...

nmap コマンドで -6 オプションを使えば ipv6 デバイスもスキャンできます。その場合 nmap を使う端末の ipv6 をイネーブルにする必要があります。 SUSE Linux の場合 YaST > Softwaremanagement > search から nmap を検索してインストールします。 YaST > Network Device から General 画面の ipv6 をチェックして再起動すれば ipv6 スキャナができるようです。(未確認)

その上で nmap コマンドを -6 オプションでセグメントをプローブスキャンしてみましょう。ひょっとしたら、どこかの Wifi ルータの設定がイネーブルになっていたり、未登録の ipv6 端末が接続されているかも知れません。これらは、 ipv4/ipv6 デュアルスタックの機器(現在販売されているデバイスのほとんどのデフォルト)に接続できてしまう可能性があります。(openSUSE なら ndpmonというパッケージが使えます)

まずやるべきことは、これらの「存在するかも知れない ipv6 端末」を「見つけて殺す」あるいはユーザさんに「とめてもらう」こと。次に、まず、優先的にアセット管理システムを ipv6 に対応させることでしょう。

その後、基幹ネットワーク、基幹アプリケーションをデュアルスタック化する必要があるでしょう。そして、完全に ipv4 を「殺す」ためには気の長い期間をかけて、デュアルスタックネットワークを管理する必要があります。(ipv6 を先送りするか、ipv4 を使い続けるかどうかは別として)

私の顧客のほとんどでも数万台のPCを ipx から ip へ完全に移行するまで数年かけてデュアルスタック環境を保持し続けました。ipv6 への完全移行はおそらく、その数十倍の年月が必要だと思います。確かに ipx -> ip への移行はそれなりに効果はあったと思います。というか必要だったというのが正解です。

ipv6 自体はひどいものだとは思いませんし、技術的にも必要だから生まれたものです。しかし、この長期のデュアルスタック状態が脅威となる可能性があります。

2013年はIP資源枯渇を迎えた元年です。今の時点で言えることはとにかく「ipv6 を殺しておけ」ということです。


islandcenter.jp
[PR]
by islandcenter | 2013-01-05 19:38 | プライベートクラウド | Trackback(1) | Comments(0)