SSHが使えない?(ined)
■03/06/23
色々あれこれいじっていて、再起動させたらSSHで接続できなくなってしまいました。色々設定を変えたりしていたので、思い当たることが多すぎて何が原因かわからなかったんですけど、まず、Webminの「システム」>「起動およびシャットダウン」で「sshd」を起動させようとしても、エラーがでて起動できないようでした。
「inetd」の方を見ると、どうやら「SSH」に関する記述が間違っていたためだったようです。「inetd」経由でうまく立ち上がらないけれど、22番ポートは使われている。みたいな感じで、「SSH」が起動しなかったみたいです。これは、「SSH」が単独で起動している場合も、「inetd」経由では立ち上がらないようです(やっぱり、22番ポートはすでに使われていますといった感じのエラーが「/var/log/secure」に記録されていました)
ということで、「inetd」経由で「SSH」を起動させるには次のようにします。
「SSH」デーモンが立ち上がっていたら、停止させる。
「/etc/inetd.conf」を開き、以下の行を加える。
ssh stream tcp nowait root /usr/sbin/tcpd sshd
-i
Webminで「inetd」を再起動させる。
これで、「inetd」経由で立ち上がるはずです。
試しに、起動しているプロセスを調べてみると
4085 root 04:33 inetd
L4103 root 04:33 sshd: username [priv]
L4105 username 04:34 sshd: username@pts/1
L4106 username 04:34 -bash
といった感じで起動していました。「username」はログインしたユーザー名です。
「inetd.conf」の記述の
ssh stream tcp nowait root /usr/sbin/tcpd sshd -i
は、
ssh:サービス名(おそらくポートを決めるためでは?)
stream:一般に「TCP」でやりとりする場合はほぼstreamを指定する。
tcp:「TCP」でやりとりする。
nowait:基本的には同時に同じサービスが起動できるnowaitを指定する。
root:rootの権限で起動させる。
/usr/sbin/tcpd:「TCP」でやりとりするためのおまじない
sshd -i:「ssh」を起動させるコマンド
というようなルールがあります。
ちなみに、「samba」を「inetd」経由で立ち上げるには
netbios-ssn stream tcp nowait root /usr/sbin/tcpd smbd
netbios-ns stream tcp nowait root /usr sbin/tcpd nmbd
だそうです。(まだ試していません)
<Pre Next>