Rational DOORS Web Access를 위한 역 프록시로 IBM HTTP Server 구성

Rational DOORS Web Access를 위한 역 프록시로 IBM HTTP Server를 구성할 수 있습니다. 역 프록시 서버는 보안의 추가 계층을 제공하고 네트워크에서 HTTP 서버를 보호하며 SSL(Secure Sockets Layer) 요청의 성능을 향상시킵니다. 역 프록시를 사용할 때 필요에 따라 배치 토폴로지를 나중에 변경할 수 있습니다.

시작하기 전에

  1. Rational DOORS Web Access를 설치하되 Rational DOORS Web Access 컴포넌트나 서버를 시작하지 마십시오.
  2. IBM HTTP Server를 설치하십시오.

이 태스크 정보

역 프록시 서버는 컨텐츠 HTTP 서버에 대한 직접 액세스를 방지하는 특수 HTTP 서버입니다. 컨텐츠에 대한 모든 요청은 공용으로 표시 가능한 역 프록시 서버 URI를 통과한 다음 개인용 Rational DOORS Web Access 서버 URI로 경로 재지정됩니다.
역 프록시 서버를 사용하면 여러 가지 장점이 있습니다.
  • 향후 배치 토폴로지 변경: 배치에서 역 프록시를 사용할 때 애플리케이션이 배치된 포트 번호 및 시스템 수에 관계없이 공용 URL에서 하나의 호스트 이름을 제공할 수 있습니다. 결과적으로 나중에 배치 토폴로지를 변경할 수 있습니다.
  • 보안: 역 프록시 서버는 보안의 추가 계층을 제공하고 통신 네트워크에서 기타 HTTP 서버를 보호할 수 있습니다. 역 프록시 서버와 컨텐츠 HTTP 서버 사이에 방화벽을 사용하는 경우 역 프록시 서버의 HTTP 요청만 허용하도록 방화벽을 구성할 수 있습니다.
  • 성능: SSL 요청의 성능을 향상시킬 수 있는 SSL 가속화 하드웨어를 역 프록시 서버에 부착할 수 있습니다.
이 프로시저에서 다음 단계를 수행하십시오.
  1. SSL 키 저장소를 준비하십시오.
  2. httpd.conf 파일을 수정하십시오.
  3. IBM HTTP Server를 시작하십시오.
  4. Rational DOORS Web Access 컴포넌트를 시작하십시오.
  5. Rational DOORS Web Access 서버를 시작하십시오.

프로시저

  1. 시스템의 액세스 가능한 위치에 유효한 SSL 인증서 키 파일을 두십시오.
  2. IBM HTTP Server에서 SSL 요청을 처리하도록 구성하려면 IBM HTTP Server 설치의 conf 디렉토리에 있는 httpd.conf 파일을 편집하십시오.
    1. 다음 모듈을 주석 해제하십시오.
      • LoadModule proxy_module modules/mod_proxy.so
      • LoadModule proxy_http_module modules/mod_proxy_http.so
      • LoadModule ibm_ssl_module modules/mod_ibm_ssl.so
    2. SSL 구성 섹션으로 이동하고 애플리케이션 서버 세부사항을 설정하십시오. 표준 설정에 추가로 이 단계의 예에서 보여준 것처럼 다음 매개변수를 설정해야 합니다.
      • SSLProxyEngine
      • ProxyPass
      • ProxyPassReverse
    참고: 이 예에서 일반 사용자에게 표시되는 프록시 포트는 8443으로 설정됩니다. 사용자 환경에 따라 Apache Tomcat이 사용하도록 구성되는 포트는 포트 충돌을 피하기 위해 다른 값으로 설정되어야 할 수 있습니다.
    # 클라이언트 SSL 요청을 청취하는 포트 사용 설정
    Listen 0.0.0.0:8443
    <VirtualHost *:8443>   
    # SSLEnable 지시문이 가상 호스트에 대해 SSL을 사용으로 설정합니다.
    SSLEnable     
    
    # SSLProxyEngine은 프록시된 연결에 대해 서버가 SSL을 사용하는지를 토글합니다.
    # 서버가 SSL 자원에 대해 역 프록시로 기능하는 경우  SSLProxyEngine을 On으로 설정해야 합니다.
    # mod_ibm_ssl.so에 의존합니다.
    SSLProxyEngine on    
    
    # SSLProtocolDisable 지시문은 특정 가상 호스트에 대한 클라이언트에서
    #  사용할 수 없는 하나 이상의 SSL 프로토콜을 지정할 수 있게 합니다.
    # 이 지시문은 <VirtualHost> 컨테이너에 있어야 합니다.
    # 가상 호스트에 대한 지원 프로토콜이 별도로 지원됩니다.
    # 모든 지원 프로토콜을 사용할 수 없으면 클라이언트가 SSL 핸드쉐이크를 완료할 수 없습니다.
    # 다음 가능 값이 이 지시문에 사용 가능합니다. SSLv2, SSLv3, TLS, TLSv1, TLSv1.1, TLSv1.2
    SSLProtocolDisable SSLv2  
    SSLProtocolDisable SSLv3   
    
    # 키 파일 지시문은 사용할 키 파일을 설정합니다.
    KeyFile <path to keystore>/<keystore filename>.kdb      
    
    # SSLStashfile 지시문은 PKCS11 디바이스를 열기 위해 암호화된 비밀번호를
    #  포함하는 파일 이름을 갖는 파일에 대한 경로를 표시합니다.
    # mod_ibm_ssl.so에 의존합니다.
    SSLStashfile <path to stash file>/.<stash filename>.sth     
    
    # SSLServerCert 지시문은 이 가상 호스트에 대해 사용할 서버 인증서를 설정합니다.
    # mod_ibm_ssl.so에 의존합니다.
    SSLServerCert <ssl certificate label>    
    
    # 이 지시문은 로컬 서버의 공간으로 원격 서버를 맵핑하도록 허용합니다.
    # 로컬 서버는 전통적 의미에서 프록시로 작동하지 않으며 원격 서버의 미러로 표시됩니다.# <Path> 는 로컬 가상 경로의 이름입니다.
    # <url>은 원격 서버의 부분 URL입니다.
    # ProxyPass <Path> <url>   
    # 참고: 후행 슬래시가 있어야 합니다.
    ProxyPass / https://<dwa tomcat host>:<dwa tomcat port>/     
    
    # 이 지시문은 Apache가 HTTP 경로 재지정 응답에서 위치 헤더에 URL을 조정하게 합니다.
    # 이 기능은 Apache가 역 프록시로 사용될 때 역 프록시 뒤에 있는 백엔드 서버에서
    # HTTP 방향 재지정 때문에 역 프록시를 우회하지 않도록 하기 위해 필요합니다.
    # <Path> 는 로컬 가상 경로의 이름입니다.
    # <url>은 원격 서버에 대한 부분 URL이며 ProxyPass 지시문과 동일한 방법으로 사용됩니다. 
    # ProxyPassReverse <Path> <url>
    # 참고: 후행 슬래시가 있어야 합니다.
    ProxyPassReverse / https://<dwa tomcat host>:<dwa tomcat port>/  
    
    # 이 옵션은 proxypass 행에서 지정된 개인용 호스트 이름이 아닌,
    # 수신 요청에서 프록시된 호스트까지 행을 호스트에 전달합니다.
    ProxyPreserveHost On
    
    </VirtualHost>
    
    # 명시적으로 구성되지 않는 한 모든 기타 가상 호스트에 대해 SSL을 사용 안함으로 설정
    SSLDisable
  3. IBM HTTP Server를 시작하십시오.
  4. Rational DOORS Web Access 컴포넌트를 시작하십시오.
  5. Rational DOORS Web Access 서버를 시작하십시오.
  6. dbadmin 명령을 입력하여 Rational DOORS Web Access 공용 URL 및 포트를 역 프록시 서버로 설정하십시오.
    dbadmin -dwaHost reverse_proxy_url -dwaPort reverse_proxy_portnumber
    dbadmin 명령에 대한 자세한 정보는 Rational DOORS 데이터베이스 서버 구성을 참조하십시오.

피드백