1
perl로 원격 로그인 스크립트를 만들려고합니다. 나는 현재 내가 클라이언트 입력에 암호를하려고 내가하지 입력 어떤 반향하여 클라이언트와 리눅스 방식으로 암호를 숨기려는, 그러나echo IO :: Socket :: INET
$var = <$client>;
chomp $var;
를 사용하여 입력 데이터를 얻고있다. 내가 이것을 할 수있는 방법이 있습니까?
편집 :
$serv = IO::Socket::INET->new (
Proto => 'tcp',
LocalPort => $port,
Listen => 10,
Reuse => 1)
|| die "Can't create server: $!";
while ($client = $serv->accept()) {
eval {
$client->autoflush(1); # Always remember to flush!
$who = $client->peerhost;
print STDERR "Connection from $who\n";
print $client hostname . " login: ";
$usr = <$client>;
chomp $usr;
$usr =~ s/\W//g;
print STDERR "User $usr\n";
die unless (length $usr < 20 && length $usr > 1);
print $client "Encrypted Password: ";
$pass = <$client>;
chomp $pass;
die unless (length $pass < 20 && length $pass > 1);
print STDERR "$who: Pass $pass\n";
};
close $client;
}
소켓 표시하지 않는다 (내가 쓴 때문에 아마도 내가 편견이야)
펄을 사용하여 에코 콘솔을 해제하는 방법에는 여러 가지가 있지만, 내 마음에 드는
IO::Termios
입니다. 소켓과는 아무런 관련이 없습니다. – ikegami