各種コマンド類でプロキシサーバを越えるための設定
Yum
/etc/yum.confに以下のような内容を記述。::
proxy=http://proxy.example.com:8080 proxy_username=ユーザ名 proxy_password=パスワード
wget
/etc/wgetrcに以下を記述。::
http_proxy = http://proxy.example.com:8080 proxy_user = ユーザ名 proxy_passwd = パスワード
curl
環境変数http_proxyで指定する。::
$ export http_proxy=http://ユーザ名:パスワード@proxy.example.com:8080 $ export https_proxy=http://ユーザ名:パスワード@proxy.example.com:8080
Ant
build.xmlのsetproxyタスクで設定できる。::
<setproxy proxyhost="proxy.example.com" proxyport="8080" proxyuser="ユーザ名" proxypassword="パスワード" />
RedHat系のRPMでantをインストールした場合、ant-commons-netパッケージも必要。::
$ yum install ant-commons-net
プロキシサーバとポート番号は、環境変数HTTP_PROXY_HOST、HTTP_PROXY_PORTで指定することもできる。
環境変数HTTP_PROXY_USERNAME、HTTP_PROXY_PASSWORDで、認証情報も指定できるという記述もみかけるが、そちらはgetタスクでは効かない様子。
Subversion
~/.subversion/serversに以下の内容を記述する。::
[global] http-proxy-host = proxy.example.com http-proxy-port = 8080 http-proxy-username = ユーザ名 http-proxy-password = パスワード
Git
curl_ と同じ。環境変数http_proxyで指定する。::
$ export http_proxy=http://ユーザ名:パスワード@proxy.example.com:8080 $ export https_proxy=http://ユーザ名:パスワード@proxy.example.com:8080 $ git clone http://foo.bar/baz
プロキシとは関係ないが、
ちゃんとした証明書がないところにアクセスする場合、以下の指定が必要。::
$ GIT_SSL_NO_VERIFY=1 git clone http://foo.bar/baz
Maven
~/.m2/settings.xmlに以下のような内容を記述。::
<?xml version="1.0" encoding="UTF-8"?> <settings> <proxies> <proxy> <id>My Proxy</id> <active /> <protocol>http</protocol> <host>proxy.example.com</host> <port>8080</port> <username>ユーザ名</username> <password>パスワード</password> <nonProxyHosts>127.0.0.1|*.example.com</nonProxyHosts> </proxy> </proxies> </settings>
urllib2
easy_installなどのPythonのツールはこれでいけることが多い。環境変数HTTP_PROXYを指定。::
$ export HTTP_PROXY=http://ユーザ名:パスワード@proxyhost:port/
pythonのコード内で指定したい場合、以下のような感じに。::
import urllib2 auth_handler = urllib2.ProxyBasicAuthHandler(urllib2.HTTPPasswordMgrWithDefaultRealm()) auth_handler.add_password(None, 'proxy.example.com:8080', 'ユーザ名', 'パスワード') opener = urllib2.build_opener(auth_handler) urllib2.install_opener(opener) res = urllib2.urlopen('http://www.google.co.jp/') for line in res: print line
gem
これも境変数http_proxyの設定でいけた。::
$ export http_proxy=http://ユーザ名:パスワード@proxy.example.com:8080/
~/.gem.rcに書いておく方法もあるようだ。::
http_proxy: http://ユーザ名:パスワード@proxy.example.com:8080