カスタム検索
|
Tweet |
|
|
OpenSSHの小技
Modified: 13-14 June 2010,
24 June 2006, 15
January 2006, 2
December 2005, 2
July 2004
OpenSSHのポートを変えて2つ起動させる方法 (24 June 2010)
CentOS5にOpenSSH5をインストールする方法 (13 June 2010)
ERRORやWARNの回避方法 (24 June 2006)
SFTPができるようにする方法 (16 November 2005)
パスワードを入力せずにログインさせる方法(秘密鍵をあらかじめメモリに置く) (2 December 2005)
RSAキーだけ(パスワードなし)ログインできるようにする (24 July 2005)
認証方法を特定する方法 (2 July 2004)
RSA認証のみで、パスワード認証を禁止する方法 (11 January 2004)
rootでログインできるようにする方法 (11 January 2004)
rootでパスワードログインはできないが暗号鍵のログインは認める方法 (15 January 2006)
OpenSSHを更新する方法 (3 November 2002)
”Connection refused”のダイアログが出て接続できない (16 February 2002)
ユーザ認証用の公開鍵・秘密鍵を作る方法 (9 January 2004)
Linuxユーザを作ったとき自動的に秘密鍵と公開鍵を作成する方法 (14 June 2002)
RSA暗号キーを作成する方法 (7 July 2002)
ホスト認証の鍵はどこにあるのか (18 January 2004)
フィンガープリントを見る方法 (18 January 2004)
"/etc/ssh/sshd_config"を変更する
CentOS3.5では、デフォルトで有効になっています。
:
# override default of no subsystems
Subsystem sftp /usr/libexec/openssh/sftp-server
"/etc/ssh/sshd_config"を変更する
:
# Authentication:
:
PermitRootLogin yes
:
rootでパスワードログインはできないが暗号鍵のログインは認める方法 ![]()
"/etc/ssh/sshd_config"を変更する
:
# Authentication:
:
PermitRootLogin without-password
:
"/etc/ssh/sshd_config"を変更する
:
# Authentication:
:
RSAAuthentication yes
:
PasswordAuthentication no
:
暗号キーペアの作成
まずは、サーバー側で、暗号キーペア(公開鍵と秘密鍵)を作成します。
暗号キーペア(公開鍵と秘密鍵)の作成には、ログインさせるユーザのホームディレクトリに移動し、は、"ssh-keygen" のコマンドで作成します。
パスフレーズ(passphrase)は、長いパスワードのことです。10文字から30文字の間にすべきといわれています。
$ ssh-keygen -t rsa1
Generating public/private rsa1 key pair.
Enter file in which to save the key (/home/tomo/.ssh/identity): <Enter>
Created directory '/home/tomo/.ssh'.
Enter passphrase:*******************
Enter the same passphrase again:*******************
Your identification has been saved in /home/tomo/.ssh/identity.
Your public key has been saved in /home/tomo/.ssh/identity.pub.
The key fingerprint is:
d1:a5:8e:68:c2:eb:53:d3:94:5e:5d:0f:07:ae:42:43 tomo@rh72server
$ホームディレクトリを、"/home/tomo" とすると、作成された公開鍵は、
/home/tomo/.ssh/identity.pub
秘密鍵は、
/home/tomo/.ssh/identity
に作られます。
以下のように、ファイル名を変更します。
$ cd ~/.ssh
$ cp identity.pub authorized_keys
$ chmod go-rwx authorized_keys
Windowsから、”ttssh”で接続すると、以下のダイアログが出て接続できないときがあります。
Windowsの”ttssh”では、原因がわからないので、コンソールからLinuxの”ssh”コマンドで接続してみます。
接続できない場合、その原因が、エラーメッセージとして出てきますので、それを頼りに原因を回避しましょう。
ポート22を指定してみます
以下のように、”ttssh.exe” に、ホストアドレス(rh72server)とポート(22)を指定して起動してみます。
C:\TOOLS\TTERMPRO\rhserver\ttssh.exe rh72server:22
sshコマンドで、”Permission denied (publickey,keyboard-interactive)” が出る
Redhat Linux7.2で、SSHを動作させようとすると、”Permission denied (publickey,keyboard-interactive)” というメッセージが出ます。
Redhat Linux7.2 では、SSHのプロトコルがデフォルトで、SSH2優先になっていることが原因です。
"/etc/ssh/sshd_config" を編集し、SSH1を優先するように書き換えればOKです。
Protocol 2,1 を、以下のように変更します。
Protocol 1,2 最後に、sshdを再起動します。
「SSH Server」で、「User SSH Key Setup」を選択します。
「User SSH Key Setup」を選択すると、以下の画面になりますので、すべてにチェックを入れて、「保存」ボタンを押します。
この設定をすると、新しいLinuxユーザを登録したらそのユーザ用のペアキー(公開鍵と秘密鍵)が自動的に作成されるようになります。
すべてにチェックを入れ、「保存」ボタンを押し、「Apply Changes」ボタンを押します。