サーバーでGUIアプリケーションを実行するとセキュリティ上の問題はありますか?

サーバーでGUIアプリケーションを実行するとセキュリティ上の問題はありますか?

たとえば、システムファイルを編集するには、次のようにし/etc/named/named.confます。

su -
Password:
gedit

次に、代わりに上記のファイルを開いて編集します。

nano /etc/named/named.conf 

または:

vi /etc/named/named.conf

時々、GUIツールを使用する習慣はセキュリティ上の問題を引き起こしますか?特に、次のような場合にさらにそうです。仕える人環境?

答え1

より多くのコードを実行するほど、潜在的なセキュリティ上の脆弱性があります。したがって、少なくとも理論的には、インストール/実行されるプログラムの数と複雑さを最小限に抑えたいと思います。実際、セキュリティ更新を最新の状態に保つ限り、サーバでの GUI の使用を避ける必要がある実際のセキュリティ理由はありません。

sshもちろん、ターミナルエディタを使用するのが非常に快適な場合は、なぜ最初にグラフィカルコンソールを使用するのではなく、グラフィックコンソールでサーバーを使用したいのか疑問に思われます。

答え2

唯一の理由が特定のファイルを編集することであれば、インタラクティブシェルに切り替えることはすでに「セキュリティの問題」だと思います。しかし、それは単なる視点にすぎません。

インタラクティブモードに切り替えてみてくださいroot。次に、何を実行しても最高の権限で実行します。これで問題は、実行中のアプリケーションを信頼するかどうかです。特定のアプリケーションにはセキュリティ上の問題を引き起こすバグがある可能性があります。

root私のポイントは、Xアプリケーションを直接実行する際のXスタック全体の複雑さを最小限に抑えることです。バックドアやエスケープが悪用される可能性がある場合、攻撃者はrootアクセス権を取得します。これはXスタックだけではありませんrootsetuid

あなたのワークフローの解決策としてこのコマンドを提供しますsudoedit。形で使用してください

$ sudoedit <file_to_edit>

通常どおりユーザーを認証/承認しsudoてから、好みのエディタ(EDITOR環境変数として設定)を実行します。直接実行するのと比較すると、$ sudo $EDITOR <file_to_edit>エディタ自体は元の権限で実行され、終了後に編集結果にファイルが置き換えられます。ただし、変更を適用するにはエディタを終了する必要があるのが少し邪魔になることがあります。

答え3

大丈夫です。サーバーを管理するときにテキストモードツールを使用する習慣を得る主な理由は、セキュリティではなく、GUIアプリケーションが実用的でない低帯域幅または高レイテンシ接続を介してリモートで作業を実行することです。

xkcd1200

関連情報