Hipchat Video setup fails on servers behind a proxy
プラットフォームについて: サーバーと Data Center のみ。この記事は、サーバーおよび Data Center プラットフォームのアトラシアン製品にのみ適用されます。
This is for an outdated version of Hipchat Server
This article applies to a version of Hipchat Server which will be deprecated soon. After that period the version will no longer be supported.
You should upgrade to a more recent version of Hipchat Server as soon as you can to take advantage of new features, and security and bug fixes.
問題
- An institution requires the use of a proxy for ALL outbound https communication, and when attempting to enable Video support on the latest versions of Hipchat Server there is no way to configure use of a proxy.
- Attempts to enable Hipchat Video on the server via the admin UI fails.
Attempts to enable HIpChat Video on the command line using this command also fails:
hipchat video --enable
環境
- Hipchat Servers using the new Hipchat Video service between versions 2.0.5 and 2.2.2
- A proxy server sits in between the Hipchat Server and the internet.
Root Cause
- Because the server requires a proxy for external access, the server cannot reach https://video.hipchatserver.com to set up the required session keys for video to work.
- The Hipchat commands do not honor any system proxy settings if any are configured on the server.
回避策
The below steps are not officially supported and only apply to server versions 2.0.5 to 2.2.2. The below steps have worked in limited testing in environments that use proxy servers to reach the outside world. Please make a snapshot of your server's virtual machine before proceeding with the below steps.
For Server versions 2.2.3 and up, please use the Hipchat Labs commands to enable the outbound proxy.
For Hipchat Data Center, please follow the instructions on how to configure a forward proxy.
Log in to the server's command line and gain root:
sudo dont-blame-hipchat
Make a backup copy of the _video.py file by running:
cp /opt/atlassian/hipchat/sbin/_video.py /home/admin/_video.py.bak
Open /opt/atlassian/hipchat/sbin/_video.py in a text editor of your choice.
Add the following 3 lines into the script between the VIDEO_KEY_ISSUER and def parse_cli() lines. Substitute values accordingly for your environment:
os.environ['HTTPS_PROXY'] = 'http://proxy.example.com:8080/' os.environ['HTTP_PROXY'] = 'http://proxy.example.com:8080/' os.environ['NO_PROXY'] = 'localhost,127.0.0.1,localaddress,.localdomain.com'
- ファイルを保存します。
Run this command to check if Hipchat Server can contact the keyserver:
hipchat video --checkkeyserver
If the command is successful, run this command to enable HIpChat Video on the server side:
For Hipchat Server 2.1.3 and up, run this command:hipchat video --enable
For Hipchat Server 2.0.5 - 2.0.7, run this:
hipchat video --provider jitsi
Verify that the keyserver has the key by running:
hipchat video --checkpublickey
To back out of the modificiations, please run the following command (as root) to put the original video.py file back:
cp /home/admin/_video.py.bak /opt/atlassian/hipchat/sbin/_video.py
Please note that the above workaround will help enable video on the server side only. The server only needs to communicate with video.hipchatserver.com once in order to establish a trust. Clients connecting to Hipchat Server and wishing to use Hipchat Video must also have the appropriate access configured per our Networking Requirements for Hipchat Video.