Hi,
I have been reverse proxying otrs since version 3 behind an apache proxy.
We are currently on otrs 5, but i expect similar configurations will still
work on 6. And this is for Apache, not nginx, but I am including in case
it is helpful.
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite DEFAULT:!EXP:!SSLv2:!DES:!IDEA:!SEED:+3DES
SSLCertificateFile /etc/pki/tls/certs/companyname.crt
SSLCertificateKeyFile /etc/pki/tls/private/companyname.key
ServerName tickets.companyname.com
ProxyPreserveHost On
RedirectMatch ^/$ https://tickets.companyname.com/otrs/index.pl
ProxyPass /otrs-web/ http://1.1.1.1/otrs-web/
ProxyPassReverse /otrs-web/ http://1.1.1.1/otrs-web/
ProxyPass /otrs/ http://1.1.1.1/otrs/
ProxyPassReverse /otrs/ http://1.1.1.1/otrs/
</VirtualHost>
1.1.1.1 would be the lan IP of your otrs server, and tickets.companyname.com
would be the public domain name.
In my experience you run into issues if you try to completely get rid of
the /otrs/ part of the path, as you need a way to differentiate between
/otrs-web/ and /otrs/
but you can rename it with your proxy. Here is a configuration we are
using to serve up the public interface of OTRS (specifically the survey
module)
ServerName support.companyname.com
ProxyPreserveHost On
RewriteEngine On
RewriteRule ^/survey/([A-Fa-f0-9]+)/?$
/public/?Action=PublicSurvey;PublicSurveyKey=$1 [P,L]
ProxyPass /otrs-web/ http://1.1.1.1/otrs-web/
ProxyPassReverse /otrs-web/ http://1.1.1.1/otrs-web/
ProxyPass /public/ http://1.1.1.1/otrs/public.pl
ProxyPassReverse /public/ http://1.1.1.1/otrs/public.pl
SetOutputFilter INFLATE;SUBSTITUTE;DEFLATE
Substitute "s| action=\"/otrs/public.pl\"| action=\"#\"|i"
Substitute "s| Baselink: \"/otrs/public.pl\?\"| Baselink:
\"/public/?\"|i"
Substitute "s| CGIHandle: \"/otrs/public.pl\"| CGIHandle:
\"/public/\"|i"
</VirtualHost>
This configuration replaces the /otrs/public.pl path with a new /public/
path, effectively hiding the fact that we are running OTRS.
Regards,
David Hess
On Thu, Aug 30, 2018 at 12:26 PM wrote:
All;
I'm going to be setting up a new OTRS 6 instance with the customer portal
facing the Internet. For security purposes I will be reverse proxying the
customer portal, over HTTPS, using nginx.
The default installation of OTRS has the customer portal at
<hostname>/otrs/customer.pl, since I will be reverse proxying anyway, I'd
like this to appear at <hostname>/.
Are there any special directives I should include in the nginx reverse
proxy configuration to smooth this setup? Has anyone done this before, and
would be willing to give me some pointers?
Thank you,
Dominic Hilsbos
Director - Information Technology
Perform Air International Inc.
DHilsbos@PerformAir.com
300 S. Hamilton Pl.
Gilbert, AZ 85233
Phone: (480) 610-3500
Fax: (480) 610-3501
www.PerformAir.com
---------------------------------------------------------------------
OTRS mailing list: otrs - Webpage: http://otrs.org/
Archive: http://lists.otrs.org/pipermail/otrs
To unsubscribe: http://lists.otrs.org/mailman/listinfo/otrs