目前,因为IdP虚拟机或者服务器崩溃或者意外数据丢失等原因,陆续出现已经部署好的IdP服务中止运行的情况。重装idp费时费力,建议采用如下方法对IdP进行备份,以便出现意外时快速恢复。
1. 本校IdP metadata及证书文件备份(重要,必做)
IdP服务器的核心配置文件是metadata文件,及存放本校IdP通信证书等关键配置信息,必需备份并且妥善保存。如果IdP重装,会自动生产新的metadata文件,不仅需要将它重新上传至CARSI联盟,更麻烦的是需要人工联系所有已经对接好的服务提供商进行metadata信息更新,等于需要重新进行一次IdP部署和服务开通流程。
如果提前备份了metadata及证书文件,系统重装或者升级后,用备份文件替换新生成的文件,IdP服务可以快速恢复运行。
1.1 备份下面文件到磁带或其他设备
学校IdP metadata文件保存在/opt/shibboleth-idp/metadata目录下,文件名为:idp-metadata.xml
...
序号 | 名称 | 用途 |
---|---|---|
1 | dsmeta.pem | 更新carsi metadata用到的证书 |
2 | idp-backchannel.crt | metadata里面signing证书 |
3 | idp-backchannel.p12 | signing证书的另一种格式 |
4 | idp-encryption.crt | metadata里面encryption证书 |
5 | idp-encryption.key | metadata里面encryption证书key |
6 | idp-signing.crt | metadata里面signing证书 |
7 | idp-signing.key | metadata里面signing证书key |
8 | sealer.jks | idp自身使用用于加密cookies和其他数据 |
9 | sealer.kver | idp自身使用用于加密cookies和其他数据 |
10 | secrets.properties | IdPV4新增文件,用于存放cookie加密密码、ldap查询密码及salt值。 |
1.2 认证对接参数备份,备份下述文件到磁带或其它设备
Ldap对接方式,请备份/opt/shibboleth-idp/conf/ldap.properties文件
...
/opt/shibboleth-idp/conf/目录下metadata-providers.xml global.xml等配置文件
2.1 新系统恢复备份文件
出现意外情况,需要重新安装IdP时,根据本手册步骤安装IdP4.1.4,安装完成后,恢复以下备份的文件:
...
Code Block |
---|
[carsi@www ~]$ sudo systemctl restart jetty |
3 测试
访问ds.carsi.edu.cn,选择学校名称,检查IdP是否能够认证成功。具体参见IdP上线(第10/11步)的“线上环境验证”部分。
2. 服务器运行数据的备份
2.1 虚机的备份(适用于虚机部署的情况,建议)
使用vmware exsi虚拟化平台部署的IdP,建议定期对虚拟机进行备份,例如将虚拟机定期拷贝到另一台esxi主机或者独立的存储介质上。意外发生时,直接将备份的虚机恢复到exsi主机上启动即可恢复服务运行。
...
Code Block | ||
---|---|---|
| ||
#将shibboleth-idp.tar.gz文件上传至/opt路径下 [carsi@www ~]$ sudo cd /opt/ [carsi@www ~]$ sudo tar -xvf shibboleth-idp.tar #重建war文件并重启jetty [carsi@www ~]$ sudo /opt/shibboleth-idp/bin/build.sh [carsi@www ~]$ sudo systemctl restart jetty |
3.依托负载均衡提高服务可用性
另一种方案是部署两台一模一样的idp服务器,也可以部署好一台后直接镜像拷贝成另外一台。前面用F5或者nginx进行负载均衡。这样如果有一台发生意外的话,另一台还能继续工作,保证idp服务不间断。此种方式好处是可以动态的增加或者删减idp服务器。
...