Proxy for all platforms
사내에 프록시 설정이 많아서 정리해보았습니다. 계속 추가할 예정입니다.
Debian Linux (ubuntu, …)
Proxy
/env/environment
파일에 다음을 추가해줍니다.
http_proxy="http://corp.proxy:port/"
https_proxy="http://corp.proxy:port/"
no_proxy="localhost,127.0.0.1"
Root certificate
sudo mkdir /usr/share/ca-certificates/extra
sudo cp foo.crt /usr/share/ca-certificates/extra/foo.crt
sudo dpkg-reconfigure ca-certificates
Java
Proxy
/env/environment
파일에 다음을 추가해줍니다.
JAVA_OPTS="-Dhttp.proxyHost=corp.proxy -Dhttp.proxyPort=port -Dhttp.nonProxyHosts=127.0.0.1|localhost-Dhttps.proxyHost=corp.proxy -Dhttps.proxyPort=port -Dhttps.nonProxyHosts=127.0.0.1|localhost"
Root certificate
JVM은 $JAVA_HOME/jre/lib/security/cacerts
파일에 루트 인증서를 등록해야 합니다.
keytool -import -alias ALIAS_NAME -keystore CACERTS_FILE -trustcacerts -storepass changeit -noprompt -file CRT_FILE
적절한 ALIAS_NAME, cacerts 파일 위치, 사내 인증서 파일 위치 등을 지정해야 합니다.
JetBrain 계열의 IDE를 사용하면 내장 jre를 가지게 됩니다. 따라서 파일 시스템 내 전체 cacerts를 찾아서 일괄로 등록하려면 다음과 같이 하면 유용합니다.
sudo find / -name cacerts -exec keytool -import -alias ALIAS_NAME -keystore {} -trustcacerts -storepass changeit -noprompt -file CRT_FILE \;
Python / pip
Proxy
전역 변수 선언으로 적용됩니다.
Root certificate
Add the following into ~/.pip/pip.conf
[global]
cert = /usr/share/ca-certificates/extra/foo.crt
Composer
PHP 의존 관리자
Proxy
전역 변수 선언으로 적용됩니다.
Root certificate
재미있게도 다음과 같이 설정해야 TLS 설정을 해제하여 의존 패키지 설치가 가능합니다.
export http_proxy="http://corp.proxy:port"
export HTTP_PROXY="http://corp.proxy:port"
export https_proxy=
export HTTPS_PROXY=