カスタムユーザー$ HOMEにSSHキー認証を使用する

カスタムユーザー$ HOMEにSSHキー認証を使用する

$HOME ディレクトリが/home/

ユーザーのホームページは他のユーザーが探して所有しています/pkg/home/pkg、すべてのユーザーにグループアクセス権があります/pkg。 SSHDは、ユーザーがフルパスの所有者ではないためauthorized_keys(たとえば)へのアクセスを制限しているようです。/pkg/home/usera/.sshd/authorized_keys

sshd_configこの制限を変更するオプションはありますか?

ベストアンサー1

すべてまたは専務:このStrictModesオプションをオフにすると、sshdはファイルモードを確認しません。グループ書き込み可能ディレクトリ(ユーザーがグループに一人でいる場合は大丈夫)など、いくつかの奇妙なケースが大丈夫だと言える方法はありません。

~/.ssh/authorized_keysOpenSSHは、含まれているディレクトリの権限と所有権を繰り返し確認します。ただし、ホームディレクトリに到達すると比較が停止します。たとえば、許可ファイルがユーザーのホームディレクトリである既存の配列では、合計のみが検証/home/joe/.ssh/authorized_keysされます。/home/joe/home/joe/.ssh/authorized_keys/home/joe/.ssh/home/joe

したがって、あなたのシナリオは非常に疑わしいが(/pkg必要に応じて別のグループ権限を持ってルートが所有しなければならない)、SSHに影響を与えてはいけません。

シンボリックリンクが含まれている場合、sshはスキャンを開始する前にすべてのシンボリックリンクを展開します。

システムログに関連情報が含まれている可能性があります。失敗したログイン試行によってログメッセージが表示されることを確認します。

カスタムポート()でデバッグモードデーモンを実行して、sshd -d -p 2222SSHバージョンが私のバージョンと同じチェックを実行していることを確認してください(OpenSSH 5.5p1のソースコードを見てみました)。strace -f -efile sshd -d -p 2222サーバーが権限を確認するファイルを確認する必要がある場合に使用します。これらの権限の確認が問題にならない場合は、さらに-dフラグを追加すると便利です。

.sshAppArmorがある場合は、SSHサーバーがユーザーファイルディレクトリ内のファイルを読み取らないように制限することもできます。 AppArmorとホームディレクトリが非標準の場所にある場合は、SSHだけでなくAppArmorポリシーも更新する必要があります。バラより.Xauthorityを読み取れないため、Evinceを起動できません。

おすすめ記事