OpenSSHとは?
OpenSSHとは、TelnetやFTPの通信データを暗号化する技術です。
暗号化にはSSH(Secue Shell)というプロトコルが利用されます。
TelnetおよびFTPにおいてログイン時のパスワードなど全てのデータを暗号化できるため
より安全な通信が可能となります。
VineLinuxでは標準でOpenSSHがインストールされています。
ここではOpenSSHを使用したサーバの設定方法からWindows上でSSHクライアントを利用する方法
をご紹介します。
▲OpenSSH設定手順へ
OpenSSHのインストール
・aptコマンドによりOpenSSHのインストールを行います。
|
[root@]# apt-get install openssh pt-get install openssh
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
* openssh は既に最新バージョンがインストールされています
0 個のアップグレードパッケージ, 0 個の新規パッケージ, 0 個の削除/リプレースパッケージ, 0 個の保留パ
ッケージがあります。
[root@]#
|
すでに最新版がインストールされている場合は、上のようなメッセージがでます。
インストールが必要な場合は、インストールを行ってください。
▲OpenSSH設定手順へ
OpenSSHの設定
OpenSSHの設定は「/etc/ssh/sshd_config」ファイルで行います。
viエディタで設定ファイルを開きます。
|
[root@]# vi /etc/ssh/sshd_config [return]
|
設定ファイル「/etc/ssh/sshd_config」を環境に合わせて設定します。
|
</etc/ssh/sshd_configファイルより抜粋>
PermitRootLogin no ←rootでのログインを禁止
...
IgnoreRhosts yes ←.rhostsおよびhost.equivファイルでの認証を許可しない
...
RhostsAuthentication no ←パスワードなしでログインできるrhosts認証を禁止
...
RSAAuthentication yes ←RSA鍵ファイルを利用したユーザー認証を許可
...
RhostsRSAAuthentication yes ←RSA鍵の交換でrhosts認証を許可
...
PermitEmptyPasswords no ←パスワードなしでのログインを禁止
...
AllowUsers user ←SSHでログインできるユーザーを限定
(例:ユーザー名が"user"の場合)
|
|
設定を有効にするためSSHを再起動します。
|
[root@]# /etc/rc.d/init.d/sshd restart [return] sshdを停止中: [ OK ]
sshdを起動中: [ OK ]
|
以上でOpenSSHの設定は完了です。
▲OpenSSH設定手順へ
鍵ファイルの作成
SSHによる暗号化通信では暗号化するための鍵が必要となります。
SSHでログインを許可したユーザでログインして鍵ファイルをつくります。
(例 ユーザー名:"user"の場合)
|
[user@ssh]$ ssh-keygen -t rsa1
Generating public/private rsa1 key pair.
Enter file in which to save the key (/home/user/.ssh/identity): (Enter)
Created directory '/home/user/.ssh'.
Enter passphrase (empty for no passphrase): (パスワードを入力)
Enter same passphrase again: (再度パスワードを入力)
|
上記手順で秘密鍵と公開鍵のペアがユーザディレクトリに作成されます。
ユーザーディレクトリ配下の「.ssh」ディレクトリへ移動します。(例 ユーザー名:"user"の場合)
|
[root@]# cd /home/user/.ssh [return]
|
作成された鍵ファイルを確認
|
[root@]# ls [return]
identity identity.pub
|
|
<鍵ファイルの種類>
・identity: 秘密鍵
クライアント(Windows)側のPCに保存します。
・identity.pub 公開鍵
サーバー側のPCに保存します。
|
|
公開鍵のファイル名を変更します。
|
[root@]# mv identity.pub authorized_keys [return]
|
※ここがポイントです。ファイル名を間違わないように注意しましょう。
以上でサーバー側での作業(鍵ファイル作成)は完了です。
後はクライアントPC側に秘密鍵をダウンロードします。
・秘密鍵をクライアントPC側へ移動
FFFTPなどのクライアントに接続して「/home/user/.ssh/」へ移動します。
秘密鍵「identity」ファイルをクライアント側PCへダウンロードします。
▲OpenSSH設定手順へ
SSHの利用方法(UTF-8 TeraTerm Pro編)
ここでは「UTF-8 TeraTerm Pro」を使用した接続方法をご紹介します。
※Googleなどで"UTF-8 TeraTerm Pro"で検索するとダウンロードサイトが検索できます。
(ここではUTF-8 TeraTerm Proのインストール手順は省略します。)
・SSHクライアントソフト(UTF-8 TeraTerm Pro)の設定
まずはSSHクライアントソフトを起動します。
↓UTF-8 TeraTerm Proをダブルクリックして起動します。
最初の起動時には以下のような画面が表示されます。
※初期設定をするためCancelボタンを押します。
Setupメニューから初期設定を行ないます。
Terminalの設定(SetupメニューよりTerminalを選択)
SSH Authenticationの設定
FileメニューよりNewConnectionを選択
認証ウィンドウが表示されます。設定したPassphrase:を入力してOKボタンを押します。
初めて接続するサーバーだと「Known hostsリストに登録されていないホストだよ」といった
メッセージが表示されます。
「このホストをknown hostsリストに追加する」にチェックをつけて続行をクリックします。
UTF-8 TeraTermProだとインストールされたディレクトリの「ssh_known_hosts」というファイル
にサーバーが登録されます。2回目以降は表示されないはずです。
SSHでのログイン時は以下のようにタイトルのアイコンマークが鍵マークとなります。
(通常のログイン)→
(SSHでのログイン)
無事にログインできれば、正常にSSHが動作しています。
これで少しは安全にサーバー管理ができそうです^^;
▲OpenSSH設定手順へ
SSHの利用方法(PortForwarder編)
PortForwarderとはWindowsでのSSHポート転送用ツールです。
PortForwarderを起動するだけで、SSH転送を可能にすることができます。
ポート転送機能に特化しているため、使い方もシンプルでとっても便利なソフトです。
・PortForwarderのインストール
PortForwarderのダウンロードページより最新版をダウンロードします。
次にダウンロードしたファイルを展開します。
フォルダ内に以下のようなファイルがあると思います。(バージョンにより若干異なるかも?)
・設定ファイルを作成
環境に合わせて設定ファイルを作成します。
「config_sample.txt」をコピーして作成すると便利かもしれません。
以下は作成例です。(SSHサーバ:xxx.co.jpで23番ポートに転送)
|
<config.txtファイルより抜粋>
Host xxx ←接続名を設定(分かりやすい名前)
HostName xxx..co.jp ←SSHサーバのホスト名かIPアドレスを設定
User xxxx ←SSHサーバへのログイン名
LocalForward 23 localhost:23 ←ローカルホストの23番ポートに接続すると
指定したSSHサーバの23番に転送
|
|
上記ファイルをPortforwarderのフォルダ内に分かりやすい名前で保存します。
(ここでは、「config.txt」という名前で保存しています。)
・PortForwarderの起動および接続
あとは実際にSSHサーバに接続しています。
起動用実行ファイル「PortForwarder.ext」をダブルクリックします。
以下のようなPortForwarderのメイン画面が表示されます。
まずは先ほどしてしたCofig file(例では「config.txt」ファイルが該当します。)
次にConnectボタン(SSHサーバへの接続)を押します。
以下のようなログインパスワードが要求されます。
ログインパスワードを入力しSSH接続が始まると以下のように"Status:Connected"
に変わります。
|
●PortForwarderで公開鍵認証を使う場合
PortForwarderの展開先ディレクトリに作成してある秘密鍵を格納することにより
利用することが可能です。
※秘密鍵のファイル名は以下にする必要があります。
1、SSH1(RSA認証):identity
2、SSH2(DSA認証):id_dsa
3、SSH2(RSA認証):id_rsa
|
|
▲OpenSSH設定手順へ
Copyright(c) 2005, All Rights Reserved.