echo "deb http://deb.debian.org/debian buster-backports main contrib non-free" >> /etc/apt/sources.list |
#apt update |
#apt upgrade |
#apt install tomcat9 tomcat9-admin tomcat9-user openjdk-11-jdk openjdk-11-jre maven build-essential git |
#echo "JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/" >> /etc/environment |
#source /etc/environment |
echo $JAVA_HOME |
Aller dans /etc/default
Ouvrir le fichier tomcat9
Rajouter la ligne suivante :
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 |
Vérifier de nouveau si vous avez Java 11
update-alternatives --display java |
Aller dans /etc/tomcat9
Ouvrir le fichier tomcat-users.xml
Tout en bas du fichier mettre
<role rolename="admin-gui"/> <user username="admin" password="toor" roles="manager-gui,admin-gui"/> |
systemctl restart tomcat9 |
Mettre TOMCAT9 en HTTPS.
Vérifier que le port 80 et 443 sort bien vers l'extérieur.
Maintenant nous allons utiliser Let's Encrypt
Pour installer cerbot via les paquet
apt install python-certbot-apache |
Utiliser la commande suivante pour avoir le domaine en https :
certbot --apache -d cas.domaine-univ.fr |
il vous demande de mettre votre adresse mail.
Suivre les indications.
Récupérer le chemin ou se trouve les fichier pem qui vous donne let's encrypte
Il vous donne le chemin ou se trouve les fichier pem.
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/cas.domaine-univ.fr
/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/cas.domaine-univ.fr
/privkey.pem
Créer le dossier pour les fichier SSL
J'ai créé un dossier dans /opt/tomcat/conf
Mkdir /opt/tomcat/conf |
Mkdir /opt/tomcat |
Mkdir /opt/tomcat/conf |
J'ai copié les trois fichiers dans /opt/tomcat/conf :
cp cert.pem chain.pem privkey.pem /opt/tomcat/conf |
J'ai mi les droits pour les fichier *.pem :
chown tomcat:tomcat *.pem |
Ajout des ligne SSL sur le serveur Tomcat9
Je suis allé dans /etc/tomcat9/server.xml
J'ai ajouté les lignes suivantes :
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateFile="/opt/tomcat/conf/cert.pem"
certificateKeyFile="/opt/tomcat/conf/privkey.pem"
certificateChainFile="/opt/tomcat/conf/chain.pem" />
</SSLHostConfig>
</Connector>
J'ai redémarré tomcat
Nous commençons par installer le projet nécessaire à l'utilisation de cas-overlay-Template
Récupérer le projet
Aller dans le dossier /opt
|
Ouvrir le dossier cas-overlay-template
|
Ouvrir le fichier build.gradle
Ajouter les 3 lignes en gras ci-dessous :
dependencies { // Add modules in format compatible with overlay casModules property if (project.hasProperty("casModules")) { def dependencies = project.getProperty("casModules").split(",") dependencies.each { def projectsToAdd = rootProject.subprojects.findAll {project -> project.name == "cas-server-core-${it}" || project.name == "cas-server-support-${it}" } projectsToAdd.each {implementation it} } } // CAS dependencies/modules may be listed here statically... implementation "org.apereo.cas:cas-server-webapp-init:${casServerVersion}" implentation "org.apereo.cas:cas-server-support-ldap:${project.'cas.version'}" implentation "org.apereo.cas:cas-server-support-json-service-registry:${casServerVersion}" } |
Enregistrer le fichier
|
ATTENTION ENLEVER LE # POUR ÊTRE EN VERSION PRODUCTION
# cas.authn.accept.users=
|
Activation en LDAPS
Par contre si vous voulez metre le LDAP en LDAPS
Il vous faudra activer userSsl=true
cas.authn.ldap\[0\].useSsl=false |
|
Si vous avez ce message-là :
Trying 192.168.0.54...
Connected to domaine-univ.fr.
Escape character is '^]'.
C'est ok.
|
Si vous avez ce message-là :
Trying 192.168.0.54...
Connected to domaine-univ.fr.
Escape character is '^]'.
C'est ok.
Créer un dossier dans /var/log/cas
|
Copier ou créer les fichiers cas.log et cas_audit.log dans le dossier
Pour mettre les droits sur le dossier faire la commande suivante :
|
Modifier le fichier log4j2.xml
dans le dossier cas-overlay-template-master/etc/cas/config
Mettre à la place de
|
|
Enregistrer le fichier
|
#.
|
|
Il faut récupérer le fichier
Copier le fichier cas.war
|
Relancer le service de Tomcat9
|
Maintenant nous allons tester la connexion
Pour ici l'adresse ip est : https://cas.domaine-univ.fr
:8443/cas
Cliquer sur « se connecter »
Quand vous êtes connectés, vous devez avoir ce message-là : Connexion réussie
En cliquant sur
Nous pouvons voir les attributs de l'active Directory.
Nous avons le choix pour configurer les applications soit avec :
Pour démarrer nous allons utiliser le Json.
Vérifier que dans le fichier build.gradle nous avons bien :
|
Une fois vérifier nous pouvons commencer.
Ouvrir le fichier cas. properties
|
|
Ajouter la ligne ci-dessous :
Configuration de JSON
|
Une fois que la ligne a été ajouté nous devons créer un dossier.
Nous utilisons la commande mkdir pour créer le dossier
|
Nous allons créer pour chaque applications un fichier en « .json »
Il est recommandé de nommer les nouveaux fichiers JSON comme suit:
|
Pour créer l'ID nous utilisons la commande suivant :
|
Voici ce qui donne
|
Ce numéro est notre ID.
Donc le fichier sera « application-1559915619.json »
Le fichier doit être dans /etc/cas/services/
« Application » est le nom de votre application dans cette exemple
|
Ouvrir le fichier que nous venons de créer
|
Attention l'exemple ci-dessous à éviter à l'utilisation
|
Voici pour l'application Rocketchat
Ouvrir le fichier http_rocketchat-1559902436.json
|
|
Aller dans RocketChat mettre les informations du serveur cas.
URL de base pour SSO : https://cas.domaine-univ.fr
:8443/cas
URL de login SSO : https://cas.domaine-univ.fr
:8443/cas/login
Vous devez mettre vos attributs
Ouvrir la page de RocketChat pour ici c'est 192.168.0.113:3000
Cliquer sur AUTHENTIFICATION CAS
La page s'ouvre et nous voyons que RocketChat est bien dans CAS
Mettre son identifiant et son mot de passe du serveur AD