Catégorie : CentOS

19 octobre 2016 /

Voici méthode qui consiste à démarrer non pas init comme premier processus, mais un shell.

Tout d’abord, au démarrage, quand le menu de grub apparaît (appuyez sur echap si il n’apparaît pas), sélectionnez la ligne de boot sur lequel le système démarre habituellement:

screenshot_centos7-0_starmate_2016-10-15_191840

On va maintenant modifier la ligne de démarrage du système en appuyant sur la touche « e« :

screenshot_centos7-0_starmate_2016-10-15_192623

Sur la ligne commençant par « linux16 /vmlinux….. », nous allons ajouter à la fin « init=/bin/sh » et supprimer « rhgb quiet » :

screenshot_centos7-0_starmate_2016-10-15_194047

On valide les paramètres et on boot en appuyant sur les touches « Ctrl-x » ou bien avec la touche F10.

On arrive très vite dans un shell simple sans mot de passe et avec les droits root:

screenshot_centos7-0_starmate_2016-10-15_193200

On va tout d’abord charger la politique SELinux existante avec cette commande (le -i correspond à « initial policy load ») :

/usr/sbin/load_policy -i

Ensuite, on va remonter « / » en lecture-écriture car il est monté en lecture seule :

mount -o remount,rw /

On peut maintenant passer à la modification du mot de passe root :

passwd root

On ré-étiquette le système (SELinux) pour le prochain redémarrage :

touch /.autorelabel

Il ne reste plus qu’a redémarrer votre CentOS7/RedHat7 pour avoir vous connecter avec le nouveau mot de passe:

exec /sbin/init

4 avril 2016 /

Pensez à déclarer le serveur dés le début dans l’AD pour éviter de patienter durant la réplication!

Avec pour domaine starmate.fr, en contrôleur primaire DC001 (192.168.2.10) et en contrôleur secondaire DC002 (192.168.2.11).

1 – Prérequis

Synchroniser l’heure avec l’adresse ip du contrôleur de domaine (ici DC001):

ntpdate 192.168.2.10

Installation de Samba, Winbind et Kerberos:

yum install samba samba-winbind samba-winbind-clients krb5-workstation krb5-libs oddjob-mkhomedir oddjob

2 – Configuration

Configuration de Kerberos:

vi /etc/krb5.conf

Et on y mets uniquement ça:

[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log

[libdefaults]
default_realm = FR.STARMATE.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = false
ticket_lifetime = 24h
forwardable = yes

[realms]
FR.STARMATE.LOCAL = {
kdc = DC001
kdc = DC002
admin_server = DC001.fr.starmate.local
admin_server = DC002.fr.starmate.local
default_domain = FR.STARMATE.LOCAL
}

[domain_realm]
.fr.starmate.local = FR.STARMATE.LOCAL
fr.starmate.local = FR.STARMATE.LOCAL
[appdefaults]
pam = {
debug = false
ticket_lifetime = 36000
renew_lifetime = 36000
forwardable = true
krb4_convert = false
}

On peut tester nos paramètres avec un compte administrateur du domaine (ici admindevops):

kinit admindevops

Configuration de Samba:

vi /etc/samba/smb.conf

Et on y mets uniquement ça (à adapter suivant votre configuration):

[global]
workgroup = STARMATE-FR
interfaces = 127.0.0.1 eth0
bind interfaces only = true
security = ads
passdb backend = tdbsam
template shell = /bin/bash
template homedir = /home/%D/%U
realm = FR.STARMATE.LOCAL
password server = DC001.fr.starmate.local, DC002.fr.starmate.local
winbind use default domain = yes
winbind enum users = yes
winbind enum groups = yes
winbind refresh tickets = yes
idmap uid = 16777216-33554431
idmap gid = 16777216-33554431
printing = cups
printcap name = cups
load printers = no

3 – Jonction au domaine

Toujours avec notre compte administrateur (ici admindevops) sur le domaine, on va maintenant rejoindre le domaine avec notre serveur:

net join -U admindevops

Pour vérifier que l’on a bien rejoint le domaine:

net ads testjoin

N.B : la jonction au domaine n’est pas instantanée et peut durer quelques minutes.

4 – Authentification avec l’AD

Configuration de Winbind:

authconfig --enablewinbind --enablemd5 --enableshadow --enablewinbindauth --enablelocauthorize --enablemkhomedir --update

On modifie la configuration de PAM:

vi /etc/pam.d/system-auth

Et on y mets uniquement ça (à adapter suivant votre configuration):

#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 500 quiet
auth        sufficient    pam_winbind.so krb5_auth krb5_ccache_type=FILE use_first_pass
auth        required      pam_deny.so
account     required      pam_unix.so broken_shadow
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 500 quiet
account     [default=bad success=ok user_unknown=ignore] pam_winbind.so
account     required      pam_permit.so
password    requisite     pam_cracklib.so try_first_pass retry=3
password    sufficient    pam_unix.so md5 shadow nullok try_first_pass use_authtok
password    sufficient    pam_winbind.so use_authtok
password    required      pam_deny.so
session     optional      pam_keyinit.so revoke
session     required      pam_limits.so
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session     required      pam_unix.so
session     required      pam_mkhomedir.so skel=/etc/skel umask=0077
#session     required      pam_oddjob_mkhomedir.so skel=/etc/skel umask=0077     => Decommentez si votre serveur est un RHEL7 ou Centos 6-7

Activation des services:

service smb start
service winbind start
service oddjobd start

Afficher la liste des groupes d’Active Directory :

sudo wbinfo -g

Afficher la liste des utilisateurs d’Active Directory :

sudo wbinfo -u

Création du répertoire d’accueil des ~/home et activation du démarrage de winbind, samba et oddjob:

mkdir /home/STARMATE-FR
chcon --reference=/home /home/STARMATE-FR
chkconfig smb on
chkconfig winbind on
chkconfig oddjobd on

Vous devriez maintenant pouvoir vous connecter avec un compte du domaine AD 2012.

5 – Limitation d’accès

Pour filtrer les utilisateurs qui se connecte sur le serveur par groupe,  il faut modifier le fichier /etc/security/pam_winbind.conf et ajouter les groupes désirés (ici le groupe « groupe_des_admins »):

vi /etc/security/pam_winbind.conf

Puis on ajoute/modifie le paramètre suivant:

require_membership_of = groupe_des_admins

Pour déclarer plusieurs groupes, il faut faire une séparation avec une virgule.

Puis, si on veut donner le droit à la commande sudo à ce groupe:

visudo

et on y ajoute cette ligne:

%groupe_des_admins ALL=(ALL) ALL

 

28 mars 2016 /

Prérequis: Avoir la dernière version du JDK Oracle.

Téléchargement des binaires (téléchargement anonyme désactivé, il faut donc spécifier un utilisateur):

cd /opt
wget --user-agent="starmate" http://product-dist.wso2.com/products/enterprise-service-bus/4.9.0/wso2esb-4.9.0.zip

Pour une version plus récente, c’est ici.

Décompression des binaires:

unzip wso2esb-4.9.0.zip
ln -s wso2esb-4.9.0 wso2esb

Création d’un utilisateur WSO2 :

useradd wso2
chown -R wso2 wso2esb/

Ajout de la variable JAVA_HOME à son environnement:

vi /home/wso2/.bashrc

Et on y met ça:

JAVA_HOME=/usr/java/jdk1.8.0_72
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH

Création du service:

vi /etc/init.d/wso2esb

# Processus: wso2esb
# chkconfig: 234 20 80
JAVA_HOME=/usr/java/jdk1.8.0_72
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
case $1 in
start)
su - wso2 -c 'sh /opt/wso2esb/bin/wso2server.sh --start'
;;
stop)
/opt/wso2esb/bin/wso2server.sh --stop
;;
restart)
su - wso2 -c 'sh /opt/wso2esb/bin/wso2server.sh --restart'
;;
esac
exit 0

Installation du connecteur Java (JDBC):

cd /opt/wso2esb/repository/components/lib
wget https://downloads.mariadb.com/enterprise/hp22-knpe/connectors/java/connector-java-1.3.6/mariadb-java-client-1.3.6.jar
service wso2esb restart

Test du module WSO2:

https://localhost:9443/carbon/

Emplacement des logs:

cd /opt/wso2esb/repository/logs/

28 mars 2016 /

Prérequis: Avoir la dernière version du JDK Oracle.

Téléchargement des binaires (téléchargement anonyme désactivé, il faut donc spécifier un utilisateur):

cd /opt
wget --user-agent="starmate" http://product-dist.wso2.com/products/data-services-server/3.5.0/wso2dss-3.5.0.zip

Pour une version plus récente, c’est ici.

Décompression des binaires:

unzip wso2dss-3.5.0.zip
ln -s wso2dss-3.5.0 wso2dss

Création d’un utilisateur WSO2 :

useradd wso2
chown -R wso2 wso2dss/

Ajout de la variable JAVA_HOME à son environnement:

vi /home/wso2/.bashrc

Et on y met ça:

JAVA_HOME=/usr/java/jdk1.8.0_72
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH

Création du service:

vi /etc/init.d/wso2dss

Et on y ajoute ça:

# Processus: wso2dss
# chkconfig: 234 20 80
JAVA_HOME=/usr/java/jdk1.8.0_72
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
case $1 in
start)
su - wso2 -c 'sh /opt/wso2dss/bin/wso2server.sh --start'
;;
stop)
/opt/wso2dss/bin/wso2server.sh --stop
;;
restart)
su - wso2 -c 'sh /opt/wso2dss/bin/wso2server.sh --restart'
;;
esac
exit 0

Installation du connecteur Java (JDBC):

cd /opt/wso2dss/repository/components/lib
wget https://downloads.mariadb.com/enterprise/hp22-knpe/connectors/java/connector-java-1.3.6/mariadb-java-client-1.3.6.jar
service wso2dss restart

Test du module WSO2:

https://localhost:9443/carbon/

Emplacement des logs:

cd /opt/wso2dss/repository/logs/

28 mars 2016 /

Prérequis: Avoir la dernière version du JDK Oracle.

Téléchargement des binaires (téléchargement anonyme désactivé, il faut donc spécifier un utilisateur):

cd /opt
wget --user-agent="starmate" http://product-dist.wso2.com/products/governance-registry/5.1.0/wso2greg-5.1.0.zip

Pour une version plus récente, c’est ici.

Décompression des binaires:

unzip wso2greg-5.1.0.zip
ln -s wso2greg-5.1.0 wso2greg

Création d’un utilisateur WSO2 :

useradd wso2
chown -R wso2 wso2greg/

Ajout de la variable JAVA_HOME à son environnement:

vi /home/wso2/.bashrc

Et on y met ça:

JAVA_HOME=/usr/java/jdk1.8.0_72
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH

Création du service:

vi /etc/init.d/wso2greg

# Processus: wso2greg
# chkconfig: 234 20 80
JAVA_HOME=/usr/java/jdk1.8.0_72
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
case $1 in
start)
su - wso2 -c 'sh /opt/wso2greg/bin/wso2server.sh --start'
;;
stop)
/opt/wso2greg/bin/wso2server.sh --stop
;;
restart)
su - wso2 -c 'sh /opt/wso2greg/bin/wso2server.sh --restart'
;;
esac
exit 0

Installation du connecteur Java (JDBC):

cd /opt/wso2greg/repository/components/lib
wget https://downloads.mariadb.com/enterprise/hp22-knpe/connectors/java/connector-java-1.3.6/mariadb-java-client-1.3.6.jar
service wso2greg restart

Test du module WSO2:

https://localhost:9443/carbon/

Emplacement des logs:

cd /opt/wso2greg/repository/logs/