HP-UX General
1824966 メンバー
3536 オンライン
109678 解決策
新規ポスト

rloginやFTP接続している人をログアウトさせる方法はあるか

 
TLSG01
貴重なコントリビューター

rloginやFTP接続している人をログアウトさせる方法はあるか

rloginやFTP接続している人を

強制的にlogoutするよい方法は

あるのでしょうか?

EWSはサーバーの為にshutdownする

ことはできません。

自分が考えたのは

logoinしている人を

who -R で見つけて

そのユーザー名の csh , sh の

プロセスに kill を発行して

強制終了する方法ですが

これをシェルで組むのは

少々面倒な気がします。

何かコマンドが有れば助かるのですが

ご助言をいただければ幸いです。

4件の返信4
mizuki
アドバイザー

rloginやFTP接続している人をログアウトさせる方法はあるか

HP-UXのバージョンは何をお使いですか?。

HP-UX11iであれば,ftpがwu-ftpdベースになっているので,ftpshutというコマンドが使えるはずです。ftpshutを使えばftpユーザに対してお望みに近いことができるはずです。

ただ,HP-UX11iで実際に使ったことないので,動く保証はありませんが・・・・。
TLSG01
貴重なコントリビューター

rloginやFTP接続している人をログアウトさせる方法はあるか

os は, hp-ux 10.20 です。

nadachi
レギュラーアドバイザー

rloginやFTP接続している人をログアウトさせる方法はあるか

rloginを使ってノードに入ってきている人は、

"rlogind" を必ず使っているはずですから、

who -R で pty 名を調べて、そのptyに接続された

"rlogind"をkillするのが確実だと思います。

 ftpを使ってノードに入っている時は、今度は "ftpd"プロセスをkillすればよいのでは。

 これらのUIDは"root"ですから、強制的に止めるスクリプトの実行も"root"で行うんですよね。

nadachi
レギュラーアドバイザー

rloginやFTP接続している人をログアウトさせる方法はあるか

あまりかっこよくはありませんが、

echo rlogind

MYPID=`ps | grep rlogind | awk '{print $1}' `

for pid in `ps -e | grep rlogind | awk '{print $1}' `

do

if

then

echo kill -9 $pid

fi

done

echo ftpd

for pid in `ps -e | grep ftpd | awk '{print $1}' `

do

echo kill -9 $pid

done

などでとりあえず十分では。(実際にkill するなら

echo kill ... の部分の echo を外します。)

この後、/etc/inetd.conf から rlogin, ftpのサービスをコメントアウトして、inetd -c をやればrlogin, ftpで入ってこれなくなります。