フラミナル

考え方や調べたことを書き殴ります。IT技術系記事多め

パスワード付きのプロキシ環境でLinuxコマンドを実行する方法まとめ!

こんにちは、ぎんです。

今回はプロキシ環境下で、Linuxの各種コマンドを実行する方法をまとめます! これ本当に面倒ですよね。

対象のコマンド

今回対象のコマンドはこちら

  • yum
  • wget
  • curl
  • gem
  • git
  • docker

事前に調べておくこと

こちらは環境にあわせて、確認しておいて下さい

  • プロキシサーバのアドレスとポート番号
  • プロキシサーバを抜けられるのアカウントとパスワード

前提

  • プロキシサーバにて対象のポートが閉じられていないこと
  • 今回の環境はCentOS7想定となります
  • 使用するパスワードに@などの特殊記号が含まれている場合、URLエンコードが必要になります

Web便利ツール/URLエンコード・デコードフォーム/処理完了 - TAG index Webサイト

yumの場合

/etc/yum.conf に以下を追加します(存在しない場合は作成する)

proxy_username=username #ユーザ名
proxy_password=password #パスワード
address=xx.xx.xx.xx #プロキシサーバIPアドレス
port=xxxx #プロキシサーバポート番号

proxy=http://${proxy_username}:${proxy_password}@${address}:${port}
#対象のプロキシサーバがhttpsを使用している場合は以下を利用してくてください
#proxy=https://${proxy_username}:${proxy_password}@${address}:${port}

wgetの場合

~/.wgetrc に以下を追加します(存在しない場合は作成する)

proxy_username=username #ユーザ名
proxy_password=password #パスワード
address=xx.xx.xx.xx #プロキシサーバIPアドレス
port=xxxx #プロキシサーバポート番号

http_proxy=http://${proxy_username}:${proxy_password}@${address}:${port}
ftp_proxy=http://${proxy_username}:${proxy_password}@${address}:${port}
#対象のプロキシサーバがhttpsを使用している場合は以下を利用してくてください
#https_proxy=https://${proxy_username}:${proxy_password}@${address}:${port}

curlの場合

~/.curlrc に以下を追加します(存在しない場合は作成する)

proxy_username=username #ユーザ名
proxy_password=password #パスワード
address=xx.xx.xx.xx #プロキシサーバIPアドレス
port=xxxx #プロキシサーバポート番号

proxy=http://${proxy_username}:${proxy_password}@${address}:${port}
#対象のプロキシサーバがhttpsを使用している場合は以下を利用してくてください
#proxy=https://${proxy_username}:${proxy_password}@${address}:${port}

gemの場合

/etc/environmentに以下を追加し再起動します(存在しない場合は作成する)

proxy_username=username #ユーザ名
proxy_password=password #パスワード
address=xx.xx.xx.xx #プロキシサーバIPアドレス
port=xxxx #プロキシサーバポート番号

export http_proxy=http://${proxy_username}:${proxy_password}@${address}:${port}
#対象のプロキシサーバがhttpsを使用している場合は以下を利用してくてください
#export https_proxy=https://${proxy_username}:${proxy_password}@${address}:${port}

gitの場合

以下のコマンドを実行します。

proxy_username=username #ユーザ名
proxy_password=password #パスワード
address=xx.xx.xx.xx #プロキシサーバIPアドレス
port=xxxx #プロキシサーバポート番号

git config --global http.proxy http://${proxy_username}:${proxy_password}@${address}:${port}
#対象のプロキシサーバがhttpsを使用している場合は以下を利用してくてください
git config --global https.proxy https://${proxy_username}:${proxy_password}@${address}:${port}

#確認
git config --list |grep proxy

dockerの場合

/etc/sysconfig/docker に以下を追加します

proxy_username=username #ユーザ名
proxy_password=password #パスワード
address=xx.xx.xx.xx #プロキシサーバIPアドレス
port=xxxx #プロキシサーバポート番号

http_proxy=http://${proxy_username}:${proxy_password}@${address}:${port}
#対象のプロキシサーバがhttpsを使用している場合は以下を利用してくてください
#https_proxy=https://${proxy_username}:${proxy_password}@${address}:${port}