プロが教える店舗&オフィスのセキュリティ対策術

Rsyncを使ってLinuxからWindowsにファイルのコピーを使用と考えているのですが、
その際に、接続するときにパスワードの入力を求められるので、
自動化したいと考えています。
証明書を利用する方法以外で起動中のコマンドプロンプトに割り込み入力する方法など
考えているのですが、なかなかうまくいきません。何か別の方法でもよいので、良い方法はないでしょうか。

バッチプログラムとしては下記のとおりです。
---------------------
SET USER=test
SET SERVERNAME=192.168.255.2
SET BACKUPDIR=/etc/backup/
SET BACKUPAFTER=backup
rsync -avz -e ssh --delete %USER%@%SERVERNAME%:%BACKUPDIR% %BACKUPAFTER% > log
---------------------

バッチプログラム実行時の待ちプロンプトが下記です。
このプロンプトが表示されたときに自動でパスワードを入力する方法がわかりません。

backup@10.44.202.24's password:

宜しくお願いします。

A 回答 (2件)

sshプロトコルを使うのが必須で、かつ、証明書を使わないのであれば、パスワード入力は必須ですよね。

vbscriptでsendkeysでウィンドウへのキー入力シミュレートをすることも出来ますが、ウィンドウの内容を見ないでタイミングを計りながらなので、危ういですね。

-e rsh でrshプロトコルを使うか、-e無しでrsyncプロトコルを使うかすれば出来そうです。
rshなら、Linux側で~/.rhostsファイルを使う。
rsyncなら、--password-file=FILE オプションを使う。
    • good
    • 0
この回答へのお礼

notnotさん

ご回答ありがとうございます。
rsyncにPasswordオプションがあったんですね。
見落としていました。

下記のようにコマンドを記載したのですが、エラーがでてしまいます。
何か制限などあるのでしょうか。

■コマンド
rsync -avz --password-file=pass.txt -e ssh --delete %USER%@%SERVERNAME%:%BACKUPDIR% %BACKUPAFTER% > log

■エラーメッセージ
The --password-file option may only be used when accessing an rsync daemon.
rsync error: syntax or usage error (code 1) at main.c(1230) [receiver=3.0.2]
続行するには何かキーを押してください . . .

お礼日時:2009/01/27 22:17

>下記のようにコマンドを記載したのですが、エラーがでてしまいます。



rsynで使えるプロトコルは、rsync rsh ssh とありますが、sshについては
「sshプロトコルを使うのが必須で、かつ、証明書を使わないのであれば、パスワード入力は必須」と書いたとおりです。

他のプロトコルについては、
「-e rsh でrshプロトコルを使うか、-e無しでrsyncプロトコルを使うかすれば出来そうです。
rshなら、Linux側で~/.rhostsファイルを使う。
rsyncなら、--password-file=FILE オプションを使う。」
と書いたとおりです。--password-file オプションはrsyncプロトコル専用です。rsyncデーモンと接続します。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています