共有ホスティングサーバーをセットアップするためのチュートリアルはありますか?

きしみ

共有ホスティングサーバーの設定方法に関するチュートリアルが見つかりません。

私が見逃しているのは、ウェブマスターがお互いのディレクトリを表示しないように特権を設定する方法です。


前の投稿:

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]

編集
0

コメントを追加

0

関連記事

共有ホスティングサーバーをセットアップするためのチュートリアルはありますか?

ホストのループバックをリッスンしているサービスをLXCゲストと共有する方法はありますか?

Google Map APIのエラーメッセージをトラブルシューティングするためのアイデアはありますか?

ローカルホストにトンネリングするためにリモートsshサーバーをセットアップする方法は?

MPEG-DASHとHLSフォールバックを使用してオンラインビデオ配信サービスを構築するための詳細なチュートリアルまたはケーススタディはありますか?

アプリケーション外でアドホックJPQLクエリをテストするためのツールはありますか?

チャットボットを開発するためのチュートリアルはありますか?

Laravel 5 –共有ホスティングサーバーのキャッシュをクリアする

Angularルーティングモジュールのルートにコールバック関数をアタッチする方法はありますか?

IBMには、ワークライトサーバー/アプリケーションをホストするために使用できるクラウドホスティングサービスがありますか?

IBMには、ワークライトサーバー/アプリケーションをホストするために使用できるクラウドホスティングサービスがありますか?

Googleドライブへのアップロードをスクリプト化してアイテムを共有するためのコマンドラインユーティリティはありますか?

セキュリティグループ内のIPを個別にホワイトリストに登録するよりも、WPFアプリがAWS RDSに接続できるようにするためのより良い方法はありますか?

チュートリアルから暗号ボットをコーディングするときは、タイプエラーコードの有効なインテントをクライアントに提供する必要があります

異なるDNSを使用したマルチテナントセットアップのソリューションはありますか?

デバッグアプリケーションを切り替えるためのホットキーはありますか

USBデバイスのマッピングを可能にするマルチホストコンテナオーケストレーションツールはありますか?または、プロダクショングレードのソリューション/ハックはありますか?

Ubuntuにインストールされているアプリをバックアップ/復元するためのアプリはありますか?

Laravelウェブサイト「共有ホスティングにアップロード」は、指定したウェブルートの代わりにディレクトリ構造を表示しています

ブラウザでのJavaプラグインのサポートは非推奨になります。アプレットがクライアントファイルシステムにアクセスするための代替ソリューションはありますか?

バックグラウンドでインストールされたセキュリティアップデートのリリースノートはどこにありますか?

vs 10で作成されたc#デスクトップアプリケーションファイルを実行するには、コンピューターにSQLサーバーをセットアップする必要がありますか?

スナップインストールされたアプリをよりネイティブに見せるための方法はありますか?

フラグメントのターゲットIDをリンクするためのアクセシビリティの重要性はありますか?

Rails :(アフィリエイトマーケティング用の)共有リンクを生成するための宝石はありますか?

Azure App Servicesでは、LogFilesディレクトリ内のファイルをクリーンアップする必要がありますか、それともAzureにこのためのクリーンアッププロセスがありますか?

Ubuntuベースのセキュリティアップデートをインストールする必要がありますか?

Webアプリをモバイルサファリで表示したときに、iTunesでアプリストアをダウンロードするためのデフォルトのポップアップはありますか?

ファイル間で共有されるグローバル変数を配置するためのベストプラクティスはありますか?

TOP 一覧

  1. 1

    Unity:未知のスクリプトをGameObject(カスタムエディター)に動的にアタッチする方法

  2. 2

    セレンのモデルダイアログからテキストを抽出するにはどうすればよいですか?

  3. 3

    Ansibleで複数行のシェルスクリプトを実行する方法

  4. 4

    tkinterウィンドウを閉じてもPythonプログラムが終了しない

  5. 5

    Crashlytics:コンパイラー生成とはどういう意味ですか?

  6. 6

    GoDaddyでのCKEditorとKCfinderの画像プレビュー

  7. 7

    Windows 10 Pro 1709を1803、1809、または1903に更新しますか?

  8. 8

    Chromeウェブアプリのウェブビューの高さの問題

  9. 9

    モーダルダイアログを自動的に閉じる-サーバーコードが完了したら、Googleスプレッドシートのダイアログを閉じます

  10. 10

    Windows 10の起動時間:以前は20秒でしたが、現在は6〜8倍になっています

  11. 11

    Reactでclsxを使用する方法

  12. 12

    ファイル内の2つのマーカー間のテキストを、別のファイルのテキストのセクションに置き換えるにはどうすればよいですか?

  13. 13

    MLでのデータ前処理の背後にある直感

  14. 14

    グラフからテーブルに条件付き書式を適用するにはどうすればよいですか?

  15. 15

    Pythonを使用して同じ列の同じ値の間の時差を取得する方法

  16. 16

    mutate_allとifelseを組み合わせるにはどうすればよいですか

  17. 17

    ネットワークグラフで、ネットワークコンポーネントにカーソルを合わせたときに、それらを強調表示するにはどうすればよいですか?

  18. 18

    テキストフィールドの値に基づいて UIslider を移動します

  19. 19

    BLOBストレージからデータを読み取り、Azure関数アプリを使用してデータにアクセスする方法

  20. 20

    PowerShellの分割ファイルへのヘッダーの追加

  21. 21

    ソートされた検索、ターゲット値未満の数をカウント

ホットタグ

アーカイブ