이 문서는 Jira Software 제품의 HTTP 및 HTTPS 프록시 구성 가이드를 공유하기 위해 작성되었다. 

페이지 속성은 아래와 같이 유지합니다.

제품 및 버전Jira Software 7.13
DB 및 버전MySQL 5.7.32
JAVA 버전Oracle JDK 1.8.0.161
OS 버전CentOS 7.0



목차 

목적

Jira 어플리케이션이 아웃바운드 프록시를 통해 외부적으로 통신할 수 있도록 구성하는 방법을 정의한다. 

설정

지라 시작 시 특정 시스템 속성을 Java Virtual Machine(JVM)에 전달하여 프록시 지원을 구성한다. 이러한 속성들은 Oracle에 정의된 규칙을 따른다.

HTTP 프록시를 구성하려면  http.proxyHost 속성을,  HTTPS 프록시는 https.proxyHost 속성을 정의해야 한다.

시스템 속성 설정에 대해서 자세한 내용은 Setting properties and options on startup 문서를 참조하면 된다.


http.proxyHost 및 http.proxyPort 속성은 각각 HTTP 프로토콜이 사용할 프록시 서버와 포트를 나타낸다. 예:


-Dhttp.proxyHost=proxy.example.org -Dhttp.proxyPort=8080 -Dhttps.proxyHost=proxy.example.org -Dhttps.proxyPort=8080 -Dhttp.nonProxyHosts=localhost

위에 코드 내용에서 http.nonProxyHosts는 프록시 서버를 통하지 않고 직접 연결해야 하는 호스트를 나타낸다. 


http.nonProxyHosts의 값은 각각 ( | )로 호스트 목록을 구분할수 있으며 와일드카드 문자( * )로 패턴 일치하는 주소를 설정할 수 있다. 사용 예: foo.com으로 끝나는 모든 도메인 주소, localhost, confluence, crowd 직접 엑세스

-Dhttp.nonProxyHosts=*.foo.com|localhost|confluence|crowd


http.nonProxyHosts 속성이 구성되지 않은 경우 모든 웹 요청은 프록시를 통해 라우팅되기에 어떤 부분은 프록시를 통하지 않고 연결하는 것이 좋다.. 예를 들어, 컨플런스와 지라를 같이 어플리케이션 링크를 할 경우 추천하는 방법은 프록시를 우회하고 내부 네트워크에서 해당 속성으로 통신하는 것이 좋다. 이러한 링크에서 IP 유효성 검사를 고려할 때 프록시를 통한 라우팅은 속도에 영향을 미칠 수 있다. 즉, 트래픽이 라우팅되는 방식에 따라 서버의 소스 IP가 다를 수 있다.

최소한 http.nonProxyHosts를 통하여 localhost와 JIRA baseurl은 직접 엑세스하게 제외해야 한다. 그렇지 않으면 특정 기능이 제대로 작동하지 않을 수 있다(JIRA는 그 자신에게 연결을 시도하고 HTTP 요청은 시간 초과되거나 프록시에 의해 차단될 수 있다).

사용 예:  jira.atlassian.com도메인과 localhost의 모든 호스트에 직접 엑세스

-Dhttp.nonProxyHosts=localhost|jira.atlassian.com


어플리케이션 링크

Jira를 다른 아틀라시안 제품과 어플리케이션 링크 할 경우 어플리케이션 URL을 nonProxyHosts에 추가해야한다. 그렇지 않으면 Jira가 다른 아틀라시안 제품과 통신하려할때 HTTP 요청 시간이 초과되거나 해결되지 않을 수 있다. 어플리케이션 링크를 방해할 수 있다.

아래 예는 Jira를 Confluence(다른 아틀라시안 제품)에 어플리케이션 링크 설정하는 예시이다.

-Dhttp.nonProxyHosts=localhost|*.atlassian.com


인증 설정방법

프록시 인증은 아래와 같은 속성들을 자바로 전달하여 구성되어 진다.

예를 들면,

-Dhttp.proxyUser=atlaspirate -Dhttp.proxyPassword=yarrrrr -Dhttps.proxyUser=atlaspirate -Dhttps.proxyPassword=yarrrrr


Microsoft ISA NTLM 인증

JIRA is Unable to Use NTLM Authentication 문서에 따르면 Jira는 현재 NTLM 인증을 지원하지 않지만 다음과 같은 속성을 사용하여 JVM에서 이 기능을 구성할 수 있다.

-Dhttp.auth.ntlm.domain=DOMAIN


인증 순서 구성

기본적으로 ntlm, digest, basic 순서로 3가지 인증 방식을 제공한다. 순서를 변경 할 수 있고 하나 이상의 방법을 완전히 배제하지 않는다.

다음 속성에 따라 구성가능하고 아래 코드는 basic, ntlm 순서로 제공하고, digest는 사용지않는 구성의 예시이다.

-Dhttp.proxyAuth=basic,ntlm



URL: https://confluence.atlassian.com/jirakb/how-to-configure-an-outbound-http-and-https-proxy-for-jira-applications-247857187.html