0

Unix アプリケーション用サブシステムがインストールされ、アプリケーションがダウンロードされた Windows Vista 64 ビット Enterprise マシンを使用しています。RSH を使用して FreeBSD サーバーに接続しようとしています。実行したいコマンドは次のとおりです。

rsh host.suffix1.company.com command

host.suffix1.company.com のホーム ディレクトリにある .rhosts ファイルは次のようになります。

+ 私のユーザー名
+ mydomain\myusername
+ 私のドメイン/私のユーザー名
+ myusername@mydomain
+ +
mycomputer.suffix2 myusername
mycomputer.suffix2 +
mycomputer.suffix2.company.com myusername
mycomputer.suffix2.company.com +

+ + が悪いことはわかっていますが、今は無視しましょう。これを実行すると:

rsh host.suffix1.company.com コマンド

次のエラーが表示されます。

rshd: ログインが正しくありません。

ただし、実行すると

rsh -l myusername host.suffix1.company.com コマンド

これは問題なく動作します。私が知りたいのは:

  1. -l でユーザー名を指定しない場合、SUA はユーザー名として何を送信しますか?
  2. SUA が送信するものを変更するにはどうすればよいですか?

ここでは、SUA が何らかの形式の mydomain\myusername を送信していると想定していますが、これを許可するために rhosts ファイルに他にどのようなエントリを作成する必要があるのか​​、なぜ ++ がこれを許可しないのか疑問に思っています。

4

1 に答える 1

1

freebsd ボックスで syslog (または別の適切なログ?) を調べると、失敗したログインからログイン名が得られると思います。私の Linux マシンでは、頻繁な ssh 攻撃から次のような行が表示されます。

May 19 19:57:40 anton sshd[29795]: Failed password for invalid user mercedes from 124.217.246.181 port 49198 ssh2
May 19 19:57:40 anton sshd[29796]: Received disconnect from 124.217.246.181: 11: Bye Bye
May 19 19:57:45 anton unix_chkpwd[29802]: password check failed for user (games)
May 19 19:57:45 anton sshd[29799]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=ns1.1oasis.net  user=games
May 19 19:57:48 anton sshd[29799]: Failed password for games from 124.217.246.181 port 49956 ssh2

これは sshd からのものですが、rshd が同様のログを記録できない場合は驚くでしょう (ただし、デフォルトではオフになっている可能性があり、有効にする必要があります)。

Microsoft によって作成された rsh クライアントの名前の由来についての推測については、私にはほとんどアイデアがありません。従来の UNIX rsh はもちろん /etc/passwd から名前を取得し、getpwent() を使用して間接的に読み取ります (環境変数LOGNAMEまたはUSER? にフォールバックしない可能性があります)。「myusername」は c:\windows\system\etc\passwd (または SUA が /etc/passwd としてマップするもの) に存在しますか?

于 2009-05-19T22:54:04.230 に答える