クライアントマシン用途で使用することに決めたMacBook Air。
しかしそのために、まずはMacBook Airで自前サーバにアクセスできるようにしなければなりません(名前解決の関係で、LAN側からboota.mydns.jpにアクセスは出来ないので、ブラウザでアクセスするのはもう少し後に考える事にします)。
そのためにとにかく必要なのがSSHクライアント。これがないとサーバの状況を確認する事ができないからです。
で、MacBook AirのSSHクライアントはどのようなものがあるのかと探してみたら・・・。
なんてことはありません。
現在のMacOSって、基本Unixベースなんですよね。そう、つまり基本環境はうちのメインマシン、つまりLinuxと一緒。
ターミナルを起動して、sshコマンドでSSH接続できるのでした。
SSHの環境が整っている事はよかったのですが、次に考えなければならないのがSSHでログインする際のパスフレーズ(秘密鍵)をどのように処理するか、です。
ものすごく簡単に言ってしまえば、現在私が使っているその他のSSHクライアントに保存されているSSHログインパスフレーズ用の秘密鍵をどうやってMacBook Airに持ってくるか、です。
現在僕がサーバにSSHログインする可能性があるクライアントマシンは二つ。
一つは、もちろん自宅に置いてあるメインマシン(CentOS 6.x)。
もう一つは、iphone5s。
どちらにも同じ秘密鍵を保存してあります。なので、どちらか一方の秘密鍵をMacBook Airにコピーすればいいのですが、さてどちらにすればよろしいでしょう。
ちなみにこの時点でメインマシンは立ち上がっていませんでした。
とくれば。
iphoneにはiphone同士でやりとりできる仕組み、AirDropがあります。
そしてよくよく見ると、MacBook AirにもAirDropがありました。
なら、AirDrop同士でサクッとやりとりしちゃう方が簡単ですよね!
そこでさっそくトライしたのですが、二つの理由でこの方法は断念しました。
一つは、僕がiphone5sでファイル管理を行っているDocuments by Readdleというアプリが、どうやらAirDropでのデータのやりとりに対応していないようであったこと。
iphoneは各アプリにそれぞれ専用の作業領域(保存領域)を設けさせるようになっているので、iphone5sに保存されている秘密鍵ファイルはこのDocuments by Readdleからしかアクセスできません。そのため、他のAirDropに対応しているアプリからDocuments by Readdleが保存したファイルにアクセスしようとしてもできないんです。
あるいは共有ディレクトリみたいなものがあるのかもしれませんが、今のところはわかりません。
それよりもより根源的だったのが、もう一つの理由。
それは、そもそもiphone5sのAirDropはiphone同士でのファイル交換しか想定しておらず、Macとのやりとりはできないということです。
(次期バージョンでは解決されるらしい?。また、現時点ではこういう方法もあるようです。)
なので残念ですがiphone5sに保存されている秘密鍵をコピーするのは諦めました。
次に試すのが、メインマシンとMacBook Airとでやりとりする方法です。
現在iphone5sとメインマシンとはsmbプロトコルを使ってやりとりしているので、多分MacBook Airとも同じ方法でやりとりできるはず・・・(メインマシンが他のクライアントに対してファイルを共有できる仕組みはsambaしか構築していないと言う理由もあります)。
では、MacBook Airでsambaでアクセスするにはどうすればいいのでしょうか。
まずはMacBook Airを立ち上げ、ユーザでログインしたらデスクトップ上にあるメニューバー(っていうの、これ?)から、「移動」をクリックしプルダウンを表示、一番下にある「サーバへ接続」をクリックします。
すると接続先を入力できるようになるので、
smb://xxx.xxx.xxx.xxx
と入力します。smbはもちろん使用するプロトコル、xxx.xxx.xxx.xxxはsambaサーバのIPアドレスです。設定されていれば、ホストネームでもいけるはずです。
なお、この入力に先立ってsambaサーバの設定を適切に行っておく必要があります。
「接続」ボタンをクリックすると、接続を開始します。
設定に間違いがなければ・・・。
マウントするディレクトリを選択できます。大抵はログインしたサーバのユーザホームディレクトリですよね。
これでメインマシン上にある僕の(一般ユーザの)ホームディレクトリが表示されます。マウント成功!
なお、アンマウントするにはこのウィンドウの左側にあるメニュー(?)の中に、「共有」というセクションがあり、そこに接続しているサーバが表示されているので、そのサーバのお尻についている▲(ディスクなどのイジェクトマーク)をクリックします。
これでアンマウントが完了します。
マウントできたら、マウント先からSSHの秘密鍵をドラッグアンドドロップでコピーするのですが、秘密鍵はホームディレクトリ内の隠しディレクトリに保存されています(ドットで始まるディレクトリ)。しかし隠しディレクトリは表示されていません。
Windowsなら「すべてのフォルダを表示」という設定がありますが、Macにもそれがあるのかどうかわかりませんでした。
なので、直接このドットで始まる隠しディレクトリに降りる事にします。
マウントしているディレクトリが表示された状態で、またまた上のメニューバー(?)から「移動」→「フォルダへ移動」をクリックします。
すると「フォルダの場所を入力」できるようになるので、ドットで始まる隠しディレクトリを入力します。
SSHの隠しディレクトリに降りれば、そこに秘密鍵があるのでまずはそれをMacBook Airのデスクトップにでもコピーします。
デスクトップにコピーしたら、これを今度はMacBook AirのSSHの隠しディレクトリに移動します。これは普通にターミナルで行えばOKですので割愛しますが、適切にSSH用の隠しディレクトリに保存できれば、SSHコマンドでサーバにアクセスした際に、パスフレーズを聞かれるようになるので、この秘密鍵を作成したときに使用したパスフレーズを入力し、認証を経れば無事サーバにSSHでログインできるようになります。
まずはこれで第一段階、クリアです!