
- 別のサーバーにホーム ディレクトリのエクスポートを作成します。
- テスト CentOS 7 サーバーに 2 番目のローカル ホーム ディレクトリを作成します。
- ローカル ホームディレクトリと NFS ホームディレクトリの UID、GID、および権限が同じであることを確認します。
- テスト アカウントの公開キーを使用して、同じ .ssh/authorized_keys ファイルを 3 番目のサーバー上に配置します。
- SSHD は を介して
systemctl
検索します$OPTIONS
が、 では変数が設定されていません/etc/sysconfig/sshd
。
ケース 1: ローカル ホームディレクトリを使用して SSH ログインをテストします。パスワードは不要です。
ケース 2: NFS/autofs ホームディレクトリを使用して SSH ログインをテストします。authorized_keys は無視されますが、パスワードは機能します。
ケース 3: SSHDsystemctl stop sshd
を/usr/sbin/sshd
フォアグラウンドで起動します。どちらのホームディレクトリでもパスワードは必要ありません。
systemctl
それで、起動した SSHD と NFS/autofs ホームディレクトリの組み合わせに何か変なところがあるのでしょうか?
何が足りないのでしょうか?
答え1
それはSELinuxの問題でした。NFSサーバーにアクセスして実行します
semanage fcontext -a -t ssh_home_t '/exports/[^/]+/\.ssh(/.*)?'
restorecon -v -r /exports/$USER
NFS 共有を `/exports' から提供することを前提としています。