アトラシアン アプリケーションにアウトバウンド HTTP/HTTPS プロキシを構成する方法

プラットフォームについて: Server および Data Center のみ。この記事は、Server および Data Center プラットフォームのアトラシアン製品にのみ適用されます。

Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Fisheye および Crucible は除く

このページの内容は、Jira アプリケーションでサポートされていないプラットフォームに関連しています。したがって、アトラシアンは、そのためのサポートの提供を保証できません 。この資料は情報提供のみを目的としているため、お客様自身の責任でご使用ください。

目的

This page defines how to configure Atlassian applications such that they can communicate externally through an outbound proxy. This configuration is required to access servers outside the network it's hosted in, such as the Atlassian Marketplace.

ソリューション

基本的な構成

HTTP(S) アウトバウンド プロキシのサポートは、アトラシアン アプリケーションの起動時に特定のシステム プロパティを Java 仮想マシン (JVM) に渡すことで構成されます。アトラシアン アプリケーションはこれらのパラメーターを使用し、アウトバウンド リクエストをプロキシ経由で送信します。

これらの基本的なプロパティは Oracle で定義された規則に従います。

  • http.proxyHost
  • http.proxyPort (既定: 80)
  • http.nonProxyHosts (既定: <none>)
  • https.proxyHost
  • https.proxyPort

HTTP プロキシを構成する場合は http.proxyHost プロパティ、HTTPS プロキシの場合は https.proxyHost を定義する必要があります。 

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 プロパティは、プロキシ サーバーを経由しない、直接接続されるホストを示します。

値は、"|" で区切られたホストの一覧です。ワイルドカード "*" を照合に使用できます。例:

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

Java オプション "-Dhttp.nonProxyHosts" が動作しない」ナレッジベース記事にあるように、Linux ではパイプ文字 (|) をエスケープする必要がある可能性があります。



システム プロパティの設定の詳細については、「起動時にプロパティおよびオプションを設定する」ドキュメントをご参照ください。

認証の設定

プロキシで認証が必要な場合、次のプロパティを Java に渡すことで構成します。詳細については「起動時にプロパティおよびオプションを設定する」ドキュメントをご参照ください。

  • http.proxyUser
  • http.proxyPassword
  • https.proxyUser
  • https.proxyPassword

例:

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

Crowd を使用する場合の特別な考慮事項

たとえば、Bamboo をアウトバウンド プロキシで使用していて、ユーザー リポジトリとして Crowd を使用したい場合、Bamboo が Crowd とやり取りできるように次の変更を行う必要があります。

ファイル <bamboo-home-directory>/xml-data/configuration/crowd.properties を編集し、次の構成を追加します。

http.proxy.port=<http-proxy-port>
https.proxy.port=<https-proxy-port>
http.proxy.host=<http-proxy-host>
https.proxy.host=<https-proxy-host>
tip/resting Created with Sketch.

上述の例は、Bamboo でアウトバウンド プロキシを使用しているときに Crowd をユーザー リポジトリとして使用するコンテキストのためのものです。ただし、アウトバウンド プロキシを使用しているときに Crowd との接続を確立したい場合、他のアトラシアン アプリケーションでもこれらの構成を参照できます。



注: これらの変更を行ったあとは Bamboo を再起動する必要があります。

アプリケーション リンクの考慮事項

http.nonProxyHosts プロパティが構成されていない場合、すべての web リクエストがプロキシを経由します。これはアプリケーション リンクを破損させる可能性があります。たとえば、アプリケーション リンクを使用して Confluence と Jira アプリケーションを接続している場合、このプロパティを使用してプロキシをバイパスし、内部ネットワークで通信するようにすることをおすすめします。リンクの IP 検証を考慮した場合、プロキシ経由での転送では、トラフィックの転送形式によってはサーバーのソース IP が変更されてしまい、予期せぬ結果となる可能性があります。

tip/resting Created with Sketch.

たとえば Jira と Confluence との間の接続の場合、Confluence 側で構成される http.nonProxyHosts では少なくとも localhostJira のベース URL を除外する必要があります。これを行わない場合、特定の機能が意図したように動作しない可能性があります (Jira が自身に接続しようとし、HTTP リクエストがタイムアウトするかプロキシによってブロックされる)。


例:

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

または

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

同様に、反対側から Jira を構成できます。 

例:

-Dhttp.nonProxyHosts=localhost|confluence.mycompany.com

または

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

Microsoft ISA NTLM 認証

NTLM はアトラシアン アプリケーションのサポート対象外です。次のような公開されている課題をご確認ください。

  • Unable to locate JIRA server for this macro.It may be due to Application Link configuration.
  • STASH-7694 - Getting issue details... STATUS
  • JRA-2398 - Getting issue details... STATUS

回避策

In past issues, customers reported success by using a software called Ctnlm. You can refer to the comments on our pages JRA-2398 - Support NTLM authentication and Problems Connecting to the Atlassian Marketplace.

大まかな手順は次のようになります。

  • アトラシアン アプリケーションが実行されているサーバーのローカルに Cntlm Authentication Proxy をインストールします
  • 構成およびテストを行って "Cntlm" が企業の NTLM で動作することを確認したら、次のパラメーターを使用します

    cntlm.ini でユーザー、ドメイン、およびプロキシ情報を更新し、次のコマンドでプロキシをテストします (Cntlm のインストール フォルダで実行します)。

          cntlm -c cntlm.ini -I -M http://google.ro
    
        

    パスワードが確認され、必要な認証情報が表示されるはずです。これは cntlm.ini に保存する必要があります。

    cntlm.ini の例

          Username            user
    Domain              domain
    
    # provide actual value if autodetection fails
    # Workstation         pc-name
    
    Proxy               my_proxy_server.com:80
    NoProxy             127.0.0.*, 192.168.*
    
    Listen              127.0.0.1:54321
    Listen              192.168.1.42:8080
    Gateway             no
    
    SOCKS5Proxy         5000
    # provide socks auth info if you want it
    # SOCKS5User          socks-user:socks-password
    
    # printed authentication info from the previous step
    Auth            NTLMv2
    PassNTLMv2      98D6986BCFA9886E41698C1686B58A09
    
        

    注: Linux の場合、構成ファイルは cntlm.conf です



  • HTTP プロキシ パラメーターに記載した構成が NTLM ではなく "Cntlm" プロキシを示すようにし、"Cntlm" が NTLM とのやり取りを行います。


説明

This page defines how to configure Atlassian applications such that they can communicate externally through an outbound proxy. This configuration is required to access servers outside the network it's hosted in, such as the Atlassian Marketplace.


製品 Jira、Confluence、Bamboo、Bitbucket
最終更新日 2018 年 11 月 2 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.