このページはOpenSSHを利用してセキュアなリモート通信を行なう手法をご紹介します。OpenSSH + TeraTermProを利用して比較的簡単に利用することができます。

vinelinuxで自宅サーバー公開ロゴ
サイトマップ

>>Linuxで自宅サーバー公開(TOP) >>OpenSSHの設定


OpenSSHの設定


OpenSSHの設定手順

OpenSSH設定手順

【関連項目】

SSHの利用方法(UTF-8 TeraTerm Pro編)

SSHの利用方法(PortForwarder編)

※見たい項目をクリックすると説明にジャンプします。


 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へダウンロードします。
FFFTPにより秘密鍵をダウンロード(FTPクライアントソフトにより秘密鍵をダウンロードします。)


 ▲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をダブルクリックして起動します。
”UTF-8 TeraTerm Pro”を起動

  最初の起動時には以下のような画面が表示されます。
  ※初期設定をするためCancelボタンを押します。
接続画面の設定ウィンドウが表示されます。とりあえず、初期設定を行なうためここではCancelボタンを押します。

  Setupメニューから初期設定を行ないます。
TeraTerm Pro(Setup画面)

  Terminalの設定(SetupメニューよりTerminalを選択)
Tera Term ターミナル設定画面


  SSH Authenticationの設定
SSH Authenticationの設定画面

  FileメニューよりNewConnectionを選択
TeraTerm Pro 接続画面

  認証ウィンドウが表示されます。設定したPassphrase:を入力してOKボタンを押します。
TeraTerm Pro 認証画面
   初めて接続するサーバーだと「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.