ホーム > スタッフブログ > FUSE+OpenSSH

FUSE+OpenSSH

2009 年 7 月 8 日

NotePCに全てのデータを持ち歩くことは、最近はセキュリティの観点から推奨されません。

企業の規則によっては、完全に禁止されております。

そこでネットワークディレクトリを使用して、ローカルPCには最低限の物しか保存しないようにする方法があります。

ただし、普通にSFTPなどで接続するのでは、利用する際に不便です。

そんな時、ネットワークディレクトリをあたかもローカルディレクトリに「偽装」する技があります。

ネットワークディレクトリは、SSHでアクセスできるサーバを想定します。

まず、sshfsというアプリケーションをインストールします。

sudo apt-get install sshfs

これだけで作業の50%が終了です。

そして、コマンドを入力します。

sshfs username@remote-server-name: /home/me/test

usernameは接続するSSHサーバでのユーザ名
remote-server-nameはSSHサーバ名
/home/me/testはローカルにある空のディレクトリ(testと言う空のディレクトリは作っておきます)

remote-server-nameの直後の:は必須です。

接続先のポートを指定する時には、「-p ポート番号」を付けます。

もし、リモートサーバのディレクトリを指定したい場合は、:の後にフルパスで指定可能です。

指定しないとusernameのホームディレクトリになります。

たったこれだけで、lsやmkdirなどローカルディレクトリと変わらない操作が可能です。

ただし、接続する際にパスワードを聞かれてしまいます。

これはこれでセキュリティを保てるので、完了です。

ここから先はマニアックな人向け。

自動接続などではパスワードの入力を省きたいので、以下の作業を行います。

cd ~/.ssh[enter]
ssh-keygen -t dsa[enter]

実行すると、キーの保存先やパスフレーズを聞かれますが、全てenterキーを押して完了させます。

id_dsa、id_dsa.pubというファイルが出来上がっています。

id_dsaファイルは秘密キーなのでそのまま大切にします。

id_dsa.pubファイルは公開キーです。

これをSSH接続先のサーバ上の~/.ssh/authorized_keys2ファイルとしてアップロードします。

※~/.ssh/authorized_keys2ファイルが既に存在する場合、id_dsa.pubファイルの内容を追記するようにしてください。

cat id_dsa.pub >> ~/.ssh/authorized_keys2

これでSSH接続時のパスワードは聞かれないようになります。

admin スタッフブログ