サーバを新しくしたので、sshも再度導入することにした。(2011/09/15) ローカルネットワークからtelnetでアクセスしてssh環境を作成(前回と同じ) ハードウェア:日立 Flora 270W PC8MF1 (CPU:Core2Duo T5500 Memory 1GB HDD 40GB) OS:Freebsd−8.2 webサーバ:apache−2.2.20 SSL :OpenSSL 0.9.8q 2 Dec 2010 SSH :OpenSSH_5.4p1 FreeBSD-20100308, OpenSSL 0.9.8q 2 Dec 2010 認証 : DSA使用 クライアント:KAZE2 os:WindowsXP SP3 クライアントソフト:UTF-8 TeraTerm Pro V4.44
$ pwd /usr/home/USER ←ログオンユーザーのホームディレクトリー $ mkdir .ssh $ cd .ssh $ ssh-keygen -t dsa ←ssh2用のDSA鍵を作成する Generating public/private dsa key pair. Enter file in which to save the key (/home/USER/.ssh/id_dsa): ←キーを保存するディレクトリー(CRのみ入力) Enter passphrase (empty for no passphrase): ←パスフレーズを入力 Enter same passphrase again: ←同じパスフレーズを再入力 Your identification has been saved in /home/USER/.ssh/id_dsa. Your public key has been saved in /home/USER/.ssh/id_dsa.pub. The key fingerprint is: 4d:8e:7d:fa:44:AA:AA:AA:AA:AA:AA:AA:aa:01:c6:1d USER@Flora-T5500.ddo.jp The key's randomart image is: $ $ pwd /usr/home/USER/.ssh $ l total 4 -rw------- 1 nic nic 751 Sep 15 00:04 id_dsa ←mod600が大切またはmod400 -rw-r--r-- 1 nic nic 612 Sep 15 00:04 id_dsa.pub $ touch authorized_keys2 $ l total 4 -rw-r--r-- 1 nic nic 0 Sep 15 00:08 authorized_keys2 -rw------- 1 nic nic 751 Sep 15 00:04 id_dsa ←秘密鍵(クライアントPCにのみ置く) -rw-r--r-- 1 nic nic 612 Sep 15 00:04 id_dsa.pub ←公開鍵(サーバー側に置く基本データ、処理が必要)キーの作成完了 自分のホームディレクトリの下で 公開鍵を登録する /home/USER/.sshにおいて touch authorized_keys2 ←ファイルが無い場合は作る。ある時は不必要 chmod 644 authorized_keys2 ←モードの変更 cat id_dsa.pub >> authorized_keys2 ←公開鍵を追加書き込み /etc/ssh/sshd_configの以下を追加変更(OpenSSH_5.4p1バージョンではDSAがあった) 注釈行を無視して有効な文のみを取り出した( grep -v -e '^[ \t]*#' -e '^$' sshd_config ) /etc/ssh/sshd_configの編集 注釈行抜きだと Flora-T5500# grep -v -e '^[ \t]*#' -e '^$' sshd_config Port 22 Protocol 2 ←変更 # 2011/9/15(木) HostKey /etc/ssh/ssh_host_dsa_key ←変更 # 2011/9/15(木) LoginGraceTime 2m PermitRootLogin no MaxAuthTries 6 DSAAuthentication yes ←変更 # 2011/9/15(木) AuthorizedKeysFile .ssh/authorized_keys2 ←変更 # 2011/9/15(木) PasswordAuthentication no ←変更 # 2011/9/15(木) パスワード認証をさせない PermitEmptyPasswords no ←変更 # 2011/9/15(木) ChallengeResponseAuthentication no ←変更 # 2011/9/15(木) PAM(パスワード)認証をさせない MaxStartups 5:70:10 ←変更 # 2011/9/15(木) Subsystem sftp /usr/libexec/sftp-server AllowUsers USER1 USER2 ←変更 # 2011/9/15(木) ユーザーを限定 Flora-T5500#
クライアントパソコンに秘密鍵を移動 サーバー側の/home/USER/.ssh/id_dsa を クライアント側に移動。 (本来は、秘密鍵の移動がないように、クライアント側で鍵を作り、公開鍵をサーバーに送る) teratermを使うことから c:\Program Files\teraterm\ssh\id_dsa に置く。 teratermのprivate key fileを 上記に設定。 後は、ユーザーIDとパスフレーズを入力してログオンあれ? つながらない!! ここは前回と違う tail /var/log/messages を取ると Sep 15 21:35:17 Flora-T5500 sshd[19978]: error: Could not load host key: /etc/ssh/ssh_host_dsa_key エラーが出ている。 /etc/ssh/ssh_host_dsa_keyが読めないようだ。確かにこのファイルは無い。 なんだったけ!!?? ググっていいると ホストキーが無いとのこと /etc/ssh/ssh_host_dsa_key の作成の仕方が載っていた。(前回も作ったのだろうか? 記憶と記録がない) # ssh-keygen -t dsa -N "" -f /etc/ssh/ssh_host_dsa_key DSAキー # ssh-keygen -t rsa -N "" -f /etc/ssh/ssh_host_key RSAキー # ssh-keygen -t dsa -N "" -f /etc/ssh/ssh_host_dsa_key Generating public/private dsa key pair. Your identification has been saved in /etc/ssh/ssh_host_dsa_key. Your public key has been saved in /etc/ssh/ssh_host_dsa_key.pub. The key fingerprint is: 2e:93:53:e0:55:66:5b:b5:6d:dc:0e:21:15:9d:32:08 root@Flora-T5500.ddo.jp The key's randomart image is: +--[ DSA 1024]----+ | E= +o=o.| | + + + *o| | . . . = =| | . o + | | . S .| | + | | = . | | + | | | +-----------------+最初にsshdを立ち上げた時に自動作成されると書いてあるHPもあった。 (これはsshdを自動たち上げするスクリプトの中にホストキーを作成する部分があるようだ。) しかし自動作成されないので自分で作った。 これでsshによる接続が可能となった。 あとは22番ポートを適当に変更して外部に公開するのみ。
inetdを利用してsshを使うためポート番号の変更は/etc/services にあるssh(3つ)関係の ポート番号を変更した(例:11111)。 #ssh 22/sctp #Secure Shell Login #ssh 22/tcp #Secure Shell Login #ssh 22/udp #Secure Shell Login ssh 11111/sctp #Secure Shell Login ssh 11111/tcp #Secure Shell Login ssh 11111/udp #Secure Shell Loginこのままでは接続できないのでinetdを再立ち上げする。 これで、別ポート番号で接続可能となった。 あとはCTUのポート解放だ。
|