IdP4:学校反向代理对接IdP步骤

        如果学校已经配置了反向代理服务器,可将IdP配置通过该反向代理访问,具体配置方法如下。

1.反向代理配置

        反向代理服务器上,增加 X-Forwarded-For  X-Forwarded-Proto 两个 header 信息,传递真实的请求 IP 和真实的请求协议。

        请将xxx.xxx.xxx.xxx替换成实际idp的服务器地址。

      location /{
        proxy_pass      http://xxx.xxx.xxx.xxx:8080/;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
      }

2. 开放服务器的 8080 端口,以便于反向代理服务器访问 jetty

[carsi@www ~]$ sudo firewall-cmd -add-port=8080/tcp --permanent
[carsi@www ~]$ sudo firewall-cmd --reload

为了安全考虑,也可以只对代理服务器开放8080端口,请将xxx.xxx.xxx.xxx替换成代理服务器ip地址,如果有ipv6地址,请也针对防火墙放开

#针对ipv4地址
[carsi@www ~]$ sudo firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="xxx.xxx.xxx.xxx" port protocol="tcp" port="8080" accept"
#针对ipv6地址
[carsi@www ~]$ sudo firewall-cmd --permanent --add-rich-rule="rule family="ipv6" source address="xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx" port protocol="tcp" port="8080" accept"
[carsi@www ~]$ sudo firewall-cmd --reload

3. 关闭防火墙上相应的80和443端口

[carsi@www ~]$ sudo firewall-cmd -remove-service=https --permanent
[carsi@www ~]$ sudo firewall-cmd -remove-service=http --permanent
[carsi@www ~]$ sudo firewall-cmd --reload

如果撤掉反向代理的话,只需要再将80和443端口开启,即可使用本机的nginx提供服务

[carsi@www ~]$ sudo firewall-cmd -add-service=https --permanent
[carsi@www ~]$ sudo firewall-cmd -add-service=http --permanent
[carsi@www ~]$ sudo firewall-cmd --reload

注意:使用反向代理后,https证书在反向代理上配置即可,IdP上不用再配置


版权所有©北京大学计算中心