MacとWindowsを繋ごう (無線LANとかVPNとか)

'99.7.17 ('04.2.27更新)

MacとWindowsのLAN (local area network) とWAN (wide area network) の解説です。MacはOS X 10.1から特にソフトを入れずともWindowsのネットワークに繋がるようになりました。OS 9以前の苦労が嘘のようです。

(Windows NT/2000 Serverなら「Macintosh サービス」があるので、OS 9以前のMacともOSだけでデータ交換可能です)

繋いだ後のデータ交換に関しては「MacintoshとWindowsファイル送信の掟」をどうぞ。


まずはハードを繋ぐ

基本はEthernetだね

WANはアナログモデムって場合もありますが、WANもLANもコンピュータ側の接続はEthernetが基本ですね。

MacはUSB端子があるiMac以降の機種ならEthernet端子も必ずあります。Windowsで端子が無い機種の場合は、LANカード (10BASE-Tよりは100BASE-TXが速い) を使うかUSB端子からEthernet接続できるようにするアダプターを使います(USB1.1なら10BASE-T程度のスピードでしょうね)

Ethernetケーブルは、2台のマシンを直接繋ぐならクロス (リバース) ケーブル、ハブに繋ぐならストレートケーブルを使います。PowerBook G4や白いiBookなどでは自動切り替えで、どちらも使えます。

うまく動作しないときにはそれぞれを再起動してみましょう。

参考:Macintosh: Ethernet クロスケーブルを使用するコンピュータ

無線LANもできるよ

Mac標準の無線LANは、IEEE 802.11b (注1) 規格のAirMacと、802.11g規格のAirMac Extremeがあります。内蔵の専用カードとAirMacベースステーションですが、他社製のカードやAP (アクセスポイント) とでも同じ規格なら通信可能です (注2)。802.11gは802.11bとも通信できます (注3)。

設定上の問題としては、AirMacは14chが使えないので、Win側のネットワークが14chで動作してると繋げられないので注意してください。AirMac Extremeでは14chも使えます。

設定しなくても接続できますが、SSID (ESS-IDかBSS-ID、通信グループ名)WEPまたはWPAのパスワードは必ず設定してください。でないと他人が簡単にアクセスできてしまいます。APでのMACアドレス登録 (接続装置指定) も忘れずに。WEPなら128bitで半角英数13桁か16進数で26桁を使います (注4)。Windows側ではキーは4つ登録できますが、とりあえず1つ設定。

WinのネットワークにMacが参加するときは、まず、AirMacの「ネットワーク(名)」にWin側で入れたSSIDを記入します。

次に、AirMacの「パスワード」にWEPの128bitの暗号キーを記入(注5)。システム環境設定のネットワークでは、WEPキーを直接書けません。英数字 (ASCII) なら「"」(ダブルクォート) でくくります。16進数にしたのならダブルクォートの代わりに頭に「$」をつけます。

MacのネットワークにWinを参加させるときは、あらかじめAirMac管理ユーティリティ (AirPort Admin Utility) 上でネットワークパスワードとして16進数を使用するか、「ネットワーク用パスワード」を使います。(注6)

現状の無線LANにはセキュリティ的に様々な問題があります。無線LANのセキュリティは必ず読んでください。WPAの設定方法もあります。

IP over IEEE1394 (FireWire)

Windows Me, XPとOS X 10.3以降ならIP over IEEE1394 (FireWire) もできます。100BASE-TXより速いです。通常のFireWire (IEEE1394) ケーブルでマシン同士を直結するだけ。

MacOS X 10.3での設定方法。

USB直結

USB端子同士を直結して、MacとWindowsでファイル交換できるようにする専用ケーブル&ソフトを使うのもお手軽です。
直結USB Mac←→Win

その他の接続

Mac OS X 10.2以降ならBluetoothによる接続もOS標準でできます。

ソフト的にはこんな感じ

Winのネットワークに繋ぐ

マウントした相手側の共有フォルダを自分のフォルダのように使えます。LANでは最も使いやすい方法ですね。Mac OS X 10.1からは標準のままのOSの機能として繋ぐことができます。10.1ではクライアントのみで、サーバとしてMacのディレクトリの公開はできません。

日本語ファイル名をUnicodeで扱うWindows NT、2000、XP相手なら大丈夫ですが、それ以外のWindows 95、98、Meでは日本語ファイル名が化けてしまいます。

10.2でクライアントとして接続する方法:Finderの[移動][サーバへ接続]でWinのSMBのサーバが表示されるので、Wクリックするだけでマウントされます。

10.1でクライアントとして接続する方法:Finderの[移動][サーバへ接続]のアドレス欄に、以下のどの書式でもいいですが直接記入し[接続]をクリックでマウントされます。
smb://コンピュータ名/共有フォルダ名
smb://ワークグループ名;ユーザ名@コンピュータ名/共有フォルダ名
smb://ワークグループ名;ユーザ名:パスワード@コンピュータ名/共有フォルダ名

OS X標準に変えてSMB機能を付加するソフトのSharityを使い、設定をShift_JISに変えれば文字化けしません。サーバにもできます。個人使用のシングルライセンスはフリーです。

設定変更:Sharity Configurationの[Sharity General]で、[Server Side Charactor Map]を「unimapCP437.cfg」から「unimapShiftJIS.cfg」に書き換えて再起動します。

10.2、10.3ならMac側をサーバとして公開することもできます。こちらは日本語ファイル名も化けずに問題なく使えます。

  1. システム環境設定の[アカウント]でWindows側と同じユーザ名の専用アカウントを作るか、今のアカウントを使うなら[ユーザを編集...]で現在のパスワードを入力return後、[ユーザがWindowsからログインするのを許可する]にチェックし[OK]。(ユーザのホームディレクトリがまるごと公開されるので、安全を考えたら専用のアカウントの方がよさそうです。それでも、ログイン許可してないユーザのホームディレクトリが他のユーザから覗かれてしまうのは防げません。なにか置くならアクセス権に気をつけましょう) (インストール時のアカウントではアクセスできないことがあります。10.2を上書きインストールした場合のようです) (10.3では許可のチェックがいりません)
  2. システム環境設定の[共有]-[サービス]-[Windowsファイル共有]をオン。
  3. Windows側ではMac側でログインを許可したアカウントと同じユーザ名とパスワードでネットワーク (Windows) にログオン。Windows 2000とMe以降ならMac接続時にアカウントとパスワードを入れれば繋がるので、ログオンし直す必要はありません。(ユーザ名は半角英数でハイフンや空白は駄目です (Mac側の制限))
  4. Windowsのマイコンピュータを開いてアドレス欄に、たとえば「\\192.168.0.2\username」という書き方で、Mac側のIPアドレスとユーザ名を記入してenter。これで繋がります。
  5. Mac側はログインを許可したユーザのホームディレクトリが公開されます。専用アカウントなら、パブリック (Public) フォルダ経由でやりとりします。

ワークグループを変更するなら、[アプリケーション]-[ユーティリティ]のディレクトリアクセスを使って行います。Windowsと同じグループにすれば、接続が楽になりますね。

OS 9以前の場合やOS X標準では物足りない場合、MacをWindowsのLAN仲間にするソフトをMacに入れます。

ソフトによって機能に差はありますが、リソースフォークやファイル名等の基本問題は、ユーザが意識せずとも自動処理してくれます。本格的にWindowsのネットワークに繋ぐならDAVE。ファイル名にWinで使えない文字を使ってあってもエンコードしてくれるのが便利です。プリンタの共有にも強いですね。一方、価格で選ぶならVOLEE (\4,600) でしょうか。OS 9用はいずれも市販ソフトです。必要とする機能は人それぞれでしょうし、試用版がダウンロードできるソフトが多いので購入前に試してみましょう。

OS 9用VOLEEWIN MOUNTERMacSOHO (これだけNetBEUI)DoubleTalk

OS 9、OSX用DAVE

OSX用 : Samba (フリーウェア/GPL)、Sharity (個人使用のシングルライセンスはフリー)

WindowsのLANとは : NetBEUIかNetBIOS over TCP/IP (NBT)、上位プロトコルとしてはSMB、CIFS。SambaはUNIX上で動くSMBサーバ&クライアント。

Macのネットワークに繋ぐ

WindowsをMacのLAN仲間にするソフトをWindowsに入れても、同じ機種同士であるかのようにファイル交換ができるようになります。

Windows用PC MACLANCOPSTalk

MacのLANとは : 総称AppleTalk。プロトコル名AppleTalk Filing Protocol (AFP)。AFP over TCP/IPもある。

ちなみにUNIXでAppleTalkを使うならNetatalkCAP

FTPサーバをたてる

FTPサーバはMacでもWinでも同じようにアクセスできます。使い勝手は少し悪いですがネットでのファイル送信の基本ですね。立ち上げてFTPクライアントとの間でファイルをやり取りします。サーバ←→クライアントなので、どちらかをサーバにすれば双方向のファイル送信ができます。WindowsならPersonal Web ServerにFTP機能もあります。OS Xには標準でFTPサーバ機能があります。残念ながらOS 9にFTP機能は付属していませんが、フリーウェアやシェアウェアのソフトでなんとかなります。

MacからFTPで送る場合には、バイナリ (Fetch (シェアウェア) ならばRaw data (生データ) ) で送ればデータフォークだけになります。テキストファイルは、テキスト (ASCII) モードで送れば、リソースフォークは無くなり、改行コードが変換されます。

日本語ファイル名は、サーバが日本語に対応していないと、ファイルリストがうまく取得できないなどの不具合が出るので、はっきりしないときは使わない方が無難です。MacとWinとの送信では文字コードの違いで化けることがあり、送受信ができなくなったりします。

Fetchはデフォルトで、ファイル・ディレクトリ名をURLエンコードして送るようになっています。日本語のファイル名は変換されてしまいますね。Win側でデコードできるとは限らないので、直接日本語ファイル名で送る場合は、初期設定のUploadのファイル・ディレクトリ名のエンコードをオフにします。

テキストファイルの場合、半角文字だけのフランス語イタリア語等の特殊文字で使う8bitコード部分は、Macは独自コードなので、テキスト (ASCII) モードでISO 8859-1規格に変換して送ります。FetchやNetFinder (シェアウェア) には変換機能 (ISOコード変換、ISO 8859-1変換) があります。日本語文書はこの変換をすると文字化けしてしまうのでオフにします。

Mac同士の場合はMacBinaryIIMacBinaryIIIが標準です。BinHexでもいいですがファイルサイズが大きくなります。

Mac
・FTPサーバ:NetPresenz (シェアウェア。Classic版)Rumpus (市販。Classic版、OS X版)Personal Web Server (Mac版はIE 4.01 Full Fat Installerに付属していました。古い雑誌の付録CD等で探しましょう。フリーウェア。Classic版)
OS Xでは、UNIXのFTPサーバ各種をインストールして使えます。
・FTPクライアント:Fetch (シェアウェア)NetFinder (シェアウェア)

Win
・FTPサーバ:Tiny FTP Daemon (フリーウェア)Personal Web Server (Windows付属)
・FTPクライアント:FFFTP (フリーウェア)

ブラウザによっては、FTP接続してアップロードする事もできます (Mac版IE5はできません)。FTP専用ソフトに比べて低機能ですし、アドレス欄に直接パスワードを入れるのも危険ですね。
Anonymous FTPサーバでなくユーザ認証がある場合
ftp://ユーザ名:パスワード@サーバ名/パス
パスワードが必要ないなら
ftp://ユーザ名@サーバ名/パス

Webサーバをたてる

ファイル交換するにはさらに使い勝手が悪いですが、Ethernet接続ができれば安上がりで簡単なのが、Webサーバを立ち上げてWWWブラウザでファイルをダウンロードする方法です。MacをサーバにするならWeb 共有 (OS 9以前ならWeb 共有 コントロールパネル) を使えば簡単です。Windowsをサーバにするなら、システムディスクにPersonal Web Serverが付属してますし、AN HTTPD (Win、フリーウェア) も設定はきわめて簡単です。Windows 2000、XP ProfessionalならIISもありますね。

基本はサーバ→クライアントの一方通行なので、両方にサーバがないとやり取りできないですが、ブラウザのformからファイルをアップロードする事もできます。受け取るサーバ側では、CGIやPHP等のプログラムでファイルを処理する事になります。

Webスペースのレンタルサービスでは、FTPを許可せずこの方法だけ使う所もあります。画像アップロード掲示板も同じ仕組みです。

基本的にMacから送るとデータフォークだけ送られます。ところが、IE4.5にはなんでもMacBinaryで送ってしまうバグがあります。IE5では殆ど大丈夫ですが、ファイルヘルパーに登録の無い拡張子や拡張子の無いファイルはMacBinaryで送ります。また、[ファイルヘルパーの編集]で[Macintosh ファイル] にチェックが入っているとMacBinaryになります。

MacBinaryでは困る場合は、サーバ側で「Content-Type: application/x-macbinary」となるファイルをデコードする事で対処します。最近は対処してあるプログラムが多いので、送り手側が気にする事はあまりないでしょう。

参考:[M_IE45]ファイルアップロード時の注意事項

WebDAVサーバをたてる

WebDAVとは、ファイル交換が自在にできるようにHTTPプロトコルを拡張した仕組みで、FTPに替わるものとして注目されています。LANで使うことはあまり無いでしょうが、WANではインターネット経由でファイアウォール越しに使えるのが便利です。

Windowsでは、2000 ProfessionalとXP ProfessionalのIIS 5から、MacではOS Xから標準でWebDAVサーバが使えますね。(OS XにはApacheのmod_davモジュールが入ってますが、接続するクライアントによっては、日本語ファイル名の文字化けが問題になります。OS X同士ならOK)

クライアントは、Winでは (IE5から) 付属の「Webフォルダ」機能、OS XではFinderからサーバに接続可能です。Goliath (フリーウェア) はOS 9以前とOS Xどちらにも対応です。

Macからファイルをアップロードすると、例によって余分な不可視ファイルが作成されますが、データフォークが切り離されるので、Winでの利用には問題ありません。

参考:
Mac OS XでWebDAVサーバ (Finderからの接続方法もあり)
WebDAV の発行 (IIS 5.0サーバでの設定方法)

エミュレータで繋ぐ

エミュレータを使って、仮想Windows、仮想Macとして仲間の振りをしてLANに参加することもできます。

Macの中にWindows環境を作ってしまうのがWindowsのエミュレータです。動作は遅くなりますが、Mac上でWindowsのソフトが動くのは感動的です。MacがWindows機として機能して、Windowsのメディアを読んだり、EthernetでWindowsのネットワークに繋ぐことも可能です。WindowsとMacとのデータ交換も簡単です。(完璧にWinになりきって同じことをするのは大変なようですけど)

Virtual PC (市販)、RealPC (市販)

もともとMacユーザならPCでMac OSを動かす方が感動的かも。動かすためにはMacのROMデータが必要です。今のところPower PCをエミュレートできるソフトはありませんから、古いMac (CPUが020、030、040等) と古いOS (8.1以下) が要りますね。Basilisk IIならEthernet対応なのでAppleTalkでLANが組めます (ROMデータ (機種によって違う) によってはできないものもありますが)。OS8.1を入れればHFS+のMOも読み書きできます。

Basilisk II (フリーウェア)、FUSION-PC (フリーウェア)、SoftMac (市販) 等。各ソフトの紹介とセットアップ、使えるROMの機種リスト等POSEIDON's PAGEで。

古いOSの漢字Talk7.5.3 は、今は無料でAppleから手に入ります。7.5.5アップデータ でアップデートしましょう。

あとは古いMacを安く手に入れるだけ。

遠隔操作ソフトで繋ぐ

UNIXでよく使われるtelnetやrloginやrshやsshも遠隔操作ですが、ここでは、あるコンピュータのGUI (グラフィカル・ユーザインターフェース) 画面を、まるごと他のコンピュータのウィンドウの中に表示するソフトを取り上げます。ほとんどすべての操作を別のコンピュータから実行可能です。

ファイル送信は必須ではありませんが、MacとWinでファイル送信できる物もあります。直接ファイル送信できなくても、片方の画面だけ見てファイル送信ソフトの操作ができるのは便利ですし、1台のモニタをMacとWinで共有してるなら、画面切り替えせずに両方操作できるのも便利ですね。

画面のコピーまでできませんが、Mac用の遠隔操作ソフトにKeep-It-Up (KIU) (シェアウェア) というソフトがあります。Win機からでもWebブラウザを使って操作できます。Macのサーバの管理用に便利です。

ファイル特急便♪で繋ぐ (簡単)

LANやWANで、これをインストールしたマシン同士で簡単にファイル交換ができます。相手のIPアドレスを指定して送るだけ。Mac Classic版、OS X版、Windows版があります。データフォークのみ送ります。

ファイル特急便♪ (フリーウェア)

ネットワークとして

プリントサーバ

プリンタを共有するための接続には3通りあります。まず単体でEthernetに繋げられるプリンタを使う方法。次にプリントサーバと呼ばれる小さい機器をプリンタに接続しEthernetに繋げる方法。3つ目は、コンピュータをプリントサーバとして、そこに繋いだプリンタを間接的にEthernetに参加させる方法です。また、プリントのプロトコルとしてAppleTalkを使うか、Windowsのプロトコルを使うかの選択もあります。

  1. AppleのLaserWriterは、AppleTalkで動くポストスクリプトプリンタで、単体でEthernetに繋がります。Windows 2000 Server、Windows 2000 Professional、Windows NT 4.0 ServerとWorkstationはAppleTalkを使ったプリントに対応しています。XPは対応しなくなりましたが、PC MACLANを使えば印刷できます。
  2. プリンタに繋ぐ簡易プリントサーバ機器は、サイレックス・テクノロジーメルココレガ等で出しています。WinとMacと両方 (のプロトコル) に対応したもの (7,000円くらいから) を導入すればそれだけで繋がります。プリンタのドライバがネットワーク接続に対応している必要があります。(対応プリンタを事前に確認のこと)
  3. コンピュータ経由のプリントは、Mac、Win片方だけのネットワークなら比較的簡単ですね。

    ポストスクリプト・プリンタでない場合、MacとWindowsでデータ形式に違いがでるため共有は難しいのですが、UNICORN (シェアウェア) を使うと難しいといわれるエプソンプリンタの共有もできます。

    DAVEを使えば、OS Xに繋いだ非ポストスクリプト・プリンタの共有ができます。Windows用のプリンタドライバが必要です。他にもWinやMacのネットワークに参加するためのソフトには、プリンタ共有機能が付属してたりします。

セキュリティに気を配ろう

LANのセキュリティ

TCP/IPを使ったLANを組んである状態で、インターネットに繋ぐ時にはセキュリティに十分気をつけてください。不用意に接続するのは危険です。インターネットのプロトコル (接続手順) もTCP/IPですから、外からアクセスされる可能性があります。 (NetBIOS over TCP/IP、AFP over TCP/IP、HTTP、FTP等が問題。同じEthernet上でもNetBEUIとTCP/IPを使わないAppleTalkは安全)

  1. モデムTA等でインターネットに直接接続の場合、とりあえず、サーバ (Web共有等) とファイル共有をオフにしてインターネットに繋げば安心ですが、切り忘れやバグ等を考えて、LANで共有するときも極力安全な方向に設定しておきます。必ずパスワードの設定をしてフリーパスでは入って来れないようにします (パスワードがあっても100%安全とは言えませんが)。「ゲスト」や「匿名 (anonymous)」でのアクセスはできないようにします。Mac OS 9以前の場合、「利用者&グループ」で所有者の「すべてのディスクを見ることを利用者に許可する」のチェックは外しておきます。
    接続するのがWin機なら、ネットワークの設定の「TCP/IP -> ダイヤルアップアダプタ」のプロパティのバインドの共有サービスのチェックを外しておきます。これでNetBIOS over TCP/IPでの共有ファイルが外から見えなくなります。(ネットワークの設定を変える度にチェックが復活するので注意。他のプロトコルの共有はここでは切れない)
  2. Winの「インターネット接続の共有(ICS = Internet Connection Sharing) を使った接続の場合、セキュリティ的な強度は少し (IPマスカレード (NAPT) だけ) しか上がっていないので、TCP/IPを使ったファイル共有とインターネットへの接続を同時に行わない方がいいでしょう。NetBIOSだけは外から切り離されますが。
  3. ダイアルアップルータ経由のLANとインターネット接続の場合、ルータが簡易ファイアウォール (IPマスカレードとパケット・フィルタリング) の機能を持っているので、外から簡単に入り込むことはできないはずですが、油断は禁物。ルータのパスワードの設定は必ず行います。さらに、ルータのファームウェア (動かすソフト) や設定例のバグフィックス (不具合修正) は常に行われていますから、メーカーのサイトをこまめに覗いて、いつも最新の状態になるようにします。それでも、LANでのパスワード設定をさぼるのはやめましょう。
    できれば、各コンピュータ間のLANはNetBEUIか、TCP/IPを使わないAppleTalkで繋ぎたいところです。
  4. 万が一にも外に漏れてはいけないファイルがあるなら、そのファイルの入ったコンピュータをインターネットに繋がないことです。人為的ミスやソフトウェアのバグからは逃れられないからです。(LAN経由での間接接続や無線LANもダメ)

無線LANのセキュリティ

現在の無線LANの多くの製品は、セキュリティが充分ではありません。それを理解した上で使うようにしましょう。

殆どの製品は、デフォルトでなんの制限も無く繋がるようになっています。他人が勝手にアクセスポイントを使ったり、知らずに他人のアクセスポイントに繋いでしまったり、通信内容を盗聴されたり、パスワード無しのファイル共有をしていれば、パソコンの中まで覗かれてしまいます。人里離れた所でないなら、以下の設定は必須ですね。

  1. MACアドレス:その無線LAN装置固有のもので識別に使います。APに登録し未登録の装置との接続を拒否できます。MACアドレスの変更 (詐称) も可能なので、これだけで安心はできません。 盗聴に対しての効果はありません。
  2. SSID (Service Set Identity、通信グループ名):これを設定しないと無線の届く範囲の装置はみな接続してしまいます。単にグループ分けに使う名前で、通常他の無線LAN装置から見えるものでパスワードではありません。「ANY」にするとどのグループにも参加できますが、それを拒否できるAP (アクセスポイント) は拒否する設定にします。また、SSIDを隠す(SSIDブロードキャストをしない)ステルス機能のあるAPなら隠しておきましょう。
    SSIDとは、インフラストラクチャーモード (AP経由の通信) のESS-ID (Extended Service Set Identity)とアドホックモード (APを介さない2台の通信) のBSS-ID (Base Service Set Identity) の総称です。
  3. WEP (Wired Equivalent Privacy):この暗号を使わないと、SSIDを合わせるだけで簡単に接続されてしまうので必ず設定しましょう。しかし、WEPには ユーザ認証 が無く、暗号化が弱いという致命的な欠点があります。40bit (ランダムデータを入れて64bit) のものは簡単に解読されるので気休め程度です。128bitのWEPでも解読可能ですが、それなりの手間と時間が必要です。安全性が低いといってもWEPを使わないより使った方が遥かに安全です。WEPを解読して侵入するのは犯罪行為ですし。
     侵入してくればログから見つけることもできますが、単に盗聴されるだけでは検知できません。見られてはいけないデータならWEPとは別に暗号化して送る必要があります。
     AirMacベースステーションのファームウェアを5.1以降にバージョンアップすると、Windows機とWEPオンで繋がらない問題があります。Windows XPなら、無線LANの設定で「ネットワーク認証 (共有モード)」にチェックをつけると繋がるようです。そういう設定項目が無いメーカー製設定ツールを使ってる場合は、5.0.4へバージョンダウンですね。
    AirMac Extreme Fimware Update 5.0.4 に関する情報とソフトウェアのダウンロード
  4. WPA (Wi-Fi Protected Access ):頼りないWEPの代わりになるものとして、より強固なセキュリティーを持っています。対応する製品が出始めたばかりで、MacではOS X 10.3(Panther)とAirMacソフトウェア3.2でAirMac Extremeカード、AirMacソフトウェア3.3で従来のAirMacカードが使えるようになりました。ベースステーションはExtremeが条件です。WPAにするとWEPしか使えない機器と同時接続できないのがつらいですね。
     Macのインターネット接続アプリケーションから接続するなら、個人の小規模無線LANの場合「WPA パーソナル」になります。システム環境設定のネットワークのAirMacでは、デフォルトで参加するネットワークのパスワードとして、WPAのパスワードをそのまま入力できます。「WPA エンタープライズ」だとユーザ認証にRADIUS サーバが必要です。
     AirMacの「WPAパーソナル」は、WPA-PSK (Pre-Shared Key (事前共有キー)) のTKIP (Temporal Key Integrity Protocol)(キーを一定時間毎に自動的に更新。RC4使用) ですから、他社製の機器もそれに合わせます。パスワードは8〜63文字の半角英数。AirMacで使える64桁の16進数には、他社製品の殆どが対応してないみたいです。
     WPAは辞書攻撃に特別弱いので、パスワードとしてランダムな文字列を使いましょう。さらに20桁以上あれば安心です。
     WindowsではXPからWPA機能があります。Windows XP SP1とWPA サポート修正プログラムが必要です。対応する無線LANカードを挿せば、AirMacベースステーション(Extreme)ともWPAで接続できます。 バッファロー製のアダプタ (カード) なら、XP以外のWindowsでも使えるようです。
     WPAによらずセキュリティを自分で高めるには、 SSH (SSHトンネリング/SCP/SFTP) やZebedee 、IPsec 等を使い、無線LANに流すデータを暗号化する手があります。
  5. ファイアウォール:MacにはOS X 10.2から付属しています。無線LANを使う時には開始しておきましょう。システム環境設定の共有で設定できます。WindowsでもXPから付属ですね。

無線LANのセキュリティー関連項目:

  1. IEEE 802.1x:紛らわしい名前ですが、これは無線に限らずLANの認証システムの規格で、802.11 bや802.11 gでも使うことができます。RADIUSサーバを立てて認証を行います。
     AirMac ExtremeとOS X 10.3はIEEE 802.1xに対応しています。Windowsは2000 SP4とXPが対応。
     認証と暗号化は EAP (Extensible Authentication Protocol) を使うことで行います。何種類もあります。
    1. EAP-TLS (Transport Layer Security):サーバ、クライアントともに証明書 (公開鍵) 方式。強固だが、クライアントにも証明書を入れる必要あり。
    2. EAP-TTLS (Tunneled TLS):サーバ認証とクライアントはパスワード。Windowsのデフォルトでは非対応。
    3. EAP-PEAP (Protected EAP):サーバ認証とクライアントはパスワード。Cisco-PEAPとMS-PEAPがある。
    4. EAP-Cisco (LEAP):パスワード (共有鍵) のみ。簡単。
    5. EAP-MD5:APの成りすましを防げない。WEPキーも生成 (変更) しないのでセキュリティ的に弱すぎ。
  2. IEEE 802.11i:セキュリティアップした無線LAN規格として策定中ですが、その前に暫定標準としてWPAができました。WPAは上記IEEE 802.1xとEAPを包含しています。

WANのセキュリティ

私的文書を専用回線ではなくインターネット経由で送るなら、データの暗号化が必須ですね。後述するVPNといわれる方法を使います。

メンバー限定のサーバを立ち上げる場合は、データも秘密ならSSL等の暗号化が必要です。そこまで要求しないとしても、FTPやHTTPのBasic認証では、データ内容だけでなくパスワードさえも平文なので盗み見されると危険です。最低限ダイジェスト認証等によるパスワードの暗号化をしましょう。

公開サーバのセキュリティ

広く公開するサーバならば、通常データ作成等に使うマシンとは別にサーバ専用のものを用意して、必要最小限のソフトだけをインストールして使いましょう。クラックの可能性は常に存在します。

セキュアな通信って (VPNとか)

誰でも読める平文で、あちこち経由してデータが送られるのがインターネットの基本ですから、プライベートな、人に見せたくないデータは特別に暗号化して送る必要があります。httpsのSSLやTelnetを暗号化したSSHも方法のひとつですね。特に遠隔地のLAN同士、あるいはサーバとクライアント間を暗号で保護して繋ぐことをVPN (Virtual Private Network) と言います。

無線LANでのセキュリティアップにも有効ですね。(LANに対してVPNとは言いませんが)

SSH (SSHトンネリング/SCP/SFTP)

Telnetを安全に行うための方法として作られましたが機能は豊富です。SSH (Secure Shell) サーバを動かしてSSHクライアントとの間でセキュアな通信を行います。

OS Xでは、“リモートアクセス”はSSHサーバですし、ターミナル (Terminal) からSSHクライアントとして繋ぐこともできます。一方、Windows側で手軽にできるSSHサーバと言えば“Cygwin+SSH”でしょう。
参考:ウインドウズにSSHサーバーを入れよう !

SSHの基本はコマンドラインでのリモート操作ですが、ファイル送信に使える3つの手段があります。

  1. SSHトンネリング:ポートフォワーディングをして、自分のローカルのポートを相手のポートとして割り当てます。HTTP、POP、SMTP等様々なプロトコルを通すことができます。FTPはちょと難しいですが。ターミナルから相手のSSHサーバに繋ぐとするとこんな感じ。
    % ssh -2 -N -f -L 8080:localhost:8080 192.168.0.2

    127.0.0.1:8080に繋ぐと192.168.0.2:8080へ繋いだことになります。もちろん、インターネット経由でも繋がります。

  2. SCP (Secure Copy):SSHのファイルコピー機能です。FTPのようにファイルリストの取得ができませんが、WinSCPのようにFTPライクなツールもあります。
  3. SFTP (Secure FTP):その名の通りSSH上で使うFTP的なプロトコルです。

MacのSSH/SCP/SFTPクライアント

名前 ライセンス 対応OS プロトコル等
MacSSH フリーウェア/GPL Classic SSH2
NiftyTelnet フリーウェア Classic SSH/SCP
Fugu フリーウェア OS X SSH/SCP/SFTP
RBrowser シェアウェア OS X FTP/SSH/SFTP
MacSFTP シェアウェア Classic/OS X SFTP
Transmit シェアウェア Classic/OS X FTP/SSH/SFTP
Vapor フリーウェア OS X SSHトンネリング専用

JavaのSSHクライアント

MindTerm フリーウェア

WindowsのSSH/SCP/SFTPクライアント

名前 ライセンス プロトコル等
PuTTY フリーウェア Telnet/SSH
PuTTY で ISO 2022 による日本語入力・表示を可能にするパッチ
Tera Term Pro フリーウェア Tera Term Proを機能拡張して
SSHクライアントにする
TTSSH フリーウェア
TTSSH 日本語版 フリーウェア
WinSCP フリーウェア SCP (FTPライクなUI)
SecEx シェアウェア SCP/SFTP

SSHによって安全な通信ができるようになる反面、破られてアクセスされた場合には、シェルからのコマンド実行も可能で、かえって危険です。パスワードや鍵の管理には十分注意してください。トンネリングにしか使わないなら次のZebedeeがお勧めです。

Zebedee

暗号化トンネルツールです。SSHトンネリングの弱点を色々取り去ったようなものです。UDPが通るのでFTPのトンネルも比較的簡単ですし、シェルとしての機能が無いのがかえって安心です。

Windowsは95から対応しています。MacはOS Xにソースからmakeしてインストールです。Release 2.4.0 (02.5.9) からはOS Xに対応して「make OS=macosx」で入ります。

IPsec

2つのノード (IPアドレス) 間を暗号化通信に置き換える形で使います。ネットワーク層での暗号化なので、上位層のプロトコルやアプリケーションソフトを選びません。まるでハードウェア的にセキュアにしたような感覚で使えます。2つのマシン間でも使えますし、IPsec機能のあるルータでインターネット間を繋ぎ、遠隔地のLAN同士を繋いだりします。無線LANの安全性アップにも使えますね。

MacはOS X 10.2から、Windowsは2000からIPsec対応です。設定にはそれなりの知識が必要です。

PPTP

PPTP (Point-to-Point Tunneling Protocol) サーバとPPTPクライアント間での1対1の暗号化通信です。

Windowsでは、Win95からクライアント機能があります。サーバ機能はNT Server、2000 Serverにあります。

MacはOS X 10.2から、「インターネット接続」アプリケーションの「新規 VPN 接続ウインドウ」からクライアントとしてPPTPサーバに接続が可能です。

その他のいろいろ

昔はシリアルだった

最近のMacにシリアルポートはありませんが、昔のMacとの送信でシリアル接続しか方法がない場合、ターミナルソフトを使ってファイル送信します (MonkeyCom (市販) も使えます)。転送速度は遅いです (Ethernetの10BASE-TやUSB1.1の1/100以下)。クロス (リバース) ケーブルで繋ぎます。MacとWindowsではケーブルのコネクタの形状をあわせる必要があります。MacではモデムポートかプリンタポートのMini-DIN 8pin、WinはRS-232CでD-sub 9pinですね (NEC PC98系だとD-sub 25pin。98ノートならハーフピッチ 14pin)。MacとWinの接続専用ケーブルもありますが、変換コネクタとかリバースコネクタを使って、Win用のシリアル・クロスケーブルやMacの外付けモデム用ストレートケーブルを転用する手もあります。なぜかちょっと高めですが、MIDI音源用シリアルケーブル (DOS/V、NEC PC98用) はぴったりそのまま使えるようです。
ソフトは、WinはOS付属のハイパーターミナル等、MacはareTerm (シェアウェア) 等。転送プロトコルはZMODEMで自動受信にします。MacからはMacBinaryを使わずに送信するのがポイントです。

ちなみにパラレルはWinにしかありません。

モデムポートでもできる

直接相手に電話して送る時とか、モジュラーケーブルしかない、って非常時にはモデムとモデムを繋ぎます。シリアルよりさらに遅くなります。これもターミナルソフト (MonkeyCom (市販) も使えます)。繋ぐ側が「ATX0D」待ち受け側「ATA」とコマンドを入れればいいはずですが、LANなのにダイアルしないと繋がらないソフトの場合は、モデム設定で「X0」とダイアルトーンを無視する初期化コマンドを入れておいて、適当な番号でダイアルすれば繋がります。

MonkeyCom

LANのファイル交換のためだけに使うのはもったいない気がしますが、MonkeyCom (市販) も簡単で便利です。テレビ電話ソフトとして有名らしいですが、インターネットや直通電話でのファイル送信も売りですね。LANでのファイル交換も簡単です。Ethernetでもシリアル接続でも使えるのは貴重かも。2台のモデムをモジュラーケーブルで繋いでもOK。

謝辞

このページのためにお世話になった方々です。2002年半ば以前は特に記述していませんが、ありがとうございます。

関連ページ

繋いだ後のデータ交換に関しては下記のページです。MacとWindowsの違いとその注意点、解決方法を解説します。