- chmod を使用してアクセス権限を変更することと、chown を使用してリソースの所有権を変更することの技術的な違い。
- ユーザー、グループ、その他に対する、8進数と記号表記に基づく権限表現システム。
- サーバーの脆弱性を防止するため、最小権限の原則に基づいたセキュリティ戦略を実施する。
VPSサーバーや専用マシンを自分で管理した経験があれば、Linuxがネットワーク向けに設計されたシステムであることに気づくでしょう。だからこそセキュリティが最重要事項なのです。ファイルの読み取り、編集、実行権限を制御することで、情報が不正な手に渡ったり、悪意のあるプロセスによってシステム全体がクラッシュしたりするのを防ぐことができるからです。
この環境をスムーズに操作するには、コマンドの実行方法を知っているだけでは不十分です。ファイル所有権の仕組みを理解する必要があります。Linuxでは、すべてのリソースはユーザーとグループに属しており、これらの権限を調整するためのツールが役立ちます。これにより、アプリケーションの動作を妨げることなくシステムを保護できます。
許可証の構造を理解する
コマンドを実行すると ls -l ターミナルには、秘密のコードのような文字列が表示されます。 -rwxr-xr--心配しないで、見た目よりずっと簡単だよ。最初の文字が教えてくれる 目の前にあるのはどのような要素でしょうか?ハイフンは通常のファイル、dはフォルダ(ディレクトリ)、lはシンボリックリンクを表します。その他にも、ソケットを表すsやパイプを表すpなど、あまり一般的ではない文字もあります。
以下の9文字は、3文字ずつ3つの等しいセットに分けられます。最初のセットは所有者(ファイルを作成したユーザー)、2番目のセットは所有者グループ、3番目のセットはシステム上のその他のすべてのユーザー用です。各3文字のセットには、「r」(読み取り)、「w」(書き込み)、「x」(実行)の文字、または権限が付与されていない場合はハイフンが含まれます。
それぞれの許可証は実際には何を意味するのでしょうか?
- 読書(r): ファイルの場合、ファイルを開いて中身を見ることができます。フォルダの場合、 ファイルとサブディレクトリの一覧を表示する 含む。
- 執筆(w): ファイルの内容を変更したり、削除したりする権限が与えられます。ディレクトリの場合は、 作成、削除、または名前変更 その中の要素。
- 実行(x): ファイルの場合、これはスクリプトやプログラムの実行を可能にするものです。フォルダの場合、この権限は非常に重要です。なぜなら、これによって以下のことが可能になるからです。 ディレクトリにアクセスする コマンドを使用する
cd.
chmodコマンド:アクセス権限の調整
コマンド chmod (変更モード)は、これらの権限を変更するためのツールです。使用方法は2種類あります。より直感的なシンボリック方式と、より高速なため管理者に好まれるオクタル方式です。
で シンボリックモード変更の影響を受けるユーザーを示すために文字(uはユーザー、gはグループ、oはその他、aは全員)を使用し、権限を追加するには「+」、権限を削除するには「-」などの記号を使用します。たとえば、グループにファイルへの書き込み権限を与えたい場合は、次のようにします。 chmod g+w archivo.txtこれは非常に柔軟な方法です 必要に応じて権限を調整してください 他の設定は変更せずに。
El 8進モード これはバイナリシステムに基づいた数値を使用します。各権限には値があり、読み取りは4、書き込みは2、実行は1です。これらの値を合計すると、0から7までの数値が得られます。たとえば、値7(4+2+1)はフルアクセスを意味し、値5(4+0+1)は読み取りと実行を意味します。したがって、次のようなコマンド chmod 755 carpeta 助成金 所有者による完全な支配 グループおよびその他に対しては、読み取り/実行アクセスのみを許可する。
chownとchgrpを使用してプロパティを管理する
場合によっては、権限が正しく設定されていても、所有者が適切でないためにファイルが正常に動作しないことがあります。そこで、適切なツール/アプリの出番です。 chown (所有者の変更)。このコマンドは、 ユーザーとグループを変更する ファイルの所有者。最も一般的な構文は次のとおりです。 chown usuario:grupo archivo.
ウェブサーバーでは、ファイルがサーバーユーザー(例えば、 www-data Apache または Nginx で) Web サイトが特定のフォルダに書き込めるようにします。フォルダとその中のすべてにこの変更を適用する必要がある場合は、 再帰オプション -R例えば、 chown -R www-data:www-data /var/www/html.
システムにおけるユーザーおよびグループ管理
上記すべてを理解するためには、まずそれらのユーザーが誰であるかを管理する必要があります。Linuxでは、次のようなコマンドを使用します。 useradd o adduser アカウントを作成するため、 passwd それらにキーを割り当てる。これらの情報はすべて、次のような重要なファイルに保存されます。 /etc/passwd (アカウントの詳細) / etc / shadow (暗号化されたパスワード)
グループ機能は、権限を一つずつ割り当てる手間を省くために不可欠です。 groupadd 私たちはグループを作り、 usermod -aG ユーザーを追加します。このようにして、 作業チームのための団体許可証 システム全体のセキュリティを損なうことなく、特定のフォルダに対してのみセキュリティ対策を行う。
汗と特権の向上
常にroot権限で作業することは推奨されません。なぜなら、ミスをするとシステム全体が消去される可能性があるからです。そのため、私たちは sudoこれにより、スーパーユーザー権限でコマンドを実行できるようになります。誰が何を実行できるかの設定はファイルにあります。 /etc/sudoersこれは常に以下のコマンドで編集する必要があります visudo パラ Linuxにおけるsudoエラーのトラブルシューティング そして、システムから除外されるような構文エラーを避ける。
サーバーにおけるセキュリティとベストプラクティス
多くの初心者が犯しがちな間違いは、何かがうまく動作しないときにフォルダに777のパーミッションを割り当ててしまうことです。これは攻撃者にとって格好の攻撃経路となってしまいます。理想的には、最小権限の原則に従い、タスクを完了するために必要な最小限のアクセス権限のみを付与するべきです。
一般的に、ファイルのパーミッションは644(所有者のみが書き込み可能、その他は読み取りのみ可能)、フォルダのパーミッションは755に設定するのが適切です。SSHキーやパスワードで保護された設定ファイル(.env)など、極めて機密性の高いファイルの場合は、パーミッションを600に設定するのが適切です。これにより、所有者以外は内容を読み取ることすらできなくなります。
ウェブサイトで厄介な「403 Forbidden」エラーが発生した場合、その原因は所有権またはアクセス権限の問題である可能性が最も高いです。大幅な変更を加える前に、ウェブサーバーがファイルの所有権を有していること、およびディレクトリに実行権限が設定され、ナビゲーションが許可されていることを確認してください。
chmodやchownといったツールを使ったユーザー、グループ、権限の適切な管理は、あらゆるLinuxサーバーにとって最初の防衛線となります。umaskマスクによるデフォルト権限の定義から、再帰的なディレクトリ管理、sudoerの厳格な制御に至るまで、あらゆる調整が潜在的な侵入に対する安定した強靭な環境の構築に貢献し、システムプロセスとユーザーがデータの整合性を損なうことなく共存できることを保証します。
バイトの世界とテクノロジー全般についての情熱的なライター。私は執筆を通じて自分の知識を共有するのが大好きです。このブログでは、ガジェット、ソフトウェア、ハードウェア、技術トレンドなどについて最も興味深いことをすべて紹介します。私の目標は、シンプルで楽しい方法でデジタル世界をナビゲートできるよう支援することです。




