Bonjour à tous dans ce tutoriel, je vais vous montrer comment installer le Policy Server de Siteminder sous CentOS6.
Warning!
ATTENTION: CentOS 6 n’est pas supporté par CA, l’installation du Policy Server sur cette distribution Linux est a vos riques et périls !Pour ma part j’ai installé le Policy server sous CentOS afin d’avoir un LAB de test (n’ayant pas de Red Hat sous la main ou de Solaris).
Notice
Pour ce tuto j’utilise CentOS 6 dans sa version 32 bitsL’installation du policy server de Siteminder vas se faire en plusieurs étapes:
- Préparation du serveur
- Installation du Policy Server
- Installation et configuration de LDAP
- Configuration du Policy Store
- Installation de l’Admin UI
- Finalisation.
Préparation du serveur
Sur une CentOS 6 32 bits (Oui 32 pas 64) fraîchement installée nous allons réaliser les étapes suivantes afin de préparer le serveur.
Désactivation de SELinux
Éditez le fichier /etc/selinux/config
Et mettez la valeur SELINUX a disabled comme ceci:
SELINUX=disabled
Désactivation du Firewall
Le firewall de CentOS est par défaut configuré afin de bloquer les connexions entrantes, nous allons aussi le désactiver.
/etc/init.d/iptables stop schkconfig iptables off
On redémarre le serveur
reboot
On augmente l’entropy (sinon l’Amin UI sera ultra lente)
mv /dev/random /dev/random.org ln -s /dev/urandom /dev/random
Installation des dépendances
yum update -y yum -y install libstdc++ libidn libXext libXrender libXtst libidn ncurses ncurses-libs ncurses-base ksh
On créer un utilisateur smuser
useradd -d /opt/CA smuser
On désactive pour smuser la variable d’environnement LANG
su - smuser unset LANG exit
On installe JAVA JRE
Allez sur le site de JAVA https://www.java.com/en/download/linux_manual.jsp
Et téléchargez la version 32 bits de JAVA (Pas le RPM)
Envoyez le fichier tar.gz sur votre serveur et tapez les commandes suivantes (Adaptez selon la version de JAVA que vous avez)
mkdir /usr/java mv jre-8u45-linux-i586.tar.gz /usr/java/ cd /usr/java/ tar zxvf jre-8u45-linux-i586.tar.gz rm jre-8u45-linux-i586.tar.gz
Installation du Policy Server
Allez sur le site du support de CA et télécharger la dernière version du Policy Server, dans mon cas j’ai télécharger: CA SiteMinder Policy Server r12.52 SP1-for Linux-ESD Only.
De-zippez le zip que vous avez récupérer et envoyez tous les fichier de cette archive sur votre serveur (ex: dans /root/policyserver)
Sur votre serveur lancez l’installation comme ceci:
cd /root/policyserver chmod +x ca-ps-12.52-sp01-linux.bin ./ca-ps-12.52-sp01-linux.bin
L’installation se lance, acceptez la licence.
Le premier champs à remplir, sera la dossier d’installation de Java, dans notre cas: /usr/java/jre1.8.0_45
Ce qui donnera:
============================================================================== Select Java Folder Location --------------------------- Select the folder where 32-bit JRE 1.6.0.32 or higher is installed. JRE Folder (DEFAULT: ): /usr/java/jre1.8.0_45
La second champs a remplir sera le dossier d’installer, nous allons mettre: /opt/CA
Ce qui donne:
=============================================================================== Choose Install Folder --------------------- Please choose the siteminder install folder. Where would you like to install? Default Install Folder: /root/CA ENTER AN ABSOLUTE PATH, OR PRESS <ENTER> TO ACCEPT THE DEFAULT : /opt/CA
Mettez les valeurs par defauts aux autres questions, puis a la questions « Choose Features » tapez 5 « None of the above »
=============================================================================== Choose Features --------------- Choose which features you would like to configure. 1- OneView Monitor GUI 2- Web Server(s) 3- SNMP 4- Policy Store 5- None of the above ENTER A COMMA-SEPARATED LIST OF NUMBERS REPRESENTING THE DESIRED CHOICES, OR PRESS <ENTER> TO ACCEPT THE DEFAULT: 5
Laissez le reste par défaut et terminez l’installation.
Maintenant que le Policy server est installé, nous allons devoir configurer un Policy Store.
Pour cela nous allons installer un serveur LDAP pour stocker les Policy.
Installation et configuration de LDAP
On installe OpenLDAP avec yum
yum install openldap openldap-servers openldap-clients -y
Officiellement OpenLDAP n’utilise plus le fichier slapd.conf, mais étant donnée que la documentation de CA nous demande de l’utiliser nous allons l’utiliser.
cp /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf
Nous allons maintenant générer le mot de passe de l’admin de notre annuaire LDAP
slappasswd New password: Re-enter new password: {SSHA}qnhcUzqvAHuvAyfNEXV3LuquNyvRj3kT
Copiez le hash du mot de passe avec {SSHA}.
Il faut maintenant copier les schéma LDAP du Policy Store dans LDAP pour ce faire, tapez les commandes suivantes:
cp /opt/CA/siteminder/db/tier2/OpenLDAP/* /etc/openldap/schema/ cp /opt/CA/siteminder/xps/db/Tier2DirSupport/OpenLDAP/* /etc/openldap/schema/
Éditez maintenant le fichier /etc/openldap/slapd.conf
Dans la liste des includes au debut du fichier, rajoutez les quatres lignes suivantes:
include /etc/openldap/schema/openldap_attribute.schema include /etc/openldap/schema/openldap_object.schema include /etc/openldap/schema/openldap_attribute_XPS.schema include /etc/openldap/schema/openldap_object_XPS.schema
Puis localisez les deux lignes suivantes et de-commentez les:
access to dn.base="" by * read access to dn.base="cn=Subschema" by * read
Localisez ces trois lignes et commentez les
#TLSCACertificatePath /etc/openldap/certs #TLSCertificateFile "\"OpenLDAP Server\"" #TLSCertificateKeyFile /etc/openldap/certs/password
Localisez la ligne
by dn.exact="cn=Manager,dc=my-domain,dc=com" read
Et éditez la de façon a refléter votre domaine
by dn.exact="cn=Manager,dc=smdomain,dc=local" read
Puis en dessous remplissez les champs comme ceci:
database bdb suffix "dc=smdomain,dc=local" checkpoint 1024 15 rootdn "cn=Manager,dc=smdomain,dc=local" # Cleartext passwords, especially for the rootdn, should # be avoided. See slappasswd(8) and slapd.conf(5) for details. # Use of strong authentication encouraged. rootpw {SSHA}qnhcUzqvAHuvAyfNEXV3LuquNyvRj3kT
A la fin du fichier sous rajoutez la ligne suivante:
sizelimit 500
Enregistrez le fichier
Et tapez les commandes suivantes:
rm -rf /var/lib/ldap/* rm -rf /etc/openldap/slapd.d/* cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG chown -Rf ldap. /etc/openldap/slapd.d/ chown -Rf ldap. /var/lib/ldap/ chmod 700 /var/lib/ldap/ chmod 700 /etc/openldap/slapd.d/ service slapd restart slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d chkconfig slapd on
Maintenant, créez un fichier .ldif avec ce contenu:
dn: dc=smdomain,dc=local objectclass: dcObject objectclass: organization o: Domain SMODOMAIN dc: smdomain dn: cn=Manager,dc=smdomain,dc=local objectclass: organizationalRole cn: Manager dn: ou=Netegrity,dc=smdomain,dc=local ou: Netegrity objectClass: organizationalUnit objectClass: top dn: ou=SiteMinder,ou=Netegrity,dc=smdomain,dc=local ou: SiteMinder objectClass: organizationalUnit objectClass: top dn: ou=PolicySvr4,ou=SiteMinder,ou=Netegrity,dc=smdomain,dc=local ou: PolicySvr4 objectClass: organizationalUnit objectClass: top dn: ou=XPS,ou=policysvr4,ou=siteminder,ou=netegrity,dc=smdomain,dc=local ou: XPS objectClass: organizationalUnit objectClass: top
Enregistrez le fichier avec l’extension LDIF, pour ma part je l’ai appelé base.ldif
Maintenant tapez la commande suivante:
ldapadd -x -D "cn=Manager,dc=smdomain,dc=local" -W -f base.ldif Enter LDAP Password: #Password créer avec slappasswd adding new entry "dc=smdomain,dc=local" adding new entry "cn=Manager,dc=smdomain,dc=local" adding new entry "ou=Netegrity,dc=smdomain,dc=local" adding new entry "ou=SiteMinder,ou=Netegrity,dc=smdomain,dc=local" adding new entry "ou=PolicySvr4,ou=SiteMinder,ou=Netegrity,dc=smdomain,dc=local" adding new entry "ou=XPS,ou=policysvr4,ou=siteminder,ou=netegrity,dc=smdomain,dc=local"
Maintenant nous allons changer l’ownership du dossier /opt/CA/siteminder à smuser avec la commande;
chown -R smuser. /opt/CA/siteminder
Configuration du Policy Store
Afin d’utiliser notre serveur LDAP comme Policy Store, il faut le configurer dans Siteminder, pour ce faire il faut rediriger via SSH la console de Siteminder (smconsole).
Par chance MobaXterm contient un serveur X pour pouvoir faire cela :)
Donc connectez vous en SSH a votre serveur avec MobaXterm et tapez les commandes suivantes:
su - smuser cd siteminder/ . ./ca_ps_env.ksh export DISPLAY=192.168.2.70:0.0 #(ou 192.168.2.70 est l'adresse IP depuis laquelle vous vous connectez [smuser@policy-server siteminder]$ smconsole
Une fenêtre s’ouvre allez dans l’onglet Data et remplissez les champs comme sur l’image ci dessous et après cliquez sur Test LDAP Connection.
Cliquez sur Apply et matchez aussi le key store sur le LDAP et cliquez sur apply puis sur OK.
Une fois cela fait nous créer le mot de passe pour l’administrateur du Policy Server (user sitemider).
Tout d’abord il faut copier fichier smreg présent dans le dossier du programme d’installation du Policy server dans le dossier d’installation avec la commande suivante:
cp /root/policyserver/smreg /opt/CA/siteminder/bin/ chown smuser. /opt/CA/siteminder/bin/smreg su - smuser . ./siteminder/ca_ps_env.ksh smreg -su siteminder #siteminder est le mot de passe
Maintenant nous allons importer les Data defnitions dans le policy store.
Pour cela taper les commandes suivantes:
su - smuser . ./siteminder/ca_ps_env.ksh XPSDDInstall siteminder/xps/dd/SmMaster.xdd XPSImport siteminder/db/smpolicy.xml -npass XPSImport siteminder/db/ampolicy.xml -npass XPSImport siteminder/db/fedpolicy-12.5.xml -npass
On finalise l’installation du Policy Server en lançant l’outils de configuration:
su - smuser . ./siteminder/ca_ps_env.ksh ./siteminder/ca-ps-config.sh Preparing to install... Extracting the JRE from the installer archive... Unpacking the JRE... Extracting the installation resources from the installer archive... Configuring the installer for this system's environment... Launching installer... Graphical installers are not supported by the VM. The console mode will be used instead... =============================================================================== CA SiteMinder Policy Server (created with InstallAnywhere) ------------------------------------------------------------------------------- Preparing CONSOLE Mode Installation... =============================================================================== Choose Features --------------- Choose which features you would like to configure. 1- OneView Monitor GUI 2- Web Server(s) 3- SNMP 4- Policy Store 5- None of the above ENTER A COMMA-SEPARATED LIST OF NUMBERS REPRESENTING THE DESIRED CHOICES, OR PRESS <ENTER> TO ACCEPT THE DEFAULT: 5 =============================================================================== Configure Advanced Authentication Server ---------------------------------------- Add the Master Key for Advanced Authentication Server to be used for encryption. This key should only contain Latin word characters [a-zA-Z0-9_]. Add the Master Key: =============================================================================== Validating Master Key... ------------------------ Master Key length must be minimum of 6 characters and maximum of 24 characters long. Please re-enter the Master Key. PRESS <ENTER> TO ACCEPT THE FOLLOWING (Back): =============================================================================== Configure Advanced Authentication Server ---------------------------------------- Add the Master Key for Advanced Authentication Server to be used for encryption. This key should only contain Latin word characters [a-zA-Z0-9_]. Add the Master Key: =============================================================================== Re-enter Master Key ------------------- Re-Enter the Master Key for Advanced Authentication Server to be used for encryption. Re-enter the Master Key: =============================================================================== Policy Store ------------ Enter the password for the CA SiteMinder super user account. Make sure to enter the same password that was used when configuring the policy store. The password is required to complete the configuration of the Advanced Authentication server.: =============================================================================== Policy Store ------------ Re-Enter the password for the SiteMinder Super User account: =============================================================================== Choose Password Services ------------------------ Choose Password Services 1- Advanced Password Services ->2- Basic Password Services ENTER THE NUMBER FOR YOUR CHOICE, OR PRESS <ENTER> TO ACCEPT THE DEFAULT:: =============================================================================== Pre-Configuration Summary: -------------------------- Host name: policy-server IP address: 192.168.2.71 SiteMinder folder: /opt/CA/siteminder JRE location: /usr/java/jre1.8.0_45 FIPS Value: COMPAT Password Services Selected: Basic Password Services PRESS <ENTER> TO CONTINUE: =============================================================================== Installing... ------------- [==================|==================|==================|==================] [------------------|------------------|------------------|------------------] =============================================================================== Installation Complete --------------------- Congratulations. CA SiteMinder Policy Server Configuration Wizard has been successfully installed to: /opt/CA/siteminder PRESS <ENTER> TO EXIT THE INSTALLER:
Installation de l’Admin UI
Pour cela il faut télécharger deux archives depuis le site de CA:
- CA SiteMinder r12.52 SP1-Administrative UI Prerequisite Installer for Linux- ESD Only
- CA SiteMinder Administrative UI r12.52 SP1-for Linux-ESD Only
Une fois ses deux archives télécharger. envoyez les sur le serveur dans le dossier /root/adminui.
Warning!
ATTENTION: Assurez vous bien que le contenu des deux archives soient bien dans le même dossier, vous devriez avoir ceci:
ls /root/adminui/ adminui-pre-req-12.52-sp01-linux.bin ca-adminui-12.52-sp01-linux.bin layout.properties
Commencez par lancer adminui-pre-req-12.52-sp01-linux.bin
cd /root/adminui/ ./adminui-pre-req-12.52-sp01-linux.bin
Acceptez la licence et remplissez les champs suivants:
=============================================================================== Supply Installation Parameters ------------------------------ Please supply the installation folder, fully qualified host name and port number to be used for installing the Administrative UI Server. For example: servername.domain Where would you like to install? (DEFAULT: /root/CA): /opt/CA Server Name: (DEFAULT: 192.168.2.71): JBoss Port: (DEFAULT: 8080):
Validez le sommaire et lancez l’installation, une fois celle-ci terminée lancer l’installation de l’Admin UI avec la commande:
./ca-adminui-12.52-sp01-linux.bin
Nous n’avez rie a faire part d’acceptez la licence, tous les champs sont déjà pré-remplis.
La dernière étape consiste à enregistrer notre l’AdminUI pour le Policy server
su - smuser . ./siteminder/ca_ps_env.ksh XPSRegClient siteminder -adminui-setup -t 1440 -r 5 -vT ....... [XPSRegClient - XPS Version 12.52.0100.499] Log output: /opt/CA/siteminder/log/XPSRegClient.2015-05-10_030519.log Password: #password configuré avec smreg Confirm password: Initializing system, please wait... (INFO) : [sm-xpsxps-00120] Initializing XPS Version 12.52.0100.499 (INFO) : [sm-xpsxps-01160] LDAP Provider Info String = OpenLDAP (INFO) : [sm-xpsxps-01120] LDAP Provider Version: supportedLDAPVersion = 3 (INFO) : [sm-xpsxps-01160] LDAP Provider Info String = OpenLDAP (INFO) : [sm-xpsxps-00560] Database Transactions are 0. (INFO) : [sm-xpsxps-00300] 1 Parameter(s) loaded from Policy Store, 1 total. (INFO) : [sm-xpsxps-00330] Caching Policy Data... (INFO) : [sm-xpsxps-00310] 3609 object(s) loaded from the Policy Store. (INFO) : [sm-xpsxps-00430] Policy Store ID is "000cc9c8-f935-154e-b935-0247c0a8907d". (INFO) : [sm-xpsxps-06870] XPS Auditing is enabled. (INFO) : [sm-xpsxps-03460] No validation warnings will be logged (controlled by CA.XPS::$LogValidationWarnings). (INFO) : [sm-xpsxps-00150] XPS Initialized. (286, 0, 0) (INFO) : [sm-xpsxps-00150] XPS Initialized. (INFO) : [sm-xobfed-02577] Successfully loaded smobjadapter. Validating client name, please wait... Preparing registration information, please wait... Processing complete. Thank you for waiting. (INFO) : [sm-xpsxps-00160] Shutting down XPS... (INFO) : [sm-xpsxps-00170] Shutting down XPS housekeeping... (INFO) : [sm-xpsxps-00160] Shutting down XPS... (INFO) : [sm-xpsxps-00210] Releasing SiteMinder object store connection to XPS... (INFO) : [sm-xpsxps-00180] Releasing XPS configuration cache... (INFO) : [sm-xpsxps-00240] XPS Shutdown Complete.
Maintenant il ne nous reste plus qu’a fixer les permissions de l’utilisateur smsuer et de lancer l’admin UI
chown -R smuser. /opt/CA/siteminder su - smuser . ./siteminder/ca_ps_env.ksh ./ ####Patientez...juqu'a cette ligne 03:13:35,586 INFO [ServerImpl] JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221053)] Started in 1m:6s:200ms
Vous pouvez maintenant accéder à l’administrative UI de votre serveur a cette adresse:
http://fqdn:8080/iam/siteminder/adminui
Loggez vous avec siteminder/siteminder
Finalisation
Scripts de démarrage
Voici en prime un script de démarrage a mettre dans /etc/init.d/
#!/bin/bash # # /etc/rc.d/init.d/siteminder # # Source function library. . /etc/init.d/functions start() { echo -n "Starting Policy Server: " su - smuser -c /opt/CA/siteminder/smpolsrv -start sleep 15 echo -n "Starting Admin UI:" su - smuser -c /opt/CA/siteminder/adminui/bin/run.sh >/tmp/adminui.log 2>&1 & } stop() { echo -n "Shutting down Policy Server and Admin UI: " su - smuser -c /opt/CA/siteminder/smpolsrv -stop su - smuser -c /opt/CA/siteminder/adminui/bin/shutdown.sh &</pre> <pre> } status() { su - smuser -c "/opt/CA/siteminder/smpolsrv -status" } case "$1" in start) start ;; stop) stop ;; status) status ;; restart) stop start ;; *) echo "Usage: <servicename> {start|stop|status}" exit 1 ;; esac exit $?
Et voila, vous avez maintenant un Policy Server prêt a l`emploi !
2 Commentaires
Thanks man for the great tutorial. it’s just perfect you made my day
Bonjour Ahmed,
Je trouves pas ces binaires meme avec un login sur le site support.ca.com,
peux tu m’aider stp ?