GNU/Linux >> Linux の 問題 >  >> Linux

SSHとホームディレクトリのアクセス許可?

学校のサーバーにあるクラスアカウントの1つでこのSSHの問題を解決するのに何時間もかかりました。

パスワードを入力せずに特定のクラスアカウントにSSHで接続することはできませんでしたが、パスワードなしの認証は他のクラスアカウントで機能しました。 .ssh /ディレクトリとそのすべてのコンテンツには、他のクラスアカウントと同じ正しい権限がありました。

問題は、自分のホームディレクトリに設定されたアクセス許可であることが判明しました。ホームディレクトリのアクセス許可が770に設定されている場合(.ssh /に設定されているアクセス許可に関係なく)、パスワードなしの認証は機能しませんでしたが、755または700に設定されたアクセス許可では機能しました。

SSHがこれを行う理由を知っている人はいますか?ホームディレクトリのアクセス許可が許容範囲を超えているためですか?ホームディレクトリが700よりも許容度が高く設定されているのに、SSHが公開/秘密鍵での認証を拒否するのはなぜですか?

承認された回答:

これはSSHのデフォルトの動作です。 rwx------を適用してユーザーキーを保護します $HOME/.sshで 所有者のみが$HOMEへの書き込み権限を持っていることを確認します 。それぞれの所有者以外のユーザーが$HOMEへの書き込み権限を持っている場合 ディレクトリでは、$HOME/.sshの権限を悪意を持って変更する可能性があります 、ユーザーキーを乗っ取る可能性があるknown_hosts 、または同様のもの。要約すると、$HOMEに対する次の権限 SSHが機能するには十分です。

  • rwx------
  • rwxr-x---
  • rwxr-xr-x

SSHは正しく機能せず、g+wのバリエーションがある場合、ログ機能に警告を送信します またはo+w $HOMEに存在します ディレクトリ。ただし、管理者はStrictModes noを定義することで、この動作をオーバーライドできます。 sshd_config内 (または同様の)構成ファイル。ただし、これは推奨されないことは明らかです。 。


Linux
  1. Linux でファイルとディレクトリのアクセス許可/所有権を管理する方法

  2. Linux インタビューの質問 – 基本的なファイルとディレクトリのアクセス許可

  3. ファイル/ディレクトリおよびファイル システム ユーザー タイプの権限テーブル

  1. ディレクトリを見つけて名前を変更する

  2. Chrooted SFTP ユーザーの書き込み権限

  3. Puppet:ユーザーのホーム ディレクトリを取得する

  1. ディレクトリとファイルの権限を変更するには

  2. Ssh – Ssh / scp / sftpユーザーをディレクトリに制限しますか?

  3. ファイルマネージャでファイルとディレクトリの権限を変更する方法