共有ホスティングサーバーの設定方法に関するチュートリアルが見つかりません。
私が見逃しているのは、ウェブマスターがお互いのディレクトリを表示しないように特権を設定する方法です。
OVHはこれを行うためにSSHサーバーをどのように構成できますか?
マルチユーザーのWebサーバーをセットアップしようとしています。そのために、各ユーザーがSSHとSFTPの両方で接続できるようにしたいのですが、最も重要なのは、自分のディレクトリしか表示されないことです。OVHはなんとかそれを行うことができましたが、6時間検索して試行した後(chroot刑務所を作成)、彼らがどのようにそれを行ったかわかりません。些細なことかもしれませんが、私にはわかりません。
OVHアカウントにログインしたときにできることは次のとおりです。
pwd
私のホームディレクトリを教えてくれます(/homez.52/creak
)/homez.52/creak
実際にはへのシンボリックリンクです /home/creak
cd
、すべての一般的なLinuxディレクトリに(/bin
、/usr
、/home
、...)が、それぞれの時間は、ls
私は、このエラーを与えます:ls: cannot open directory .: Permission denied
/homez.52/creak
し、/home/creak
彼らはどうやってそれをすることができたのですか?chroot?ACL?
ありがとう
共有ウェブホスティング環境では、すぐに対処する必要があるいくつかの問題があります。
ディレクトリのアクセス許可とファイルにのみアクセスできることに関して:あなたがしたいことは、「others」グループがまったくアクセス許可を持たないようにホームディレクトリのアクセス許可を設定することです。ディレクトリにcdするにはeXecute権限が必要ですが、それだけではその内容を読み取ることができないことに注意してください。したがって、/ homeはrootが所有し、rwxr-x--xを持っている必要があります。これにより、ユーザーは「盲目的に」ホームフォルダーに移動することはできますが、システム内のユーザー数を確認することはできません。これは次のようになります(わかりやすくするために日付、サイズなどは省略されています)。
# ls -la /home
drwxr-x--x root root .
drwxr-xr-x root root ..
drwxr-x--- usr1 usr1 usr1
drwxr-x--- usr2 usr2 usr2
...
ユーザーが/bin
などのディレクトリの内容を読み取れるようにしたくない場合は、「others」グループの「読み取り」許可ビットを削除するだけです。事前に完全なルートを知っていれば、そこに含まれているバイナリを使用する能力には影響しません。
SSHおよびFTPアクセスの場合、ファイルシステムのアクセス許可を正しく構成すると、適切なSSHまたはFTPの実装はすでに安全になります。FTPにはvsftpd、もちろんSSHにはOpenSSHをお勧めしますが、それが利用可能な唯一の正しいオプションであることを意味するわけではありません。これらのサービスの構成オプションを微調整することを忘れないでください(特に、SSHを介したrootログインを禁止し、sudo対応のユーザーのパスワードログインを禁止するなど)。
トリッキーな部分は、特に動的Webサイトに対してCGIスクリプトを実行する必要がある場合に、Webサーバーを正しく構成することです。最近、みんなとその祖母がPHPを望んでい/home/dumbuser/public_html/php_shell.php
ますが、Apache / Nginxを生成したのと同じユーザーとして実行することはできませんよね?
ここで考えられる解決策は、Apache Webサーバーを実行している場合、suexecモジュールを使用することです。これにより、実行可能ファイルを所有するユーザーとしてCGIスクリプトが実行されます(setuidビットを考えてください)。HTTPサーバーが実際のファイルにアクセスできるようにするには、サーバーが実行するユーザー(typ。www-data
)をシステム上のすべてのユーザーグループ(「すべてのユーザーグループ」とは、上のすべてのユーザーアカウントではなく、共有環境を使用するすべてのユーザーを意味します)に追加することを検討してください。システム)。
これは、共有サーバーを適切に構成および強化するために実行する必要があるすべての表面をかろうじて傷つけているだけであることに注意してください。実行中の各サービスの構成ファイルを完全に理解する必要があり、必要に応じてそれらを変更する必要があります。特に、Webサーバーの構成オプションを読んで、開発/テスト環境で試してみるには、おそらく1週間を費やす必要があります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加