OpenSSHを使う |
|
サーバーを管理していると、外部からサーバーを操作したいときがあります。しかし、telnetをそのまま使うとユーザー/パスワードが漏れてしまいます。そんなときに、ssh通信を行う事で安全ににアクセス出来ます。
今回は、OpenSSHをインストールし、外部からアクセス出来る環境を整えます。
OpenSSHはTurboLinuxのインストール時に合わせてインストールしていたので、今回は設定のみ紹介です。
作業の流れは次のようになります。
- sshd_configの設定
- 鍵の作成
- クライアントからのログイン
- ADSLルータの設定
- sshd_configの設定
sshdの設定を行います。
ポリシーとしてはRSA認証のみを許可します。
この場合公開鍵、秘密鍵を利用して認証を行う事になります。
/etc/ssh/sshd_configファイルを修正します。
RSAAuthentication yes <-これをyesに変更
PasswordAuthentication no <-Systemで使用するパスワードを使うか否か。noにします |
- 鍵の作成
鍵の作成は、ログインするユーザー毎に行います。
作成した公開鍵をユーザーホームディレクトリ/.ssh/に配置し、秘密鍵はユーザーが持ち歩く事になります。
以下に鍵の作成手順を示しますが、この操作はログインするユーザー毎に行ってください。
以下の例では、ユーザーhogeの鍵を作成しています。
[hoge hoge]$ ssh-keygen -t rsa1 <--rsa1の鍵を作成します。
Generating public/private rsa1 key pair.
Enter file in which to save the key (/home/hoge/.ssh/identity):このままでよいので未入力でEnter
Created directory '/home/hoge/.ssh'.
Enter passphrase (empty for no passphrase):適当なパスフレーズを入力します。ログインで使用します。
Enter same passphrase again:
Your identification has been saved in /home/hoge/.ssh/identity. <-- 秘密鍵です。
Your public key has been saved in /home/hoge/.ssh/identity.pub.
The key fingerprint is:
ae:b3:87:ef:e3:38:86:83:9c:38:c5:bc:14:0d:08:14 hoge@ryouto.jp
[hoge hoge]$ cd .ssh
[hoge .ssh]$ cp -p identity.pub authorized_keys
|
- クライアントからのログイン
Windowsからの接続方法を説明します。
使用するクライアントソフトはTera Term ProとTTSSHです。telnet接続の際にいつもTera
Term Proを使用していた為、今回もこのクライアントを選択しました。
TeraTermProをインストール後、TTSSHをTeraTermProのインストールディレクトリに展開して下さい。
また、先に作成したidentityファイルをクライアントマシンへ持ってきておきます。
@ttssh.exe実行後、Tera Term:New connectionのダイアログが表示されますが、キャンセルします。
Aメニュー[Setup]-[SSH...]を選択。
Read/write fileボタンを押下し、saveするファイル名を入力します。(defaultのssh_known_hostsでいいと思います。)終了したらOKボタンを押下します。
Bメニュー[Setup]-[Authentication...]を選択。
Use RSA key to loginを選択し、Private key fileボタンを押下し、「2.鍵の作成」で作成したidentityファイルを選択します。
Cメニュー[Setup]-[Save Setup...]を選択し、現在の設定を保存します。
Dメニュー[File]-[New Connection]を選択します。
TCP/IPをクリック、Host:は接続先マシンの名前もしくはIPアドレスを入力。ServiceはSSHをセンタkすし、OKボタンを押下します。
Eパスフレーズの入力
SSH Authenticationダイアログが表示されたら、ユーザー/パスフレーズを入力します。
2回目以降に起動したときは手順Dからです。
- ADSLルーターの設定
ssh通信ではポート番号22番を使います。
従って、ADSLルータに22番ポートを開けてやる必要があります。
ADSLルータの設定は使用しているものによって方法が異なると思いますが、たいていの場合、IPフィルタの設定とNATの設定を行います。
我が家はMegaBit GearというADSLルータです。
まず、IPフィルタ設定で、22番ポートを開けてやります。
(外部から22番ポート宛に来たリクエストは通過させる設定です。)
No |
優先度 |
インターフェース |
送信元IPアドレス/マスク長 |
送信先IPアドレス/マスク長 |
プロトコル |
送信元ポート番号 |
送信先ポート番号 |
アクション |
17 |
31 |
接続先1から受信 |
0.0.0.0/0 |
PPP取得 |
TCP |
* |
22 |
通過 |
次にNATアドレス変換設定です。
外部より22番ポートへ宛に届いたリクエストをどこのIPアドレスへ転送するかを決定します。
飛ばす先は当然サーバー(192.168.0.11がサーバーのIPです。)です。
No |
優先度 |
接続先の名称 |
LAN側IPアドレス |
ADSL側IPアドレス |
プロトコル |
ポート番号 |
3 |
3 |
接続先1 |
192.168.0.11 |
自ADSL側アドレス |
TCP |
22 |
以上でお終いです。
お問い合わせはwebmaster@ryouto.jpまで。
Copyright (C)2003 ryouto.jp. All Rights Reserved.