UNIX 系のシステムから RSH コマンドを利用して Windows に接続する方法について

こんにちは。 Windows テクノロジー サポートの松田です。
 
Windows サーバーに配置しているバッチ ファイルなどを UNIX 系のシステムから起動したいというご要望をいただく場合があります。そのため、今回の記事では、UNIX 系のシステムから RSH コマンドを利用して Windows に接続する方法について紹介しようと思います。

Windows Server 2003 R2 より前には、RSH コマンドを利用した接続には Services for UNIX (SFU) に含まれるリモート シェル サービスが使用されていましたが、Windows Server 2003 R2 以降のオペレーティング システム上では、SFU は利用できないため、RSH コマンドによる接続に、Subsystem for UNIX-based Application (SUA) に含まれているリモート シェル デーモンを使用する必要があります。

以下の Technet の記事にて Windows Server 2003 R2 や、Windows Server 2008 でのリモート シェル デーモンを利用した RSH サーバーの設定方法についての詳細な手順が記載されています。

Subsystem for UNIX-based Application (SUA) を利用した、rsh サーバーの設定について (2003 R2)
https://technet.microsoft.com/ja-jp/windowsserver/ff576026

Subsystem for UNIX-based Application (SUA) を利用した、rsh サーバーの設定について (2008)
https://technet.microsoft.com/ja-jp/windowsserver/ff706484

[注意]
上記の記事に記載されている regpwd コマンドは、Administrator 以外で実行すると、"Operation not permitted" のエラーが発生する場合があります。
その場合には、以下の手順にて regpwd コマンドのアクセス権を再設定して再度試してみてください。

1. コマンドプロンプト上で、%systemroot%\SUA\common\setup にて以下のコマンドを実行し、setuid を有効にしてからコンピュータを再起動します。
   > regini enablesetuid.ini
※ 本手順はすでに setuid が有効な場合には飛ばしてください。
2. 再起動後、Administrator でログオンします。
3. SUA のシェルから、以下のコマンドにより regpwd のアクセス権を変更します。
   % chmod 4775 /bin/regpwd
4. 手順 3 を実行後、regpwd のアクセス権が "-rwsrwxr-x" となることを確認します。
   % ls -l /bin/regpwd
   -rwsrwxr-x 1 Administrator +Administrators 99328 1月 6 2006 /bin/regpwd
5. su コマンドを利用し、パスワード情報を保存するユーザーに切り替わります。
   % su <targetUser>
6. regpwd コマンドを実行し、該当ユーザーのパスワード情報を更新します。
   $ regpwd
   This program will save a password for user <targetUser>
   For use by privileged deamons and services like rlogind and cron.
   Enter your current password:
7. setuid を無効化する場合には、コマンドプロンプト上で %systemroot%\SUA\common\setup
   にて以下のコマンドを実行し、システムの再起動を行ないます。
   > regini disablesetuid.ini

Windows Server 2008 R2 や Windows 7 では、Windows Server 2008 と同様の手順で設定が可能ですが、スタート メニューに表示されるダウンロード先は、既定で Windows Server 2008 / Windows Vista 用のユーティリティのダウンロードページに誘導されます。

Windows Server 2008 R2 / Windows 7 用のユーティリティは以下のページからダウンロードできますので、インストール時にはこちらをご利用ください。

Utilities and SDK for Subsystem for UNIX-based Applications in Microsoft Windows 7 and Windows Server 2008 R2
https://www.microsoft.com/en-us/download/details.aspx?id=2391

また、Windows を RSH クライアントとして利用する場合にはいくつかの既知の問題が報告されています。以下の Technet の記事に RSH クライアントして利用する際の既知の問題が記載されてます。

Subsystem for UNIX-based Application (SUA) を利用した、rsh コマンドの実行について
https://technet.microsoft.com/ja-jp/windowsserver/gg486885