Skip to content

Blog

IPSecuritas で NetScreen / SSG / ISG と XAuth を用いた IPSec VPN 通信を行う

Juniper の KB(Knowledge Base)にも公式に記載されている通り、Juniper の VPN クライアントである "NetScreen-Remote" は Windows 7 をサポートしません。

私は普段、Mac を中心に使っているのですが、業務上、NetScreen / SSG / ISG(以下、SSG で統一)に IPSec VPN する際は VMware Fusion 内の Windows XP から NetScreen-Remote をして IPSec VPN する、という一手間をかけていました。この手間を解消すべく、Mac OS X 用の VPN クライアントを探したことがあり、以前に equinux 社の VPN Tracker というソフトウェアの 30 日間評価版を試したことがありました。ソフトウェア自体はよく出来ており、不満は無かったのですが、お値段が高めだったので購入は避け、結局、VMware Fusion 内の Windows XP を使い続けていました。

しかし、「ソフトウェアのサポート対象から Windows XP が除外される」など、Windows XP の利用が厳しくなってきた為、代替手段を探したところ、Juniper の KB で KB5546 - Is there a Macintosh Virtual Private Network (VPN) client available? という記事を見つけました。以下はその記事からの抜粋です。

Currently, there are a few VPN clients that runs on the Macintosh platform.

  • MacPGP from PGP Corporation. That product is PGP Corporate Desktop, and is only available for Mac OS 9. For more details on purchasing, please go to http://www.pgp.com.
  • VPN Tracker from Equinux. This is a front end to the IPSec engine that is built into the BSD kernel in Mac OS 10. The minimum requirement here is Mac OS 10.2. You can find further details on this product at http://www.equinux.com/us/products/vpntracker/ You can also find a VPN Interop document written by VPN Tracker at http://www.equinux.com/download/HowTo_NetScreen.pdf
  • VaporSec (http://http://www.macshareware.com/review/vaporsec) is similar to VPN Tracker, except it is Open Source, which means you can download it free of charge. You can also find a VPN Interop document on this. Please click VPN Between NetScreen to VaporSec
  • IPSecuritas from Lobotomo Software. This is also downloadable free of charge. Requires Mac OS 10.3 or higher.

3 項目の VaporSec は公式ページが "404 Not Found" になっていました。結果的に一番、下にある「IPSecuritas」を試してみることにしました(無料のようですし)。

Apache や Wireshark で GeoIP を利用する

"GeoIP" と一般的に呼ばれている機能を使うと、IP アドレスを地理情報に変換することが出来ます。具体的には Apache で「特定の国からのアクセスは拒否する」といった制御を実施したり、Wireshark でキャプチャした IP アドレスが「どこの国の IP アドレスなのか?」解析したり、といったことが出来ます。GeoIP 用のデータベースは有料のものが多いのですが、MaxMind では無料で利用可能なバージョンが配布されています(有料版もあります)。 ただし、GeoIP で判定される地理情報は 100%、正しいとは限らないので注意が必要です。

.NET Assembly を mono と関連付ける

Linux 上でも mono を使うと .NET Framework を動作させることが出来ます。Linux 環境で mono をインストールする方法は 以前の記事 に書きましたが、このままでは .NET のプログラム(.NET Assenbly)を実行する都度、以下のように mono を実行する必要があります。

1
2
$ mono hello.exe
Hello, World!

binfmt_misc という仕組みを使うと、毎回、"mono" としてしなくても、あたかも ELF と同等に .NET Assembly を実行出来るようになります。余談ですが、binfmt_misc の公式ページ は 404 not found になっているようです。

inotify-tools を使ってファイルシステムへのアクセスをモニタする

かつて Windows では FileMon というユーティリティを使うことでファイルシステムへのアクセス(アクティビティ)をモニタすることが出来ました。しかし、2006 年以降、FileMon は Process Monitor というツールに統合され、ファイルシステム / プロセス / レジストリのアクティビティを横断的にモニタすることができるようになりました。

Linux でも inotify-tools を使うことでファイルシステムのアクティビティをモニタすることができます。今回は inotify-tools を CentOS 5.5 x86_64 へインストールしてみます。

C# で引数に指定されたオプションを取得するには

幾つかのプログラミング言語では引数に指定されたオプションを取得する為に getopt ライブラリが用意されており、代表的なところでは GNU GetOptPython の getopt があるかと思います。

.NET Framework 標準ライブラリ中には getopt と同等のライブラリは無いようですが、幾つかライブラリが公開されているようです。

ここでは一番下の "C# Getopt class" を試してみます。

macOS で新環境へ Mail のデータを移行するには

Mail のデータを移行するには旧 Mac OS X 環境から、移行先である新 Mac OS X 環境へ以下をコピーします。

  • "~/Library/Mail" ディレクトリ
  • "~/Library/Preferences/com.apple.mail.plist" ファイル

macOS でフォルダ名をローカライズするには

Finder でユーザのホームフォルダを確認すると "デスクトップ" や "書類" といったディレクトリが見えますが、ターミナルから ls コマンドを実行すると "Desktop" や "Document" のように英語名でディレクトリが確認できます。しかし、新たに「Software」というディレクトリを作成しても、自動的に日本語化(ローカライズ)はされません。

file

1
2
3
$ ls
Desktop     Documents   Downloads   Library     Movies
Music       Pictures    Public      Sites       Software

この「ディレクトリの日本語名と英語名の対比」は "/System/Library/CoreServices/SystemFolderLocalizations/Japanese.lproj/SystemFolderLocalizations.strings" というファイル中で以下のように定義されています。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
/* Folders in user homes
*/
"Desktop" = "デスクトップ";
"Documents" = "書類";
"Movies" = "ムービー";
"Music" = "ミュージック";
"Pictures" = "ピクチャ";
"Public" = "パブリック";
"Sites" = "サイト";
"Drop Box" = "ドロップボックス";
"Favorites" = "よく使う項目";
"Saved Searches" = "保存済みの検索条件";
"Mail Downloads" = "メールダウンロード";
"Downloads" = "ダウンロード";

この部分に以下のように記述を加えます。

1
"Software" = "ソフトウェア";

続いて、該当ディレクトリ内に ".localized" という名前の空ファイルを作成します。

1
touch ~/Software/.localized

最後に Finder を再起動すれば完了です。"option" キーを押しながら Dock 上の Finder を右クリックする等のアクションでコンテキストメニューを表示させ、"再度開く" を選択します。

file

これで Finder を開けば、該当ディレクトリが日本語化されています。

file