ssh-1.2.26

文書番号:J8044

この作業はかなり前に行ったので、記憶を元にして書いてます。どこかで嘘書いてるかもしれません(さすがに全部嘘って事は無いと思う)。参考程度によろしくどうぞです。


1. ソースの入手

日本国内でしたら、ring projectのftpサーバへ行かれるのが大変よろしいかと。

ftp://ftp.ring.gr.jp/pub/net/ssh/


2. sshのインストール(クライアント側)

./configure
make
su root
make install

とします。
多くの方々がおすすめしてますように、

./configure --with-rsh=/usr/bin/rsh --program-transform-name='s/^s/r/'

とするのもいいかもしれないです。


インストール時には、/etc/にこのホストマシンの鍵(ssh_host_key、ssh_host_key.pub)と、sshd_config、ssh_configファイルが作成されます。これらのconfigファイルは、server_config.sample、host_config.sampleファイルを元にして作成されてます。



3. おお、なんか知らんが(をい)、鍵を作るべ。

exit
ssh-keygen

パスフレーズを入力して完了。ホームディレクトリに.sshというディレクトリが作られ、identity、identity.pubというファイルが作られます。
まず、identity.pubファイルをauthorized_keysというファイルとしてコピーします。

cp identity.pub authorized_keys

次にサーバ側マシンの自分のホームディレクトリに.sshディレクトリを作成し、authorized_keyファイルを移して、そこへ置きます。

※ファイルのpermissionなどに注意。



4. もう一台(リモート側)のマシンへインストール

もう一台のマシンも、同じNetBSD/mac68kマシンなので、sshのバイナリファイルなどはそのまま使えます。ですんで、ものすごく良く言えば「能率的」、ふつうに言えば「非常に手抜き」なインストールを行いました。
なんでまたクライアント側から先にインストールしたのかといえば、リモート側はLC520、クライアント側はQuadra650でして、クライアント側でコンパイルした方が速かったからです。^^;

クライアント側マシンにて、findやら、make時のログなどを駆使して、sshのインストール時に入ったファイルを調べあげ、tar.gzで固めたファイルを作成し、これをリモート側に移して展開し、ssh関連ファイルをインストールします。

#そういやソースのあるディレクトリをtar.gzで固めてもって来るって手もあったなぁ...

次に、クライアント側マシンの/etc/ssh_config、sshd_configファイルをリモート側に持ってきて、同じく/etc/に置きます。
で、手動で/etc/ssh_host_keyを作らせます。

ssh-keygen -b 1024 -f /etc/ssh_host_key -N ''

※ここらへんの作業はほとんどrootで行います。



5. ホスト登録の儀

私の環境では諸事情により、手作業にて行いました。本来なら、make-ssh-known-hosts.plを使った方がいいでせう。

リモート側マシンでrootになって、~/.ssh/authorized_keysファイルのコピーを作成して、テキストエディタでちょこっと編集します。

cp authorized_keys ssh_known_hosts
vi ssh_known_hosts

で、

1024 37 34 ..... 59 fk200329@Quadra650

となってるトコを、

quadra650 1024 37 34 ..... 59 fk200329@Quadra650

などとして、このファイルを/etc/ssh_known_hostsファイルとして置きます。

※これまたpermissionなどに注意。



6. 接続してみるのテスト

リモート側マシンでsshdを立ち上げます。

/usr/local/sbin/sshd

クライアント側マシンからsloginしてみます。

slogin -C LC520

パスフレーズを入れてうまくログインできればOKです。



7. 残務整理

リモート側マシンのinetd.confをいじり、telnetやr系コマンドのサービスを停止させるようにします。
さらに必要なら、/etc/hosts.deny、hosts.allowなどもいじります。
で、inetdをkill -HUPします。これでOK。

次に、リモート側マシンの/etc/rc.localファイルにはsshd向けのスクリプトがコメントアウトされて書かれてますから(1.3.3での場合)、このコメントを外して生かすようにします。



8. 猿の如く使え。

今後はtelnetとはエンガチョして、slogin等を使います。それと、ファイルの転送についてもscpという安全なリモートファイルコピーコマンドが使えますから、人によってはftpともすっぱりエンガチョできるかもです。
また、毎回パスフレーズを入力するのが面倒なら、ssh-agentを立ち上げ、ssh-addでパスフレーズを入力しておきます。 さすれば後はパスフレーズの入力無しでsloginなどが使えます。

Quadra650# ssh-agent tcsh
Quadra650# ssh-add
Need passphrase for /home/yanai/.ssh/identity (fk200329@Quadra650).
Enter passphrase: 
Identity added: /home/yanai/.ssh/identity (fk200329@Quadra650)
Quadra650# slogin -C LC520

うちの場合は、ssh対応でないtelnetソフトも用いますので(MacOSマシンのtelnetソフト等)、telnetも使えるようにしておかねばなりません。
しかし、うちの場合はNetBSD/mac68kマシンが2台あり、internetにつながったりするマシン側でsshdを走らせ、telnetはもう片方のマシンから入るようにしてるので(必要ならソコからさらにsloginする)問題無く使えています。:)

※がしかし、telnetで入る側のマシンもアクセス制御等はきっちり行っておきませう。外堀内堀〜♪。



この情報によって貴方様の疑問/問題は解決しましたか?

いいえ 全然




もどる



fk200329@fsinet.or.jp
Last modified: Tue Jun 22 04:39:11 1999