您的位置:首页 > 其它

ssh 不输密码远程登录

2008-03-17 16:09 260 查看
ssh(Secure Shell)を導入しているホスト間でパスワードを入力せずにログインすること
を可能にする方法を解説します。

【概要】

ssh は、接続先によって使用する protocol version が決定されます。
バージョンにより、設定方法が異なりますので、ご注意ください。
Turbolinux Server 6.5 より、version 2 が優先的に利用されています。

ssh の protocol version 1 は、ログイン時にRSA認証を行います。
そのために、事前に ssh-keygen を実行し、RSA キーの組を作成しておきます。
ssh-keygen を実行すると、プライベートキーは~/.ssh/identity に、
公開キーは ~/.ssh/identity.pub に作成されます。
この identity.pub を、リモートマシンの ~/.ssh/authorized_keys にコピーしておく
ことによって、パスワードを毎回入力することなくログインすることができるように
なります。RSA 認証は、rhosts 認証に比べて、より安全です。

ssh の protocol version 2 は、ログイン時にDSA認証を行います。
そのために、事前に ssh-keygen を実行し、DSA キーの組を作成しておきます。
ssh-keygen を実行すると、プライベートキーは~/.ssh/id_dsa に、
公開キーは ~/.ssh/id_dsa.pub に作成されます。
この id_dsa.pub を、リモートマシンの ~/.ssh/authorized_keys2 にコピーしておく
ことによって、パスワードを毎回入力することなくログインすることができるように
なります。

【手順】

以下の解説の中で、local$ はローカルホスト上での操作を、remort$ はリモート
ホスト上での操作を表すプロンプトです。

[SSH protocol version 1 の場合]

(1) RSA キーを生成します。

local$ ssh-keygen

* 出力するファイル名、パスフレーズの入力を求められますが
何も入力せずに全てEnteyキーを押下して下さい。

(2) 公開キーをリモートホストにコピーします。

local$ scp ~/.ssh/identity.pub name@remort.host:

(3) リモートホストにログインし、authorized_keys ファイルを生成します。

local$ ssh name@remort.host
remort$ cd .ssh/
remort$ touch authorized_keys
remort$ chmod 600 authorized_keys
remort$ cat ~/identity.pub >> authorized_keys
remort$ rm ~/identity.pub

(4) 設定完了です。動作を確認します。

remort$ logout
local$ ssh name@remort.host

[SSH protocol version 2 の場合]

(1) DSA キーを生成します。

local$ ssh-keygen -t dsa

* 出力するファイル名、パスフレーズの入力を求められますが
何も入力せずに全てEnteyキーを押下して下さい。

(2) 公開キーをリモートホストにコピーします。

local$ scp ~/.ssh/id_dsa.pub name@remort.host:

(3) リモートホストにログインし、authorized_keys2 ファイルを生成します。

local$ ssh name@remort.host
remort$ mkdir .ssh
remort$ chmod 700 .ssh/
remort$ cd .ssh/
remort$ touch authorized_keys2
remort$ chmod 600 authorized_keys2
remort$ cat ~/id_dsa.pub >>authorized_keys2
remort$ rm ~/id_dsa.pub

(4) 設定完了です。動作を確認します。

remort$ logout
local$ ssh name@remort.host

【注意】

.ssh/authorized_keys(2) のパーミッションは、所有者に対しては read/write を許可し、
他のユーザーには、アクセスを許可しないで下さい。同ファイルに至るディレクトリの
パーミッションにも注意して下さい。ユーザー以外に write を許可してはいけません。
パーミッションが正しく設定されていないと、パスワードを要求されてしまいます。

sshdへのアクセスは/etc/hosts.allowファイルの設定で許可しておく必要があります。

【参考】

protocol version の優先順位を変更するには、設定ファイルの Protocol 項目を修正
してください。

[/etc/ssh/sshd_config]
-------------------------
Protocol 2,1
-------------------------

[/etc/ssh/ssh_config]
-------------------------
Protocol 2,1
-------------------------




キーワード
ssh authorized_keys ssh-keygen

関連文書
(none)



[align=right]Last modified : Fri Feb 08 JST 2002 # 2 [/align]



[align=left]■サイトマップ ■お問い合せ ■プライバシーポリシー[/align]

_uacct = "UA-1225114-1";
urchinTracker();



Turbolinux

ウェブ

© 2008 Microsoft | プライバシー | 使用条件 | ご意見ご感想
自分だけの検索ボックスを作る

スポンサー サイト



0
1
2
3
4
5
6
7
8
9

この検索キーワードを Live.com で検索

考えられる検索用語:

検索キーワードを入力してください。

を含む検索結果が見つかりませんでした。
この検索キーワードを Live.com で検索

その他の役立つヒント:
存在するはずのページが見つからない場合は、アドレスをお送りください

Live.com で他の検索結果を見る

例:
本地主机(客户机)IP:192.168.5.254 用户:fdsagent
远程主机(服务机)IP:192.168.5.36 用户:fdsagent

客户机上:
# cd /export/home/ fdsagent
# mkdir .ssh
# cd /export/home/fdsagent/.ssh
# ssh-keygen -t dsa
公開/非公開 dsa 鍵のペアを生成しています。
鍵を保存するファイルを入力してください (/export/home/fdsagent/.ssh/id_dsa):(Enter)
パスフレーズを入力してください (パスフレーズなしの場合は空): (Enter passphrase)
パスフレーズをもう一度入力してください: (Enter passphrase)
識別情報が /export/home/fdsagent/.ssh/id_dsa に保存されました。
公開鍵が /export/home/fdsagent/.ssh/id_dsa.pub に保存されました。
鍵のフィンガープリント:
9f:fb:52:e9:60:4b:d0:12:04:59:dc:9e:b7:ce:e1:e8 fdsagent@FDES_UT
# ls
id_dsa id_dsa.pub known_hosts
# scp /export/home/fdsagent/.ssh/id_dsa.pub fdsagent@192.168.5.36: /export/home/ fdsagent/.ssh/authorized_keys
ホスト '192.168.5.36 (192.168.5.36)' の認証を確立できません.
RSA 鍵フィンガープリントは 3f:f9:c0:86:92:20:37:a2:e8:42:d8:5a:1c:5f:8e:37 です
本当に接続を継続してもよろしいですか (yes/no)? yes
警告: 既知ホストのリストに '192.168.5.36' (RSA) を追加しました。
繝代せ繝ッ繝シ繝: (Enter passwd)
id_dsa.pub 100% |*****************************| 603 00:00 A

服务机上:
# cd /export/home/fdsagent/.ssh
# ls
authorized_keys known_hosts
# chmod 600 authorized_keys

举例:
1)# ssh fdsagent@192.168.5.36
鍵 '/export/home/fdsagent/.ssh/id_dsa' のパスフレーズを入力してください: (Enter passphrase)
Last login: Sun Jan 14 18:50:50 2007 from 192.168.5.254
Sun Microsystems Inc. SunOS 5.10 Generic January 2005
$
2)# scp /export/home/fdsagent /test.txt fdsagent@192.168.5.36: /export/home/ fdsagent/
鍵 '/export/home/fdsagent/.ssh/id_dsa' のパスフレーズを入力してください: (Enter passphrase)
test.txt 100% |*****************************| 736 00:00
$3)# sftp fdsagent@192.168.5.36
192.168.5.36 に接続しています...
sftp>

注意 :当输入的passphrase不正确时,要求输入远程登录用户密码
鍵 '/export/home/fdsagent/.ssh/id_dsa' のパスフレーズを入力してください:
繝代せ繝ッ繝シ繝:
峨ヱ繧ケ繝ッ繝シ繝:
峨ヱ繧ケ繝ッ繝シ繝:
宴Aクセス権がありません (gssapi-keyex,gssapi-with-mic,publickey,keyboard-interac
tive)。
接続を切断しました
$

远程登录之前:
1)在$HOME/.profile 脚本中写入以下内容后保存:
if [ "$SSH_AUTH_SOCK" = "" -a -x ssh-agent ]; then
eval `ssh-agent`
fi
2)执行命令:
# ssh-add
/export/home/fdsagent/.ssh/id_dsa のパスフレーズを入力してください: (Enter passphrase)
識別情報が追加されました: /export/home/fdsagent/.ssh/id_dsa (/export/home/fdsagent/.ssh/id_dsa)
3)执行命令(不需密码):
# ssh test@192.168.5.251
Last login: Sun Jan 14 18:55:34 2007 from 192.168.5.254
Sun Microsystems Inc. SunOS 5.10 Generic January 2005
$

若服务器重启,再次登录需要执行ssh-add命令并输入passphrase,之后远程登录不需passphrase或用户密码。
不使用ssh-add,每次远程登录都需要输passphrase

参考网址:http://docs.sun.com/app/docs/doc/819-7061/6n91j2v9k?a=view
http://www.turbolinux.co.jp/support/document/knowledge/152.html
http://www.unixuser.org/~euske/doc/openssh/jman/ssh-keygen.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: