両方のシステムでrsyncdを実行しています。接続を確認しようとすると、次のエラーが発生します。
ホスト2で:
user@host2#rsync username@host1::share
password: [password]
@ERROR: auth failed on module share
rsync error: error starting client-server protocol (code 5) at main.c(1524) [Receiver=3.0.7]
ホスト1で:
私は次の構成を持っています
vim /etc/rsyncd.conf
max connections = 2
log file = /var/log/rsync.log
timeout = 300
[share]
comment = Public Share
path = /home/subhransu
read only = no
list = yes
uid = backuppc
gid = backuppc
auth users = backuppc
secrets file = /etc/rsyncd.secrets
ホスト1で
tail /var/log/rsync.log
2013/04/09 03:47:15 [29179] forward name lookup for cust-198-154-126-179.corexchange.com failed: No address associated with hostname
2013/04/09 03:47:15 [29179] connect from UNKNOWN (198.154.126.179)
2013/04/09 03:47:18 [29179] auth failed on module share from unknown (198.154.126.179): unauthorized user
注:rsyncd.secrets
そうですuser:passwd
。ファイアウォールの問題はありません。
答え1
サーバー構成ファイルのパラメーターとパラメーターはuid
権限分離のためのものだと思います。gid
auth users
設定のパラメータは、「」を除く他のすべてのユーザ名を明示的に拒否しますbackuppc
。
したがって、「Host1」のrsyncd.secretsと「Host2」のコマンドラインで「backuppc」を使用する必要があります。
auth users
そのステートメントを削除するか、/etc/rsyncd.conf
実際にはHost2のユーザーであることを確認してくださいbackuppc
(例:「host2:」のように「user」または「username」ではありません)。
strict modes = false
問題を解決するときは、rsyncd設定ファイルに追加してみることもできます。
答え2
0
CentOS 7でも同じ問題が発生しました。多くの記事やフォーラムを見つけましたが、解決策が見つかりませんでした。問題はSElinuxにあります。サーバー側でSElinuxを無効にすると機能します。サーバー側でSELinuxの状態を確認する(rysncを使用したデータの抽出)SELinuxの状態を確認および無効にするコマンド
$getenforce
Enforce## これは、SElinuxが有効になっていることを意味します。
$セット強度0
$getenforce
龍仁
今、クライアント側でrsyncコマンドを実行しようとすると、私には効果的でした。みんな一番いい!
答え3
また、rsyncd.confに正しい権限が設定されていることを確認してください。
chmod 640 /etc/rsyncd.cond