システム上のすべてのファイルとフォルダにアクセスできるユーザーが必要です。これは、ローカルコンピュータでRSYNCを使用してリモートコンピュータをバックアップするためのものです。
私たちは現在このユーザーを使用しており、ユーザーをbackups
グループに追加していますが、rsyncsudo
はadmin
まだ次のメッセージを返します。
rsync: opendir "/location/to/folder" 失敗: 許可が拒否されました (13)
rsync: send_files が '/location/to/file' を開けません: 権限が拒否されました。 (13)
ユーザーにすべてのものへのアクセスを許可する方法を学びますbackups
(ユーザーをすべてのグループに追加することに加えて、バックアップしたいリモートサーバーは、システムに各アカウントが一意のユーザーを持つ専用ホスティングサーバーです)。
助けてくれてありがとう。
答え1
backups
単にユーザーグループにユーザーを追加しても、そのsudo
アカウントにシステム上のすべてのファイルへのアクセス権が自動的に付与されるわけではありません。ユーザーにコマンドを実行する権限を付与しますsudo
。
公開鍵認証を使用しているので(パスワードなし)、セキュリティと実装の容易さを念頭に置いてアクセスします。を使用すると、ssh
ユーザーが非常に特定のコマンドのみを実行するように制限できます。この場合、ユーザーがスーパーユーザー権限でbackups
実行できるようにすることができますrsync
。
鍵交換を行い、認証が成功したことを確認しました。ディレクトリをバックアップしたいauthorized_keys
リモートホスト上のファイルで、ユーザーが使用するキーにディレクティブを追加/home
できます。このディレクティブは次のように許可します。command=
backups
それコマンド実行時それ鍵は認証に使用されます。したがって、キーの最初のフィールドは次のようになります。
command="/path/to/sudo /path/to/rsync -az /home /local/folder" ssh-rsa AAAAB3NzaC1yblahblahblah
一歩進んで、キーに追加のオプションを追加できますfrom=myhost,no-pty,no-X11-forwarding
。
これは優れたセキュリティを提供し、デフォルトのファイルシステム権限を変更する必要はありません。authorized_keys
期待どおりに機能するまで、ファイル内のコマンドを試してみる必要があります。理解するのに時間がかかることがあります。で指定されたコマンドは、デフォルトで接続ホストに渡すオプションをauthorized_keys
オーバーライドします。rsync
そこには良い情報がたくさんありますman sshd
。 AUTHORIZED_KEYS FORMATセクションを具体的に読んでください。
答え2
1つのオプションは、リモートシステムでrsyncサーバーを実行することです。
rsync.conf
デフォルトではwithを作成してuid=root
から使用してくださいrsync -az rsync://domain.com
。
バラよりhttp://pastebin.com/5hQx1mRV例えば、他の人が書いたものrsyncデーモンの設定Ubuntuでサーバーを有効にするいくつかの基本を学びます。
その場合はセキュリティを考慮する必要があります。より良いアプローチは、リモートシステムをローカルシステムにプッシュすることです。
答え3
ACLを使用することもできます。基本ファイルシステムがそれをサポートしているかどうか。
各ファイルとディレクトリのACLにグループバックアップを追加する必要があります。ただし、新しく作成されたファイルとディレクトリを自動的に追加する前に、デフォルトのACLをすべての既存のディレクトリに設定する必要があります。したがって、リモートサーバーから:
sudo find /home -type d -print0 | xargs -0 setfacl -d -m group:backup:r-x
その後、既存のすべてのディレクトリに対するrx権限が必要で、ファイルを読み取る必要があります。 2つのコマンドでこれを行うことができます(今回は-dなし)。
sudo setfacl -R -m group:backup:r-- /home
sudo find /home -type d -print0 | xargs -0 setfacl -m group:backup:r-x
これにより、各ファイルを所有する既存のユーザーとグループを変更せずに、グループバックアップのファイルを読み取るための追加の権限が付与されます。
注:検索速度の向上xargsコマンドxargsコマンドに次のオプションを追加できます。-P n
ここで、nは並列プロセスの数です。コンピュータのCPU数+1に設定できます。