ホームページ > 運用・保守 > Linuxの運用と保守 > Linux での sudo ネットワーク権限に関するサンプルコードの共有

Linux での sudo ネットワーク権限に関するサンプルコードの共有

黄舟
リリース: 2017-06-04 11:17:34
オリジナル
1750 人が閲覧しました

この記事では、Linuxのsudoネットワーク権限の詳細な説明に関する関連情報を主に紹介します。必要な方は、

Linux

ネットワークプロキシが設定されているサーバーのsudoネットワーク権限の詳細な説明を参照してください。 up、現在のユーザーで実行 ネットワークアクセスには問題ありませんが、sudo経由でコマンドを実行すると「ネットワーク接続がありません」エラーが発生します。

バックグラウンド

ネットワークプロキシが設定されているサーバーの場合、現在のユーザーでネットワークアクセスを実行する場合は問題ありませんが、sudoでコマンドを実行すると「ネットワーク接続がありません」エラーが発生します。

通常の権限では、wget は成功します。

# wget https://github.com
--2016-12-08 09:00:43-- https://github.com/
Connecting to 109.105.113.200:8080... connected.
Proxy request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘index.html'

2016-12-08 09:01:03 (1.33 KB/s) - ‘index.html' saved [25692]

使用sudo命令后,连接失败。
# sudo wget https://github.com
--2016-12-08 09:01:41-- https://github.com/
Resolving github.com (github.com)... failed: Name or service not known.
wget: unable to resolve host address ‘github.com'
ログイン後にコピー

解決策

なぜこのような状況が起こるかというと、sudoコマンドは一般ユーザーがスーパーユーザー権限でツールを使用できるようにするために使用されていますが、環境変数から継承していないためです。ネットワーク プロキシの設定は、http_proxy や https_proxy などの環境変数を設定することで実現されます。そのため、sudo後はネットワークプロキシが失われ、当然ネットワーク接続ができなくなります。この問題を解決するには、sudo の設定ファイルを変更する必要があります。 sudo 設定ファイルを変更するには特別なコマンドとメソッドがあります

sudo 設定ファイルに、Defaults env_keep += "http_proxy https_proxy" を追加します。この行は、sudo コマンドを使用するときに、後でリストされる環境変数を保存することを示します。

りー

以上がLinux での sudo ネットワーク権限に関するサンプルコードの共有の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート