★ssh
Linuxサーバを外部から操作する場合,最も簡単な方法はTelnetを使うことですが,Telnetではログイン時のユーザ名やパスワードおよび全ての通信データが平文で送受信されてしまいます.
その為,通信を盗聴することで重要なデータが外部に漏洩してしまう可能性があります.セキュアに外部からリモート管理するためには,全ての通信データを暗号化し送受信する何らかの方法が必要ですが,現在最も使われている方法がSSH(Secure
SHell)です.
LinuxではOpenSSH-3.4が使われていますが,Vineなどでは標準でインストールされます.
もし自動起動になってない場合はntsysvもしくはchkconfigで自動起動にしましょう.
設定ファイルはsshd_configです.
/etc/ssh/sshd_config
PasswordAuthentication no <- RSA秘密鍵 identityを必須にする
PermitRootLogin no <- rootでのログインを禁止する
PermitEmptyPasswords no <- パスワード無しのログインを許すか
RhostsRSAAuthentication no <- .rhosts等を信用するかどうか(RSA認証付き)
AllowUsers User-Name <- ユーザUser-Nameのみ接続許可をする
# service sshd restart
鍵の作成を行います。
アカウント User-Name でログイン後,ssh-keygenを実行します.
パスフレーズを聞かれますので入力すると鍵が作成されます.次に,identity.pubをauthorized_keysとしてコピーします.
作成された秘密鍵identityはクライアントマシンで使用するためFD等にコピーしておきます.
$ ssh-keygen -t rsa1
Generating public/private rsa1 key pair.
Enter file in which to save the key (/root/.ssh/identity):
/root/.ssh/identity already exists.
Enter passphrase (empty for no passphrase):*************
Enter same passphrase again:*************
$ cd /home/User-Name/.ssh
$ cp identity.pub authorized_keys
わが家ではクライアント機はWindowsです.Tera Term Proを使うことにします.
以下のファイルを手に入れて解凍します.
ttermp23.zip
ttrmp2319j.zip
ttssh15413j-build146.zip
termp23.zipを解凍したディレクトリでsetup.exeを実行する.
ttrmp2319j.zipを解凍したディレクトリのファイルをTera Term Proをインストールしたディレクトリにコピー.
ttssh15413j-build146.zipを解凍したディレクトリのファイルをTera Term Proをインストールしたディレクトリにコピー.
秘密鍵identityをTera Term Proをインストールしたディレクトリにコピー.
最後に環境変数TERATERM_EXTENSIONSを1に設定します.
Tera Term Proの設定はまずパスフレーズを入力して,RSA鍵を使うにチェックを入れ個人鍵のファイル名にidentityを選びログインします.
後は,Tera Term Proの設定->設定の保存しておきます.
この次にTTPのSSHポート転送機能を使ってメールの送受信に挑戦.
TTSSHのポート転送設定でsmtpとpop3を設定.
いつも使っているメールクライアントのbeckyでサーバの指定をlocalhostにしました.
するといとも簡単にSSH経由でメールの送受信が成功.
FTP転送はSSHではあまりうまく動きません.
理由はFTPは使用するポート番号が毎回変わる(PASV)のでOpenSSHがサポートしている単純なポート転送機能では代用できないということです.もちろんポートモードでの転送もできません.そのためSFTPという新しいプロトコルが採用されています.
クライアントのSFTPソフトとしてはSSHSecureShellCliant-3.2.0.exeがあり本家sshからダウンロードできます.このクライアントソフトを少し使ってみましたがffftpのような操作感で好感が持てました.
★ついでにWinSPC2でSFTP
設定の仕方や使い方はhttp://www.dream-seed.com/server/winscp.htmlなどに詳しく書いてあります.そこでPuTTYgenでSSH2のDSA鍵を作りましょう.
公開鍵をuser.pub,秘密鍵をuser.ppkとします.user.pubをフロッピーなどの手段を使ってサーバ機の/home/user/.sshにコピーします.
$ ssh-keygen -i -f user.pub >> authorized_keys2
とします.これでWinSPC2で/home/userにssh2プロトコルでアクセスすることができます.
サーバ機のsshd.confでは
Protocol 2,1
Subsystem sftp /usr/libexec/sftp-server
がないといけません.
Copyright 2002-2003 Kai All Rights Reserved & This site is Link Free
戻る