システム管理者および開発者向けのLinux権限

システム管理者および開発者向けのLinux権限

システム管理者および開発者向けのLinux権限

Linuxでのアクセス許可の問題と、「chmod」コマンドによるその正しい使用は、SLコミュニティで非常に一般的に公開され、議論されています。 サーバーとシステムの上級ユーザー、技術者、管理者による。 たとえば、私たちのブログには、それに関する2つの非常に優れた出版物があります。 Linuxでの権限と権利(01/12) y chmodを使用したGNU / Linuxの基本的なアクセス許可(08/16).

しかし何度も SW開発者 アプリケーションとシステムを作成するのは誰ですか。そのほとんどはシステムとWebサイトです。 それらを開発するとき、彼らは通常、それらに実装される正しい許可がどれであるかを考慮しません、ほとんどの場合、タスクはサーバーおよびシステム管理者の側に残します。 この出版物では、彼らのためにそれについて少しオリエンテーションを与えることを試みます。

DevOps / BDAのLinux権限:はじめに

はじめに

コマンド "chmod»Linuxベースのオペレーティングシステムの高度な使用には非常に便利で重要です。 ただし、「chmod」はスタンドアロンパッケージではなく、パッケージに統合されています。コアユーティリティ«。 「coreutils」パッケージは、ファイル管理、コマンドインタープリター、およびワード処理のための多くの基本的なツールをオペレーティングシステムに提供するパッケージです。 また、一般的に、ほとんどのLinuxDistroにはデフォルトですでにインストールされています。

具体的には、このパッケージには、「chmod」コマンドに加えて、次のコマンドが含まれています。 arch base64 basename cat chcon chgrp chmod chown chroot cksum comm cp csplit cut date dd df dir dircolors dirname du echo env expand expr factor false flock fmt fold groups head hostid id install join link ln logname ls md5sum mkdir mkfifo mknod mktemp mv nicec noh noh od paste pathchk pinky pr printenv printf ptx pwd readlink realpath rm rmdir runco​​n sha * sum seq shred sleep sort split stat stty sum sync tac tail tee test timeout touch tr true truncate tsort tty uname unexpand uniq unlink users vdir wc who whoamiyes。

要約すると、「chmod」コマンドを使用すると、オペレーティングシステムによって管理されるすべてのユーザーに対して、ファイルとフォルダーのアクセス許可を管理するという非常に重要なタスクが可能になります。 これは、オペレーティングシステムとしてのLinuxがマルチユーザーであるため、すべてのシステムリソースとを含む、ファイルとディレクトリに対する一連の許可された操作を制御するためのアクセス許可システムを作業環境に提供する必要があるためです。デバイス。

コンテンツ

SW / BDのLinux権限:コンテンツ1

SW開発者向け

サーバーおよびシステム管理者(Sysadmin)は、XファイルまたはフォルダーでXレベルのユーザーまたはプロファイルを付与するためのアクセス許可を決定するときに、それらに対して実行する必要のある操作またはプロセスのタイプを正確に知る必要があります。 Webサーバーの場合、ユーザーは次の2つのタイプに分類できます。

  1. 管理者ユーザー: サーバーにログインするためのユーザーアカウントを持ち、特定の特権を持ち、SSHまたはSFTPを介してインストールされたシステムまたはWebサイトで特定の変更(コピー/削除/変更)を実行する人。
  2. 管理者以外のユーザー: 彼らはサイトとWebシステムへの訪問者にすぎないため、サーバーにユーザーアカウントを持っていないこと。 したがって、ファイルやフォルダに直接アクセスする権限はありませんが、サイトのWebインターフェイスまたはインストールされているWebシステムを介してそれらと対話します。

ただし、システム管理者が十分または十分に受け取っていない場合 インストールするWebサイトおよびシステムの機能、機能、またはファイル構造に関するSW開発者による情報、ドキュメント、またはサポート 最終的に信頼できる最大値を実行します。この場合、通常は次のようになります。

chmod 777 -R /var/www/sistema-web

そして何度もそれはで終わります:

chown root:root -R /var/www/sistema-web

SW / BDのLinux権限:コンテンツ2

警告

これは通常は悪い習慣ですが、通常、インストールされたWebサイトとシステムの許容性と不適切な実行の問題を回避します。 悪い習慣です。サイトまたはWebシステムのフォルダとファイルに対してこのようにコマンドchmod777を実行すると、セキュリティがまったく失われます。

オンラインのサイトまたはWebシステムのすべてのユーザーが、Webサーバー内またはそれ以降のサイトまたはWebシステムのファイル構造内のファイルを大きな障害なしに変更または削除できるようにします。 訪問しているユーザーに代わって動作するのはWebサーバーであり、実行されているのと同じファイルを変更できることを覚えておく必要があるためです。

また、ユーザーが攻撃者であり、サイトまたはWebシステムに何らかの脆弱性が存在する場合、ユーザーはそれを簡単に悪用して改ざんし、無効にすることができます。、またはさらに悪いことに、悪意のあるコードを挿入してフィッシング攻撃を実行したり、誰も簡単に知らないうちにサーバーから情報を盗んだりします。

SW / BDのLinux権限:コンテンツ3

提言

これらのタイプの対策を回避するには、 SysadminまたはSW開発者は、さまざまなシステムまたはWebサイトのフォルダーとファイルに、正しく必要なアクセス許可とユーザーが含まれていることを確認する必要があります。 将来のセキュリティとプライバシーの問題を回避するため。

権限レベルでは、次の3つのコマンドを実行して、インストールされているシステムまたはWebサイトの権限とユーザーを通常の状態に戻すことができます。つまり、値755をすべてのディレクトリに設定し、644をファイルに設定します。

システムまたはウェブサイトフォルダ内でそれらを実行することを常に忘れないでください、たとえばサーバーのルートなど、上位のフォルダー(ディレクトリ)で実行された場合、コマンドコマンドはサーバーのすべてのアクセス許可を再帰的に変更し、サーバーが動作しなくなる可能性が高くなります。

SW / BDのLinux権限:コンテンツ4

フォルダ(ディレクトリ)に適用される権限

ディレクトリとファイルのアクセス許可

find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;

y

chmod 777 -R .

o

chmod 777 -R /var/www/sistema-web

システムまたはウェブサイトのフォルダ(ディレクトリ)の外にある場合。

システムまたはWebサイトのユーザー

chown www-data:www-data -R .

o

chown www-data:www-data -R /var/www/sistema-web

システムまたはウェブサイトのフォルダ(ディレクトリ)の外にある場合。 また、ユーザーwww-dataは、Apache2の使用に関する限り、最も使用されているか適切であるため、例としてのみ使用されています。

SW / BDのLinux権限:コンテンツ5

ファイルに適用される権限(ファイル)

権限の変更が行われたら、別の権限を手動で取得するディレクトリとファイルの権限の変更に進むことができます。 また、必要なものの所有者ユーザーも変更する必要がある場合。 したがって、この時点で、SysadminとSW開発者の両方が、システムまたはWebサイト構造内の各フォルダーとファイルに必要なアクセス許可を合意する必要があります。

SW / BDのLinuxパーミッション:結論

結論

LinuxまたはUNIXオペレーティングシステムのファイルとフォルダーに対するアクセス許可の管理は、同じものの大きな利点と利点のXNUMXつです。、ファイルとフォルダのさまざまなレベルのアクセス、編集、および実行をより適切に、正確かつ安全に制御できるためです。

さらに、Webサーバーのレベル、つまり、システムまたは組織の内部および外部のWebサイトがホストされている場所に関しては、 プライバシー、セキュリティ、機能の最適なバランスを実現するには、各ディレクトリまたはファイルにどのアクセス許可を割り当てるかを知ることが優先度が高いためです。


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。

  1.   ポルグ28

    おはようございます、お元気ですか?
    私はLinuxに手を出しています。そこからファイルをインポートできるアプリケーションがあります。ユーザーは、データベースに挿入されたファイルを解凍した後、xmlファイルを含むフォルダーを含む.zipをアップロードします。 Windowsでは問題ありません。アプリケーションをLinuxに渡すと、いくつかの権限が失われます。原則として、この記事で彼らが言っていることをすべてテストするために、実行すべきではありません(ただし、一度変更します)すべての機能を検証できます)。
    実際のところ、ファイルは解凍されていますが、所有者の読み取りおよび書き込み権限、所有者グループの読み取り権限、および他の権限なしでのみダウンロードされていることがわかります。 アプリケーションを使用するユーザーがファイルを所有している場合。 実行権限がないため、プロセスの通常のフローをたどって、データベースにxmlを挿入することができないことを理解しています。 私の質問は、システム上にまだ持っていないファイルにアクセス許可を与えるにはどうすればよいですか? ダウンロードされたフォルダー(tmp)には、すべてのアクセス許可があり、繰り返し適用されますが、ファイルがそのフォルダー内にダウンロードされるたびに、記載されているアクセス許可のみがあります。 そのフォルダに表示されるファイルに実行権限を残す方法はありますか?
    はっきりしているといいのですが、よろしくお願いします。

  2.   Linuxポストインストール

    フォルダ/ tmpまたは…/ tmpには755の権限があると思いますが、それでも、アプリケーションを所有するユーザーがそれらを預けた場合、他の権限を残します。 私は開発者ではありませんが、アプリケーションの言語または別の言語で、必要なアクセス許可(chmod)とファイルの所有者(chown)のコマンドコマンド(bash)を実行するルーチンを示すことができると思います。 それ以外の場合は、スクリプトを実行するたびにスクリプトを実行できます。