Sirius

2007年1月21日(日) 11:40

LS-GL に ssh でログインする

LS-GL にはもともと ssh が入っているので、sshd を動かして、ssh で LS-GL にログインできるようにします。

まず、ホストキーが既に作成されているので、これを作り直します。
root でログインし、

1、ホストキーの作成。
# ssh-keygen -b 1024 -f /etc/ssh_host_key -N "" -t rsa1
# ssh-keygen -d -f /etc/ssh_host_rsa_key -N "" -t rsa
# ssh-keygen -d -f /etc/ssh_host_dsa_key -N "" -t dsa

それぞれ、既にファイルがあるので上書きのプロンプトが出ます。当然 y です。

2、ユーザの作成。
ssh でログインするユーザを作成します。私は同じユーザで共有もアクセスするので、まず、Web 管理画面からユーザを追加しました。次に、/etc/passwd ファイルを修正して、ユーザー ID 等を設定しました。

3、sshd の起動
# sshd

これで、取りあえず他のマシンから ssh でログインできました。

4、スタートアップ時に自動起動させる。
いろいろやり方はありますが、単純に telnet の代わりにします。telnetd を起動している次の行に /usr/local/sbin/sshd -f /etc/sshd_config を追加します。

5、ユーザ毎のキーを作成
ただログインするだけでは必要ありませんが、パスワード入力なしでログインしたりする場合に必要になります。
キーを作成するユーザでログインし、
$ ssh-keygen -b 2048 -t rsa1
$ ssh-keygen -f id_rsa -t rsa
$ ssh-keygen -f id_dsa -t dsa

これで、パブリックキーを使うとパスワードなしでのログインがでます。リモートからコマンドを実行するときに便利です。ssh の使い方は探すとたくさんあるのでここでは省略します。

ところが、他のマシンから LS-GL へは、ログインできるようになりましたが、LS-GL から他のマシンへは root 以外ではログインできませんでした。

ログインしようとすると、
# ssh foo.bar
Host key verification failed.

となってしまいました。どのホストもそうです。localhost もだめです。初めての現象でした。これに時間がかかりましたが、いろいろ知らべて /dev/tty のパーミッションの問題のようでした。

# ls -l /dev/tty
crw-r--r-- 1 root root 5, 0 Oct 10 2001 /dev/tty
# chmod go+w /dev/tty
# ls -l /dev/tty
crw-rw-rw- 1 root root 5, 0 Oct 10 2001 /dev/tty

オリジナルの HDD を確認しても同じパーミッションでした。他にも問題があるかもしれないけど、まあ、外からログインする製品ではないからね。

これで LS-GL からも他のマシンへ ssh でログインできました。su か sudo をインストールしたら、telnet は切ってしまおうと思います。

次に開発環境の整備です。

written by sirius [/Linkstation] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

この記事へのトラックバックPingURL

Comments

TrackBacks

Sirius

MySketch 2.7.2 written by 夕雨