質問があります。ルートアカウントのソースからインストールすることはセキュリティ上の理由から良い考えではありません。
私の立場は、誰かがrootアカウントを使用してコードを解凍し始めた後、インストール手順を実行しても構いません。
#./configure
#make
#make install
反対:
$./configure
$make
$sudo make install
私のロジックは次のとおりです。セキュリティリスクが発生した場合は、コード自体が原因でインストール方法ではないためです。 end コマンドは、root を使用して最終バイナリとともにインストールされるすべてのファイルをインストールするためです。
ルートではなくユーザーセッションであるかどうかにかかわらず、ソースコードがソースコードにマルウェアをエンコードした場合、それはシステムにあります。だから何があっても常に危険です。
これは自分のコードではなく、アプリが含まれていない独自のリポジトリに関連しているので、Gitハブまたはそれを書いた人のウェブサイトにアクセスしてソースコードを使用してインストールしてください。木を設置するのと同じくらい簡単です。
これにより、ユーザーはルートアカウントまたは「一般」ユーザーアカウントにログインしたときよりもソースコードをどのように取得したかをより興味を持っています。
私はルートを使わないでください理由についてのすべての主張を聞きました。なぜなら、端末に書いた内容に注意を払わないと、システムに不可逆的な損傷が発生する可能性があるからです。 sudoを使用すると、それほど多くの損傷を引き起こす可能性があるため、これは不要な主張であり信頼です。システム。したがって、それはこの主張に含まれるポイントの一部ではありません。
それはややはいまたはいいえ質問です。はい - 私は正しいです。長期的には、ソースコードアプリケーションをコンパイルしてシステムにインストールするためにrootアカウントを使用するかどうかは問題ではありません。
または
いいえ。私が間違っていました。同じ操作を実行するにはroot権限を使用する必要があるため、これは重要です。
答え1
プログラムをrootとして実行して過度に実行すると、潜在的な攻撃者に「必要な」攻撃ポイントよりも多くの攻撃ポイントを提供する可能性があります。ルートアクセスがなければ、システムを損傷しようとする試みはほとんどの場合不可能であるか、より困難です。すべてのコマンドをrootとして実行するアプローチは、単にすべてをrootとして実行する結果(ディレクトリの一覧表示、画像の開く、音楽の再生など)をもたらす可能性があります。これは多くの潜在的な問題点を意味します。
意図せずに実行しているプログラムのバグは、rootで実行するとより多くのダメージを与える可能性があります(そしてソフトウェアからすべてのバグを削除することは事実上不可能です)。または、ユーザーが無効なオプションを入力した場合(より高い可能性)
また./configure
、.NETを使用している場合は、make
すべての人のためにプログラムをインストールしたくない場合があります(たとえば、自分だけに必要なライブラリがある可能性があります)。
答え2
インストールするプログラムが次のように疑われる場合悪意のある、rootまたは一般ユーザーとして実行しないでください。これには、コンパイルされたプログラムの実行と提供されたビルドスクリプトの実行が含まれます。攻撃者がユーザーのようにコードを実行すると、ユーザーのアカウントが所有されます(そして、遅くともユーザーがそのアカウントからrootアクセス権を取得すると、攻撃者はユーザーのコンピュータを所有します)。攻撃者のコードがmake
実行されたために実行されたのか、それとも実行されたために実行されたのかは重要ではありませんmake install
。
一般ユーザーとしてビルドしてrootとしてインストールする目的は、次のリスクを減らすことです。偶然質問。それにもかかわらず、通常必要な場合(ドライバやシステムサービスのインストールなど)でない限り、ホームブロードキャストプログラムをrootとしてインストールしないでください。自分のユーザーとして別のディレクトリにインストールし、次のようなものを使用します。お店/usr/local/bin
標準ディレクトリ(など)でプログラムを使用できるようにします。これにより、インストール段階で既存のソフトウェアを上書きしたり(名前の競合の可能性がある)、意図しないディレクトリに書き込むリスクが軽減され、すべてのファイルが1つの場所にあるため、プログラムを簡単に削除できます。
答え3
ユーザージョーとして、
./configure
make
sudo make install
君は普通そうじゃない必要コードをrootとして設定またはコンパイルしてインストールします。そうでなければ必要ルートになってからルートにならないでください。
configure
どちらもmake
コードを実行しています。他の攻撃ベクトルを導入する必要がない場合は、rootとして実行してください(たとえば、誰かがメイクファイルを壊すことはできますが、ソースコードは壊すことはできません)。
答え4
最終プログラム(および設置)は建物よりも細かく完成することができます。どのルートとして実行すると、ビルドプロセスのエラーや完全性チェックが完了するとシステムが破損する可能性があります。リスクをできるだけ減らすのが最善です。