Perl5でTelnetをしたいのですが

[上に] [前に] [次に]
ちはる [E-Mail] 1999/05/26(水) 20:36:12
だれかPerlでTelnetを実行できる良い方法をしりませんか?
自前でソケットを開いて、httpでwebのページを取得はできるのですが
同様の方法でポート80のかわりにポート23(でいいんですよね?telnetだから)を使って
通信しようとしているのですが、開いたソケットからデータが受け取れませんでした。
たとえば SOCKET が開いたソケットのハンドルだとすると、
$buffer =<SOCKET>; 等をやると、永遠に待ってしまって(あたりまえ?)困っています。

そこで、chat2.plを使うサンプルを入手したのですが、こちらもどうもうまくなくて。。
どなたか良いサンプルをお持ちでないですかね。。。
やりたい事は、他のサーバにログインして、スクリプトが受け取った
ユーザー名とパスワードがそのサーバーの正しいアカウントかを確かめるだけなんですが。


B-Cus 1999/05/26(水) 22:29:57
Net-Telnetとか。
# http://www.freebsd.org/cgi/pds.cgi?ports/net/p5-Net-Telnet

> やりたい事は、他のサーバにログインして、スクリプトが受け取った
> ユーザー名とパスワードがそのサーバーの正しいアカウントかを確かめるだけなんですが。

rshやsshを使うとか、ftpやpop3でログインできるかどうか確かめるとか、
Shadow passwdでなければ /etc/passwd やypcat passwdを取得して、crypt
して確かめるとか…などの方法もあるかと思います。

ちはる 1999/05/26(水) 23:35:13
さっそくの情報、ありがとうございます!
>rshやsshを使うとか、ftpやpop3でログインできるかどうか確かめるとか、
なるほど。FTPでやってみるのも手ですね。
めんどうな事に、特定のユーザーにしかシェルが開放されてなくて、
いちどその特定ユーザーでログインして、suをかけるというめんどうな
手順をとらないといけないようなんです(泣)しかも私はUNIXのシステム関係には
あまり詳しくなくて。。
もうちょっと頑張ってみます。

よこい [E-Mail] 1999/05/27(木) 12:37:40
chfnが使えれば、ログインシェルを変える作業ができるんですが...

ちはる 1999/05/27(木) 15:34:57
chfnてなんでしょう?参考までお教えください。

そのご、何とかがんばって、chat2.plというライブラリの使い方が
わかってきました。CGIとしてではなく、telnetでスクリプトを
動かした場合は動作するようになったので、もうちょっと工夫してみます。


ちゃわ [E-Mail] 1999/05/27(木) 17:41:20
> やりたい事は、他のサーバにログインして、スクリプトが受け取った
> ユーザー名とパスワードがそのサーバーの正しいアカウントかを確かめるだけなんですが。

スクリプトが受け取ったユーザー名とパスワードを確かめるって、どういうことでしょうか?
telnetか何かでどこかのマシンにログインしていて、そこから更に別のマシンにリモート・
ログインするということでしょうか?

> いちどその特定ユーザーでログインして、suをかけるというめんどうな
> 手順をとらないといけないようなんです

受け取ったユーザー名とパスワードで直接ログインすれば確かめられるのでは・・・?

chfnはUNIXのコマンドで、/etc/passwdに登録されているユーザー情報を変更するコマンドです。

ちはる 1999/05/28(金) 22:49:56
[[解決]]
冷静になって考えたら、Telnetが禁止されているユーザーに
存在するパスワードってあとはPOPとFTPのパスワード以外に
普通は考えられないですよね。(いまごろ言うな!>おれ)
と、いうわけでPOPとFTPならやれそうですから、そっちに
します。色々とご意見ありがとうございました。


[上に] [前に] [次に]