Non classé
Installer MongoDB sur un serveur Linux et MongoDB Compass sur une machine cliente
Ce tutorial a été réalisé sous Rocky Linux, mais devrait fonctionner avec la plupart des distributions en changeant yum et dnf par le package manager de votre distribution.
MongoDB est un système de gestion de base de données NoSQL orienté documents, répartissable sur un nombre quelconque d’ordinateurs et ne nécessitant pas de schéma prédéfini des données.
Dans un terminal (il faut être root ou utiliser sudo pour taper la plupart de ces commandes) :
D’abord on ajoute les repos de MongoDB :
vi /etc/yum.repos.d/mongodb-org-5.0.repo
Coller (clic droit) le bloc suivant (touche i pour insérer dans vi, clic droit pour coller puis ESC :wq pour save and quit):
[mongodb-org-5.0] |
name=MongoDB Repository |
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/5.0/x86_64/ |
gpgcheck=1 |
enabled=1 |
gpgkey=https://www.mongodb.org/static/pgp/server-5.0.asc |
dnf update
dnf install -y mongodb-org
systemctl start mongod
systemctl enable mongod
systemctl status mongod
On lance le shell mongo avec :
mongosh
Une fois dans le Mongo Shell, on va créer un user dans admin :
use admin
db.createUser({user: “username”, pwd: “password”, roles: [“userAdminAnyDatabase”]})
Remplacez username et password par ceux de votre choix.
exit
vi /etc/mongod.conf
Par défaut MongoDB n’accepte que les connexions locales, changeons ça. Cherchez la ligne bindip : 127.0.0.1 et remplacez 127.0.0.1 par 0.0.0.0 (en production il faudra spécifier les IP qui peuvent accéder à la DB, pour l’instant on autorise tout avec 0.0.0.0)
On restart le service pour prendre en compte les changements :
systemctl restart mongod
Compass est une GUI pour MongoDB, installez MongoDB Compass sur votre ordinateur perso :
https://www.mongodb.com/try/download/compass
Lancez Compass, la page « New connection » devrait s’afficher. Cliquez sur “Fill in connection fields individually”
Entrez vos informations, choisissez « Username/Password » comme Authentification et entrez les infos de l’utilisateur que vous avez créé précédemment, cliquez « connect ».
Interco IVP4/IPV6/0SPF
Site et Services AD / Réplication inter sites
Config du routeur de Lille (CISCO 2900Séries)
!
! Last configuration change at 14:26:19 UTC Fri Jan 14 2022 by lille
! NVRAM config last updated at 13:00:47 UTC Fri Jan 14 2022
! NVRAM config last updated at 13:00:47 UTC Fri Jan 14 2022
version 15.2
service timestamps debug datetime msec
service timestamps log datetime msec
service password-encryption
!
hostname LILLE
!
boot-start-marker
boot-end-marker
!
!
enable secret 5 $1$I2nZ$lI7reKDhANydNC4IKLqZO.
!
no aaa new-model
!
ipv6 unicast-routing
ipv6 cef
!
!
!
!
!
ip domain name woodlille.com
ip cef
multilink bundle-name authenticated
!
!
crypto pki token default removal timeout 0
!
!
license udi pid CISCO2901/K9 sn FCZ1713C0SN
!
!
username lille password 7 060A062D404B
!
!
ip ssh version 2
!
!
!
!
interface Embedded-Service-Engine0/0
no ip address
shutdown
!
interface GigabitEthernet0/0
ip address 192.168.59.254 255.255.255.0
duplex auto
speed auto
ipv6 address FE80::FF link-local
ipv6 address 2022:F00D:5959:5959::FF/64
ipv6 ospf 1 area 0
!
interface GigabitEthernet0/1
ip address 172.16.61.100 255.255.255.0
ip nat outside
ip virtual-reassembly in
duplex auto
speed auto
!
interface Serial0/0/0
ip address 10.59.74.1 255.255.255.252
ipv6 address 2022:F00D:5959:7474::1/64
ipv6 address autoconfig
ipv6 ospf 1 area 0
clock rate 2000000
!
interface Serial0/0/1
ip address 10.29.59.2 255.255.255.252
ip nat inside
ip virtual-reassembly in
ipv6 address 2022:F00D:2929:5959::2/64
ipv6 address autoconfig
ipv6 ospf 1 area 0
!
router ospf 1
router-id 59.59.59.59
network 10.59.74.0 0.0.0.3 area 0
network 10.29.59.0 0.0.0.3 area 0
network 192.168.59.0 0.0.0.255 area 0
!
ip forward-protocol nd
!
no ip http server
no ip http secure-server
!
ip nat inside source list 1 interface GigabitEthernet0/1 overload
ip route 0.0.0.0 0.0.0.0 GigabitEthernet0/1
!
access-list 1 permit 0.0.0.0
access-list 1 permit 192.168.59.0 0.0.0.255
access-list 1 permit 192.168.40.0 0.0.0.255
access-list 1 permit 192.168.71.0 0.0.0.255
access-list 1 permit 192.168.29.0 0.0.0.255
access-list 1 permit 192.168.74.0 0.0.0.255
ipv6 router ospf 1
Configuration Intersite DC de Lille
Console sites et services Active Directory
!
!
!
!
control-plane
!
!
!
line con 0
line aux 0
line 2
no activation-character
no exec
transport preferred none
transport input all
transport output pad telnet rlogin lapb-ta mop udptn v120 ssh
stopbits 1
line vty 0 4
login local
transport input ssh
transport output ssh
!
scheduler allocate 20000 1000
end
Cluster Proxmox Stockage SAN NFS
Pour ce tp, nous imaginerons que vous avez déjà installé plusieurs hyperviseurs Proxmox Virtual Environment sur le même réseau.
Mise en cluster des hyperviseurs
Sur un des hyperviseurs, créez le cluster.
pvecm create <nom_du_cluster>
Puis, sur les autres hyperviseurs, rentrez la commande suivante pour les ajouter au cluster.
pvecm add <adresse_ip_du_premier_hyperviseur>
Voilà, vous avez créé votre cluster. Maintenant, nous allons installer un serveur Debian pour y stocker les ISO, les VM et les backup.
Création des stockages dans un serveur Debian
Dans un serveur Debian, créez les 3 fichiers dont vous avez besoin et accordez leur toutes les permissions possibles (attention : nous faisons ça uniquement dans le cadre du TP)
Ensuite installez le service nfs-kernel-server.
apt install nfs-kernel-server
A présent, pour partager les dossiers pour les clusters, il faut modifier le fichier de configuration /etc/exports.
Redémarrez le service nfs-kernel-server. Vos dossiers sont maintenant partagés. Maintenant connectez vous à l’interface web d’un des hyperviseurs.
Créer des stockages dans l’hyperviseur
Allez dans le stockage de votre cluster et ajoutez des stockages.
Maintenant vos VM, vos ISO et vos sauvegardes pourront être stockées hors des hyperviseurs.
Pense-bête Stratégies de groupe #RAN22 #GMSI
GPO (Global Policy Object, Stratégies de groupe)
Elles permettent de configurer des restrictions d’utilisation de Windows où des paramètres à appliquer soit sur un ordinateur donné soit sur un compte utilisateur donné.
Une stratégie utilisateur s'applique à l'ouverture de session.
Une stratégie Ordinateur s'applique au démarrage l'ordinateur.
Les stratégies de groupe sont supportées sur Windows 2000, Windows XP Pro, Windows Vista, Windows 2003, Windows 2008, Windows 2012, Windows 2016, Windows 7, Windows 8 ,8.1 et Windows 10
Après avoir créé une stratégie de groupe, elle peut être liée à un site AD, à un domaine ou à une unité d’organisation (UO).
Il est donc possible d’agir sur:
- La redirection de certains répertoires et leurs contenus.
- Le déploiement de logiciels : Une automatisation complète de l’installation des programmes sur les postes clients.
- L’application des paramètres de sécurité.
- L’application de scripts.
- L’application d’une modification de l’interface utilisateur
- L’application d’une modification des programmes intégrés à Windows.
GPMC est un outil qui va vous aider pour:
- faciliter l’utilisation des GPO
- l’importation et l’exportation ainsi que le copier/coller des objets de stratégie de groupe.
- la sauvegarde et la restauration des objets de stratégie de groupe
- l’utilisation de scripts pour les tâches associées aux stratégies de groupe
- générer des rapports
- avoir une vue global des objets liées aux stratégies de groupe
Lorsqu’une GPO est définit, les paramétrages de cette dernière sont stockés dans la base de registre dans les branches suivantes :
- HKEY_CURRENT_USER\Software\Policies\Microsoft
- HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies
- HKEY_LOCAL_MACHINE\Software\Policies\Microsoft
- HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies
Il est possible de forcer l’application des GPO manuellement avec la commande
- gpupdate
gpupdate /Force
Il est possible de visualiser l’application effective des GPO manuellement avec la commande
- gpresult
gpresult [/s <Computer> [/u [<Domain>\]<UserName> [/p [<Password>]]]] [/user [<TargetDomain>\]<TargetUser>] [/scope {user | computer}] [/r | /v | /z] [[/x | /h] <FileName> [/f]]
sources:http://technet.microsoft.com
Découvrir DOCKER
Installation de Docker
Pour Windows Server 2022, 2019,2016:
https://docs.microsoft.com/fr-fr/virtualization/windowscontainers/quick-start/set-up-environment?tabs=Windows-Server
Pour les Desktop Windows :
https://docs.microsoft.com/fr-fr/virtualization/windowscontainers/quick-start/set-up-environment?tabs=Windows-10-and-11
Pour Linux Famille Debian :
apt install docker.io
Pour Linux Famille CentOS :
## On supprime les éventuelles anciennes versions de Docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
## On ajoute le repo pour Docker
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
## On installe ensuite la dernière version de Docker engine
sudo yum install docker-ce docker-ce-cli containerd.io --allowerasing
Qu’est-ce qu’une image Docker?
Une image Docker est un fichier immuable, qui constitue une capture instantanée d’un conteneur. Généralement, les images sont créées avec la commande « docker build ». Et puis, ils vont produire un conteneur quand ils sont lancés avec la commande « run ». En revanche, dans un registre Docker, les images sont stockées comme « registry.hub.docker.com ». Comme elles peuvent devenir assez volumineuses, les images sont conçues pour composer des couches de d’autres images, ce qui permet d’envoyer une quantité minimale de données lors du transfert des images sur le réseau.
## par defaut "docker hub est installé sur votre machine et vous
## permet de trouver des images de conteneurs installables
Utiliser le Hub
une des images les plus connues et des plus légère est l’image alpine par exemple pour l’installer on fait comme ceci :
La Commande Docker
Installation Images Docker
Qu’est-ce qu’un conteneur Docker?
Un conteneur Docker est une instance exécutable d’une image. En utilisant l’API ou la CLI de Docker, nous pouvons créer, démarrer, arrêter, déplacer ou supprimer un conteneur. De manière avantageuse, nous pouvons connecter un conteneur à un ou plusieurs réseaux, y attacher de la mémoire ou créer une nouvelle image sur la base de son état actuel. De plus, il consiste en une image Docker, un environnement d’exécution et un ensemble d’instructions standard.
Monter un volume persistant
Dans ce cas présent si on supprime de maniére brutale le conteneur on va s’apercevoir que l’on perd la modification des datas du site c’est la qu’interviennent les volumes
Docker Volume
Créer une image à partir d’un conteneur
WordPress avec docker-compose
On commence par l’installation de docker-compose
docker-compose --version
#on install Docker-compose :
apt install libffi-dev libssl-dev python3-dev python3 python3-pip
sudo pip3 install docker-compose
puis
nano docker-compose.yml
Le fichier docker-compose.yml permettra d’aller chercher directement les images dont vous aurez besoin et de les lier entre elles. Modifiez le fichier docker-compose.yml
wordpress:
image: wordpress
links:
- mariadb:mysql
environment:
- WORDPRESS_DB_PASSWORD=password
- WORDPRESS_DB_USER=root
ports:
- "public_ip:80:80"
volumes:
- ./html:/var/www/html
mariadb:
image: mariadb
environment:
- MYSQL_ROOT_PASSWORD=password
- MYSQL_DATABASE=wordpress
volumes:
- ./database:/var/lib/mysql
Important : Faites attention à modifier les password utilisateur et adresse ip à renseigner
Ensuite on exécute le script avec
docker-compose up -d
Ensuite, mettez vous dans le répertoire dans lequel vous avez mis le fichier et exécuter la commande suivante.
Voilà c’est terminé ! Maintenant allez sur votre navigateur et entrez votre adresse locale et le port que vous avez utilisé dans le fichier docker-compose.yml.
Docker Les Réseaux
Image à partir dun Dockerfile
Intégrer une Station Debian à un domaine Active Directory
- Préparer un serveur 2019 avec un AD
- Respecter les prérequis habituels
- Mettre en place une structure AD de test avec quelques UO et Users
- Installer un Debian 10/11 sur le même Réseau
Le but final est de pouvoir s’authentifier avec un utilisateur de l’Active directory en graphique sur la station Debian.
Dans un second temps il sera possible d’affiner le paramétrage de Samba pour optimiser les liens entre serveur de fichier et les objets de l’Active Directory
Les prérequis du serveur Debian sont les mêmes qu’un Membre Active Directory qui serait paramétré sur un Serveur Microsoft ( IP, DNS,Nom du Serveur etc)
Packages nécessaires sur la Debian:
apt install packagekit samba-common-bin sssd-tools sssd libnss-sss libpam-sss policykit-1 sssd ntpdate ntp realmd
Les paquets installés permettent de contacter l’annuaire LDAP, prendre en charge Kerberos, et des outils pour effectuer des actions sur l’AD.
Il faut aussi s’assurer que le DNS de la Debian est configuré, et pointe bien sur le contrôleur de domaine.
Si le DNS et le suffixe ne sont pas donnés par le DHCP ou qu’on est dans une configuration IP Statique
Editer le fichier Resolv.conf
nano /etc/resolv.conf
##attention au reboot de la machine
##dans le fichier resolv.conf
search tontonfred.adds
nameserver 192.168.21.222
Editer le fichier hostname
nano /etc/hostname
## attention
## mettre le nom en FQDN
## fully qualified domain name
stationlinux.tontonfred.adds
Tester la resolution DNS avec un ping du domaine
Ping tontonfred.adds
il doit vous répondre avec l’ip du SERVEUR DNS
Si ce n’est pas le cas refaire revoir les étapes précédentes
Joindre le système au domaine Windows
realm join --user=administrateur tontonfred.adds
Password for administrateur:
Le mot de passe de l’administrateur du domaine est demandé.
Le compte AD utilisé doit posséder les droits de faire adhérer des machines au domaine.
Les fichiers /etc/sssd/sssd.conf , /etc/krb.conf et /etc/krb5.keytab seront configurés automatiquement grâce à la commande ci-dessus. ici il ya une énorme différence avec les versions précédente de Linux et Samba
realm list
Vous devriez avoir un truc qui ressemble à ceci :
tontonfred.adds
type: kerberos
realm-name: TONTONFRED.ADDS
domain-name: tontonfred.adds
configured: kerberos-member
server-software: active-directory
client-software: sssd
required-package: oddjob
required-package: oddjob-mkhomedir
required-package: sssd
required-package: adcli
required-package: samba-common-tools
login-formats: %U@tontonfred.adds
login-policy: allow-realm-logins
Faire vérification dans l’AD que la machine est apparue
Pour vérifier les comptes qui peuvent se connecter à cette Debian on peut utiliser la commande id :
id utilisateur@tontonfred.adds
La commande doit vous renvoyer les informations sur l’utilisateur si ce n’est pas le cas reprendre les étapes précédentes
Ensuite il devrait être possible de se connecter avec un utilisateur de l’AD sur la station Debian en mode graphique en utilisant un login de type : utilisateur@tontonfred.adds
Intro Shell RISR2021 “La piscine”
La piscine est peu profonde si on y pénètre par le bon côté.. A vrai dire c’est même une pataugeoire.
Par contre pour aller là où vous n’avez pas pied il faut savoir flotter, nager, ou être équipé..
EXO 1.1
- Ouvrez une session en mode terminal. Tapez votre nom et votre mot de passe
- Quel est le prompt utilisé ?
- Affichez le nom de votre shell à l’aide d’une variable
- Ouvrez une deuxième session en mode terminal.. Connectez vous en tant que root
- Afficher le shell de root à l’aide d’une variable
EXO 1.2
- Affichez la liste des utilsateurs qui utilise comme shell de connexion le : /bin/bash
- Affichez leurs nombres
- Revenez sur la première console et optez pour le shell “sh” que se passe t’il ?
- Répétez l’étape précédent avec ksh. Que remarquez-vous ?
- Revenez à votre shell de départ
- Affichez le shell de connexion de root tout en restant sous votre identité
- En tant que root créez un utilisateur user2 et affectez-lui le /bin/sh comme shell de connexion
- Ouvrez une console et connectez-vous en tant que user2
EXO 1.3
- Affichez la liste des fichiers de votre répertoire courant sans explorer les sous répertoires
- Affichez les fichiers cachés de votre répertoire courant
- Affichez de maniére récursive, les caractéristiques de tous les fichiers de votre répertoire courant.
- Créez un répertoire nommé : Repertoire
- Copiez le fichier /etc/passwd dans Repertoire
- Renommez le fichier passwd en password
- Supprimez le fichier password
- Supprimez le dossier Repertoire
- Affichez le contenu du fichier /etc/group
- Afichez le nombre de lignes du fichier /etc/passwd
- Triez le fichier /etc/passwd et stockez le résultat dans un fichier nommé password dans votre répertoire courant.
- Affichez les 5 premières lignes du fichier /etc/group
Exo 1.4
- Affichez la liste des utilisateurs connectés sur le système
- Changez temporairement d’identité et devenez root
- Recherchez la chaine de caractères root dans le fichier /etc/passwd.récupérez le résultat dans un fichier tout en l’affichant sur l’écran
- Recherchez dans le répertoire / tous les fichiers dont le nom contient la chaine sh
- Affichez en Ko la taille totale des fichiers de votre répertoire courant
- Affichez des informations sur l’utilisation de l’espace disque de votre système de fichier /.
- Affichez des informations sur le contenu des fichiers suivants:
- /etc/passwd
- /etc/init.d
- /bin/bash
- /bin/sh
- /etc/init.d/crond
EXO 1.5
- Sur une fenêtre console, lancez l’environnement sh
- Lancez les commandes suivantes: alias, history, logout
- Relancez les commandes précédentes en ksh puis en bash
- Essayez de rappeler ces commandes dans les trois environnements shell. Que constatez-vous ?
Alors vous êtes-vous noyé dans la pataugeoire ?
Les bases de la programmation shell #Bigboss
Les Conditions :le if (Si)
if [ test ] #####Si test de la variable then ######Alors echo "C'est vrai" ####Renvoi si c'est Vrai fi #### Il délimite la fin du Si seulement si le Vrai est vérifié
ATTENTION au espaces a l’intérieur des crochets …
Petit test :
#!/bin/bash nom="RAREC3" if [ $nom = "RAREC3" ] then echo "Les meilleurs sont les RARE C3!" fi
Avec 2 variables
#!/bin/bash nom1="RAREC3" nom2="RAREC3" if [ $nom1 = $nom2 ] then echo "Vive les RARE !" fi
Quand la condition n’est pas remplie on fait comme ceci :
if [ test ] ###SI then ####Alors echo "C'est vrai" else ####Sinon echo "C'est faux" fi
#!/bin/bash nom="RAREC3" if [ $nom = "RAREC3" ] then echo "Vive les RAREC3!" else echo "Dégages t'es pas un RAREC3 !" fi
On peut charger la variable comme ca pour tester… :
#!/bin/bash if [ $1 = "RAREC3" ] then echo "Vive les RAREC3!" else echo "Dégages t'es pas un RAREC3 !" fi
./monscript RAREC3 ###### pour tester
./monscript autre chose ###### la il fera le sinon
On peut ensuite faire comme ca :
#!/bin/bash if [ $1 = "RAREC3" ] then echo "Vive les RAREC3!" elif [ $1 = "Tontonfred" ] then echo "Hello Tontonfred" elif [ $1 = "RAREC4" ] then echo "Alors les nouveaux ca va ?" else echo "Z'êtes pas du CESI bye!" fi
Utilisons maintenant les TESTS
Il est possible d’effectuer trois types de tests différents en bash :
- des tests sur des chaînes de caractères ;
- des tests sur des nombres ;
- des tests sur des fichiers.
Tests sur les Chaines de caractères:
Condition | Signification |
---|---|
$chaine1 = $chaine2 | Vérifie si les deux chaînes sont identiques. Notez que bash est sensible à la casse : « b » est donc différent de « B ». Il est aussi possible d’écrire « == » pour les habitués du langage C. |
$chaine1 != $chaine2 | Vérifie si les deux chaînes sont différentes. |
-z $chaine | Vérifie si la chaîne est vide. |
-n $chaine | Vérifie si la chaîne est non vide. |
#!/bin/bash if [ -z $1 ] then echo "Pas de paramètre" else echo "Paramètre présent" fi
Test sur les Nombres:
Condition | Signification |
---|---|
$num1 -eq $num2 | Vérifie si les nombres sont égaux (equal). À ne pas confondre avec le « = » qui, lui, compare deux chaînes de caractères. |
$num1 -ne $num2 | Vérifie si les nombres sont différents (non equal). Encore une fois, ne confondez pas avec « != » qui est censé être utilisé sur des chaînes de caractères. |
$num1 -lt $num2 | Vérifie si num1 est inférieur ( < ) à num2 (lower than). |
$num1 -le $num2 | Vérifie si num1 est inférieur ou égal ( <= ) à num2 (lower or equal). |
$num1 -gt $num2 | Vérifie si num1 est supérieur ( > ) à num2 (greater than). |
$num1 -ge $num2 | Vérifie si num1 est supérieur ou égal ( >= ) à num2 (greater or equal). |
#!/bin/bash if [ $1 -ge 20 ] then echo "Vous avez envoyé 20 ou plus" else echo "Vous avez envoyé moins de 20" fi
Test sur les fichiers:
-e $nomfichier | Vérifie si le fichier existe. |
-d $nomfichier | Vérifie si le fichier est un répertoire. N’oubliez pas que sous Linux, tout est considéré comme un fichier, même un répertoire ! |
-f $nomfichier | Vérifie si le fichier est un… fichier. Un vrai fichier cette fois, pas un dossier. |
-L $nomfichier | Vérifie si le fichier est un lien symbolique (raccourci). |
-r $nomfichier | Vérifie si le fichier est lisible (r). |
-w $nomfichier | Vérifie si le fichier est modifiable (w). |
-x $nomfichier | Vérifie si le fichier est exécutable (x). |
$fichier1 -nt $fichier2 | Vérifie si fichier1 est plus récent que fichier2 (newer than). |
$fichier1 -ot $fichier2 | Vérifie si fichier1 est plus vieux que fichier2 (older than). |
#!/bin/bash read -p 'Entrez un répertoire : ' repertoire if [ -d $repertoire ] then echo "Bien, vous avez compris ce que j'ai dit !" else echo "Vous n'avez rien compris..." fi
Recap plus infos complémentaires:
Tests sur les fichiers/répertoires
Voici une liste des tests possibles sur les fichiers et/ou répertoires :
- “-e fichier” : vrai si le fichier/répertoire existe.
- “-s fichier” : vrai si le fichier à une taille supérieure à 0.
- “-r fichier” : vrai si le fichier/répertoire est accessible en lecture.
- “-w fichier” : vrai si le fichier/répertoire est accessible en écriture.
- “-x fichier” : vrai si le fichier est exécutable ou si le répertoire est accessible.
- “-O fichier” : vrai si le fichier/répertoire appartient à l’utilisateur.
- “-G fichier” : vrai si le fichier/répertoire appartient au groupe de l’utilisateur.
- “-b nom” : vrai si nom représente un périphérique (pseudo-fichier) de type bloc (disques et partitions de disques généralement).
- “-c nom” : vrai si nom représente un périphérique (pseudo-fichier) de type caractère (terminaux, modems et port parallèles par exemple).
- “-d nom” : vrai si nom représente un répertoire.
- “-f nom” : vrai si nom représente un fichier.
- “-L nom” : vrai si nom représente un lien symbolique.
- “-p nom” : vrai si nom représente un tube nommé.
- “fichier1 -nt fichier2” : vrai si les deux fichiers existent et si fichier1 est plus récent que fichier2.
- “fichier1 -ot fichier2” : vrai si les deux fichiers existent et si fichier1 est plus ancien que fichier2.
- “fichier1 -ef fichier2” : vrai si les deux fichiers représentent un seul et même fichier.
Tests sur les entiers
- “entier1 -eq entier2” : vrai si entier1 est égal à entier2.
- “entier1 -ge entier2” : vrai si entier1 est supérieur ou égal à entier2.
- “entier1 -gt entier2” : vrai si entier1 est strictement supérieur à entier2.
- “entier1 -le entier2” : vrai si entier1 est inférieur ou égal à entier2.
- “entier1 -lt entier2” : vrai si entier1 est strictement inférieur à entier2.
- “entier1 -ne entier2” : vrai si entier1 est différent de entier2.
Tests sur les chaines de caractères
Les chaines doivent être entourées par des guillemets.
- “-n “chaîne”” : vrai si la chaîne n’est pas vide.
- “-z “chaîne”” : vrai si la chaîne est vide.
- “”chaine1” = “chaine2″” : vrai si les deux chaînes sont identiques.
- “”chaine1” != “chaine2″” : vrai si les deux chaînes sont différentes.
Les combinaisons de tests
Les combinaisons de tests sont utilisées quand on doit faire plusieurs tests simultanément, c’est à dire, quand on doit répondre à plusieurs conditions.
On utilise les opérateurs && et || comme dans les commandes composées. L’opérateur ! sert à inverser la condition.
- SI test ALORS commandes FIN : exécute les commandes si test est VRAI
- SI ! test ALORS commandes FIN : exécute les commandes si test est FAUX
- SI test1 && test2 ALORS commandes FIN : exécute les commandes si test1 ET test2 sont vrais tous les deux
- SI test1 -a test2 ALORS commandes FIN : pareil de précédemment, avec une autre notation
- SI test1 && ! test2 ALORS commandes FIN : exécute les commandes si test1 est VRAI ET test2 est FAUX
- SI test1 || test2 ALORS commandes FIN : exécute les commandes si test1 OU test2 sont VRAIS
- SI test1 -o test2 ALORS commandes FIN : pareil de précédemment, avec une autre notation
- SI ! { test1 || test2 } ALORS commandes FIN : exécute les commandes si NI test1 NI test2 sont VRAIS
EXERCICES
Le script demande une note ,et il renvoi ceci :
- “Autiste” si la note est entre 16 et 20
- “A” lorsqu’elle est entre 14 et 16
- “B” si la note est entre 12 et 14
- “C” si la note est entre 10 et 12
- “D” si la note est inférieur à 10
Les variables utilisateur
Ce chapitre présente les fonctionnalités qui composent les bases de la programmation shell.
Le shell permet de définir ou redéfinir des variables qui conditionnent l’environnement de travail de l’utilisateur. Il est également possible de définir d’autres variables, dites variables utilisateur, qui vont permettre de stocker des informations qui seront nécessaires durant l’exécution d’un script.
1. Nommer une variable
Voici les règles à utiliser pour attribuer un nom à une variable :
- le premier caractère fait partie de l’ensemble [a-zA-Z_] ;
- les caractères suivants sont pris dans l’ensemble [a-zA-Z0-9_].
2. Définir une variable
Une variable est définie dès qu’elle est initialisée. Le contenu d’une variable est considéré par le shell comme une suite de caractères.
a. Affecter une chaîne de caractères à une variable
Exemples
$ var1=mot1 $ echo $var1 mot1 $
Il ne faut pas mettre d’espace autour du symbole d’affectation : dans l’exemple suivant, le shell interprète var1 comme la commande à lancer, = et mot1 comme les deux arguments de la commande var1. Autrement dit, il n’interprète pas le signe = comme symbole d’affectation.
b. Affecter une chaîne de caractères contenant au moins un espace
L’espace doit être protégé car c’est un caractère spécial du shell (séparateur de mots sur la ligne de commande).
Exemples
$ var2=’mot1 mot2 mot3’ #CORRECT $ echo $var2 mot1 mot2 mot3 $ var2=mot1 mot2 mot3 #INCORRECT ksh: mot2: not found $
c. Variable indéfinie
Une variable qui n’a jamais été initialisée est vide.
L’utilisation d’une variable vide n’est pas considérée comme une erreur en shell.
Exemple
$ echo $vide $
d. Retirer la définition d’une variable
La commande interne unset permet de retirer la définition d’une variable.
Exemple
Définition d’une variable var :
$ var=12 $ echo $var 12
Elle apparaît dans la liste des variables définies au niveau du shell :
$ set | grep var var=12
La définition de la variable est retirée :
$ unset var
La variable est indéfinie :
$ echo $var $ set | grep var $
e. Isoler le nom d’une variable
Il faut faire attention en concaténant le contenu d’une variable et d’une chaîne de caractères à ce que le shell interprète correctement le nom de la variable.
Exemple
Pour le shell, le caractère _ fait partie du nom de la première variable :
$ fic=resu $ datejour=20110117 $ newfic=$fic_$datejour $ echo $newfic 20110117
Pour le shell, la première variable se nomme fic_ (puisque le caractère souligné est autorisé à l’intérieur d’un nom de variable !). Celle-ci est donc substituée par sa valeur (donc vide !), puis concaténée avec le contenu de la variable datejour.
Pour faire comprendre au shell quels sont les caractères qui font partie du nom de la variable, il faut entourer le nom de cette dernière avec des {}.
Exemple
$ fic=resu $ datejour=20110117 $ newfic=${fic}_$datejour $ echo $newfic resu_20110117
3. Substitution de variables
Le shell offre la possibilité d’attribuer une valeur par défaut aux variables non initialisées, ou au contraire, initialisées.
Expression ${variable:-valeur}
- Si la variable n’est pas vide, l’expression est substituée par le contenu de celle-ci.
- Si la variable est vide, l’expression est substituée par valeur.
Exemple
$ fic=/tmp/christie.log $ echo "Le fichier traite sera: ${fic:-/tmp/default.log}" Le fichier traite sera: /tmp/christie.log $ unset fic $ echo "Le fichier traite sera: ${fic:-/tmp/default.log}" Le fichier traite sera: /tmp/default.log $ echo $fic $
Expression ${variable:=valeur}
- Si la variable n’est pas vide, l’expression est substituée par $variable.
- Si la variable est vide, variable est affectée avec valeur et l’expression est substituée par valeur.
Exemple
$ fic=/tmp/christie.log $ echo "Le fichier traite sera: ${fic:=/tmp/default.log}" Le fichier traite sera: /tmp/christie.log $ echo $fic /tmp/christie.log $ unset fic $ echo "Le fichier traite sera: ${fic:=/tmp/default.log}" Le fichier traite sera: /tmp/default.log $ echo $fic /tmp/default.log $
Expression ${variable:+valeur}
- Si la variable n’est pas vide, l’expression est substituée par valeur.
- Si la variable est vide, l’expression est substituée par $variable, donc vide.
Exemple
$ a=1 $ echo "Expression : ${a:+99}" Expression : 99 $ unset a $ echo "Expression : ${a:+99}" Expression : $
${variable:?message}
- Si la variable n’est pas vide, l’expression est substituée par $variable.
- Si la variable est vide, le shell affiche le nom de la variable suivie de la chaîne de caractères message.
Si la variable est vide et que cette commande est placée dans un script shell, celui-ci affiche le message et se termine immédiatement.
Exemple
La variable var est vide :
$ echo $var $ echo ${var:?"var non definie"} bash: var: var non definie
Message par défaut :
$ echo ${var:?} bash: var: parameter null or not set
Définition de la variable var :
$ var=definie $ echo ${var:?"var non definie"} definie $
Sources :Eni .Site du Zéro
IPTABLES / NETFILTER / FAIL2BAN GMSI21 R
Mise en place d’un Firewall (source alsacreations)
vi /etc/init.d/firewall
#!/bin/sh
# Vider les tables actuelles
iptables -t filter -F
# Vider les règles personnelles
iptables -t filter -X
# Interdire toute connexion entrante et sortante
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP
# ---
# Ne pas casser les connexions etablies
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# Autoriser loopback
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT
# ICMP (Ping)
iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -j ACCEPT
# ---
# SSH In
iptables -t filter -A INPUT -p tcp --dport 2222 -j ACCEPT
# SSH Out
iptables -t filter -A OUTPUT -p tcp --dport 2222 -j ACCEPT
# DNS In/Out
iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 53 -j ACCEPT
# NTP Out
iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT
Si vous hébergez un sevreur web (Apache) :
# HTTP + HTTPS Out
iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -j ACCEPT
# HTTP + HTTPS In
iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 8443 -j ACCEPT
Si vous hébergez un serveur FTP :
# FTP Out
iptables -t filter -A OUTPUT -p tcp --dport 20:21 -j ACCEPT
# FTP In
modprobe ip_conntrack_ftp # ligne facultative avec les serveurs OVH
iptables -t filter -A INPUT -p tcp --dport 20:21 -j ACCEPT
iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Si vous hébergez un serveur de mail avec SMTP, POP3 et IMAP :
# Mail SMTP:25
iptables -t filter -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 25 -j ACCEPT
# Mail POP3:110
iptables -t filter -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 110 -j ACCEPT
# Mail IMAP:143
iptables -t filter -A INPUT -p tcp --dport 143 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 143 -j ACCEPT
# Mail POP3S:995
iptables -t filter -A INPUT -p tcp --dport 995 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 995 -j ACCEPT
N’oubliez pas de tester vos régles !!! Exemples, elles pourraient vous empêcher d’accéder à votre accés ssh si elles sont trop restrictives.
N’oubliez pas non plus de redémarrer le sevice firewall aprés les modifs..
######################################################################
IPtables / Netfilter
IPtables (associé à Netfilter) est un des meilleurs firewalls pour Linux, et certainement le plus répandu. Vous pourrez trouver de nombreux scripts de configuration à son sujet. En voici un, à adapter à votre configuration. A tout instant, utilisez la commande iptables -L -v
pour lister les règles en place.
Celles-ci portent sur 3 chaînes : INPUT (en entrée), FORWARD (dans le cas d’un routage réseau) et OUPUT (en sortie). Les actions à entreprendre sont ACCEPT (accepter le paquet), DROP (le jeter), QUEUE et RETURN.
Arguments utilisés :
- i : interface d’entrée (input)
- i : interface de sortie (output)
- t : table (par défaut filter contenant les chaînes INPUT, FORWARD, OUTPUT)
- j : règle à appliquer (Jump)
- A : ajoute la règle à la fin de la chaîne (Append)
- I : insère la règle au début de la chaîne (Insert)
- R : remplace une règle dans la chaîne (Replace)
- D : efface une règle (Delete)
- F : efface toutes les règles (Flush)
- X : efface la chaîne
- P : règle par défaut (Policy)
- lo : localhost (ou 127.0.0.1, machine locale)
######################################################################
Fail2ban
Fail2ban est un script surveillant les accès réseau grâce aux logs des serveurs. Lorsqu’il détecte des erreurs d’authentification répétées, il prend des contre-mesures en bannissant l’adresse IP grâce à iptables. Cela permet d’éviter nombre d’attaques bruteforce et/ou par dictionnaire.
Installation
apt-get install fail2ban
Configuration
vi /etc/fail2ban/fail2ban.conf
- loglevel
- Niveau de détail des logs (défaut 3)
- logtarget = /var/log/fail2ban.log
- Chemin vers le fichier de log (description des actions entreprises par fail2ban)
Les services à monitorer sont stockés dans jail.conf. Il est recommandé d’en effectuer une copie nommée jail.local qui sera automatiquement utilisée à la place du fichier exemple.
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
vi /etc/fail2ban/jail.local
Quelques paramètres globaux :
- ignoreip = 127.0.0.1
- Liste des adresses IP de confiance à ignorer par fail2ban
- bantime = 600
- Temps de ban en secondes
- maxretry = 3
- Nombre d’essais autorisés pour une connexion avant d’être banni
- destmail monitoring@test.com
- Adresse e-mail destinataire des notifications
- action
- Action à entreprendre en cas de détection positive (voir dans /etc/fail2ban/action.d/)
Chaque section possède ses propres paramètres qui prennent le pas sur les globaux s’ils sont mentionnés :
- enabled
- Monitoring activé (true) ou non (false)
- maxretry, bantime, ignoreip, destmail
- Voir ci-dessus
- port
- Port IP concerné
- logpath
- Fichier de log à analyser pour détecter des anomalies
- filter
- Filtre utilisé pour l’analyser du log
Les filtres par défaut sont stockés dans /etc/fail2ban/filter.d. Ils contiennent en général une instruction failregex suivie d’une expression régulière matchant la détection d’une authentification erronée. Par exemple pour le service Courier :
failregex = LOGIN FAILED, ip=[<HOST>]$
Note : Celle-ci peut être précisée directement dans jail.local à la section appropriée pour prendre le pas sur la directive filter.
Modifiez les ports le cas échéant dans la section ssh si vous avez suivi la recommandation ci-dessus…
enabled = true
port = 2222
Après modification de la configuration, n’oubliez pas de redémarrer fail2ban : /etc/init.d/fail2ban restart
Relation d’approbation Active Directory
Quand mettre en place une relation d’approbation?
- Entité avec des domaines/forêts différents
- Filiale – Fusion domaine enfant
- Segmentation du Service Informatique
Type de relation d’approbation
- Unidirectionnelle : l’accès aux ressources n’est disponible que dans un sens (DOMAINEA) -> (DOMAINEB)
- Bidirectionnelle : l’accès aux ressources est disponible dans les deux sens (DomaineA) <-> (DomaineB).
- Transitive : si (DomaineA) et (DomaineB) ont une relation d’approbation transitive, si par exemple (DomaineB) approuve un autre domaine (Domaine C) celui-ci sera automatiquement approuvé dans (DomaineA).
Avant de se lancer dans le paramétrage de la relation d’approbation, il faut d’abord mettre en place une redirection conditionnelle sur les serveurs DNS concernées
Domaine et Approbation Active Directory
Sources.list Debian 10
deb http://deb.debian.org/debian buster main
deb-src http://deb.debian.org/debian buster main
deb http://deb.debian.org/debian-security/ buster/updates main
deb-src http://deb.debian.org/debian-security/ buster/updates main
deb http://deb.debian.org/debian buster-updates main
deb-src http://deb.debian.org/debian buster-updates main
Protégé : QCM MICROSOFT
Commande Rsync
apt-get update && apt-get install rsync
rsync [option] /source /destination
rsync -av /source /destination
-r visite récursive des répertoires
-l copie les liens symboliques comme liens symboliques
-p préserve les permissions
-t préserve les dates
-g préserve le groupe
-o préserve le propriétaire (root uniquement)
-D préserve les périphériques (root uniquement)
-a mode archivage
-v De nombreuses informations sont affichées lors du transfert.
-z Compresse le fichier pour un meilleur transfert par le reseau.
–delete ATTENTION ! Si le fichier (ou son contenu) n'existe plus dans “source”, il sera supprimé dans “destination”.
Groupware C24
Prérequis pour Installation AD #RAN N5
ATTENTION toutes les installations se réalisent sur des partitions NTFS et il est recommandé de faire au moins 2 partitions (volumes logiques)
Fuseau horaire réglé
Le nom du serveur doit être défini sérieusement pendent l’installation car il est définitif.
IP fixe et masque configuré.
La passerelle pour un accès aux mises à jour doit être configurée au préalable.
La DNS Cliente préféré sera défini sur l’IP de votre Serveur ou sa Boucle Locale
L’installation du service DNS est prise en charge par Active Directory (AD)
- Pré-requis Matériel Install AD ?
Mettre le dossier « Sysvol » sur la 2eme partition, car ce dossier va contenir les GPO, scripts.. et la totalité des programmes déployés à partir de votre serveur et le dossier NTDS sur une troisième partition pour le stockage de l’AD et ses journaux
1Go de disponible sur son disque dur est conseillé.
- Pré-requis Logiciel ?
Le Protocole TCP/IP doit être parfaitement opérationnel sur le système car tout AD repose sur DNS.
- Autres ?
Un second compte « Administrateur »dédié à la gestion d’AD est aussi fortement conseillé.
Protégé : QCM EXCHANGE
Introduction à Apache et Sécurisation de votre accés Web #GMSI19 R
-- Download Introduction à Apache et Sécurisation de votre accés Web #GMSI19 R as PDF --
Pour notre TD : Attention (Adapter en fonction de la version du Debian)
Pour une version 9.X de Debian prendre la ISO du DVD1 pour avoir l’interface graphique de base afin de pouvoir paramétrer le navigateur et pouvoir traverser le proxy du Cesi.
Outils pour surveiller votre serveur WEB
Apache est un serveur http libre, c’est un des serveurs http les plus utilisé sur Internet
Apache est conçu pour prendre en charge de nombreux modules lui donnant des fonctionnalités supplémentaires : interprétation du langage Perl, PHP, Python et Ruby, serveur proxy, Common Gateway Interface, Server Side Includes, réécriture d’URL, négociation de contenu, protocoles de communication additionnels, etc. Néanmoins, il est à noter que l’existence de nombreux modules Apache complexifie la configuration du serveur web. En effet, les bonnes pratiques recommandent de ne charger que les modules utiles : de nombreuses failles de sécurité affectant uniquement les modules d’Apache sont régulièrement découvertes.
On trouvera une documentation complète sur apache (en anglais) sur le site suivant :
http://httpd.apache.org/docs/.
La configuration globale d’apache s’effectue par modification du fichier de configuration /etc/apache2/apache2.conf.
Hôtes Virtuels
Cette méthode est la plus utilisée et la plus conseillée. Elle tend même à devenir un standard. Il s’agit simplement d’associer plusieurs noms DNS à une seule adresse IP.
dans /etc/apache2/sites-available se trouve un fichier nommé default…
il ressemble a ceci:
Ceci fait, enregistrez le fichier sous le nom monsite1.conf puis modifiez-le en mettant cette fois monsite2 à la place de monsite1, puis ré-enregistrez sous le nom de monsite2.conf.
Pour terminer, il vous suffit de créer des liens des deux fichiers nouvellement créés dans le sites-available à l’aide d’un script des fichiers créés auparavant dans le dossier /etc/apache2/sites-enabled. Pour ce faire, une commande a été faite spécialement :
Rédémarrer ensuite les services comme vu au dessus ..
Par exemple pour vérifier les dernières IP qui ont visité votre site web vous pouvez faire un petit tail
Et Voila !!!!!!!!!
Un version plus user friendly ici avec Webmin
Installation de Webmin
Apache dans Webmin
Pour aller plus loin :
Sécuriser Apache et son serveur
Tout d’abord Retour sur SSH qui va permettre d’accéder à votre serveur pour l’administrer. Merci a Alsacreation pour la personnalisation des scripts..
Configuration SSH
Afin de sécuriser l’accès SSH au serveur, éditons le fichier /etc/ssh/sshd_config. Nous allons changer le port de connexion par défaut pour éviter quelques attaques par bruteforce sur le port 22, qui est bien connu pour héberger ce service. N’oubliez pas de préciser ce nouveau port (dans Putty ou en ligne de commande ssh sous Linux) à la prochaine connexion.
vi /etc/ssh/sshd_config
Port 2222 # Changer le port par défaut
PermitRootLogin no # Ne pas permettre de login en root
Protocol 2 # Protocole v2
AllowUsers dew # N'autoriser qu'un utilisateur précis
Redémarrez le service SSH après ces modifications :
/etc/init.d/ssh restart
Alerte login Root
Vous pouvez éditer le fichier /root/.bashrc qui est exécuté au démarrage d’une sesion root pour envoyer un e-mail de notification. De cette façon, vous serez prévenu lorsqu’un login est effectué.
vi /root/.bashrc
Ajoutez la ligne (en modifiant l’adresse e-mail de destination) :
echo 'Accès Shell Root le ' `date` `who` | mail -s `hostname` Shell Root de `who | cut -d"(" -f2 | cut -d")" -f1` monitoring@test.com
Profitons-en pour un peu de personnalisation esthétique avec ces lignes :
alias ls='ls $LS_OPTIONS --color=auto'
alias ll='ls $LS_OPTIONS -al --color=auto'
alias vi='vim'
Mise en place d’un Firewall (source alsacreations)
vi /etc/init.d/firewall
#!/bin/sh
# Vider les tables actuelles
iptables -t filter -F
# Vider les règles personnelles
iptables -t filter -X
# Interdire toute connexion entrante et sortante
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP
# ---
# Ne pas casser les connexions etablies
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# Autoriser loopback
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT
# ICMP (Ping)
iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -j ACCEPT
# ---
# SSH In
iptables -t filter -A INPUT -p tcp --dport 2222 -j ACCEPT
# SSH Out
iptables -t filter -A OUTPUT -p tcp --dport 2222 -j ACCEPT
# DNS In/Out
iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 53 -j ACCEPT
# NTP Out
iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT
Si vous hébergez un sevreur web (Apache) :
# HTTP + HTTPS Out
iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -j ACCEPT
# HTTP + HTTPS In
iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 8443 -j ACCEPT
Si vous hébergez un serveur FTP :
# FTP Out
iptables -t filter -A OUTPUT -p tcp --dport 20:21 -j ACCEPT
# FTP In
modprobe ip_conntrack_ftp # ligne facultative avec les serveurs OVH
iptables -t filter -A INPUT -p tcp --dport 20:21 -j ACCEPT
iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Si vous hébergez un serveur de mail avec SMTP, POP3 et IMAP :
# Mail SMTP:25
iptables -t filter -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 25 -j ACCEPT
# Mail POP3:110
iptables -t filter -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 110 -j ACCEPT
# Mail IMAP:143
iptables -t filter -A INPUT -p tcp --dport 143 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 143 -j ACCEPT
# Mail POP3S:995
iptables -t filter -A INPUT -p tcp --dport 995 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 995 -j ACCEPT
N’oubliez pas de tester vos régles !!! Exemples, elles pourraient vous empêcher d’accéder à votre accés ssh si elles sont trop restrictives.
N’oubliez pas non plus de redémarrer le sevice firewall aprés les modifs..
######################################################################
IPtables / Netfilter
IPtables (associé à Netfilter) est un des meilleurs firewalls pour Linux, et certainement le plus répandu. Vous pourrez trouver de nombreux scripts de configuration à son sujet. En voici un, à adapter à votre configuration. A tout instant, utilisez la commande iptables -L -v
pour lister les règles en place.
Celles-ci portent sur 3 chaînes : INPUT (en entrée), FORWARD (dans le cas d’un routage réseau) et OUPUT (en sortie). Les actions à entreprendre sont ACCEPT (accepter le paquet), DROP (le jeter), QUEUE et RETURN.
Arguments utilisés :
- i : interface d’entrée (input)
- i : interface de sortie (output)
- t : table (par défaut filter contenant les chaînes INPUT, FORWARD, OUTPUT)
- j : règle à appliquer (Jump)
- A : ajoute la règle à la fin de la chaîne (Append)
- I : insère la règle au début de la chaîne (Insert)
- R : remplace une règle dans la chaîne (Replace)
- D : efface une règle (Delete)
- F : efface toutes les règles (Flush)
- X : efface la chaîne
- P : règle par défaut (Policy)
- lo : localhost (ou 127.0.0.1, machine locale)
######################################################################
Fail2ban
Fail2ban est un script surveillant les accès réseau grâce aux logs des serveurs. Lorsqu’il détecte des erreurs d’authentification répétées, il prend des contre-mesures en bannissant l’adresse IP grâce à iptables. Cela permet d’éviter nombre d’attaques bruteforce et/ou par dictionnaire.
Installation
apt-get install fail2ban
Configuration
vi /etc/fail2ban/fail2ban.conf
- loglevel
- Niveau de détail des logs (défaut 3)
- logtarget = /var/log/fail2ban.log
- Chemin vers le fichier de log (description des actions entreprises par fail2ban)
Les services à monitorer sont stockés dans jail.conf. Il est recommandé d’en effectuer une copie nommée jail.local qui sera automatiquement utilisée à la place du fichier exemple.
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
vi /etc/fail2ban/jail.local
Quelques paramètres globaux :
- ignoreip = 127.0.0.1
- Liste des adresses IP de confiance à ignorer par fail2ban
- bantime = 600
- Temps de ban en secondes
- maxretry = 3
- Nombre d’essais autorisés pour une connexion avant d’être banni
- destmail monitoring@test.com
- Adresse e-mail destinataire des notifications
- action
- Action à entreprendre en cas de détection positive (voir dans /etc/fail2ban/action.d/)
Chaque section possède ses propres paramètres qui prennent le pas sur les globaux s’ils sont mentionnés :
- enabled
- Monitoring activé (true) ou non (false)
- maxretry, bantime, ignoreip, destmail
- Voir ci-dessus
- port
- Port IP concerné
- logpath
- Fichier de log à analyser pour détecter des anomalies
- filter
- Filtre utilisé pour l’analyser du log
Les filtres par défaut sont stockés dans /etc/fail2ban/filter.d. Ils contiennent en général une instruction failregex suivie d’une expression régulière matchant la détection d’une authentification erronée. Par exemple pour le service Courier :
failregex = LOGIN FAILED, ip=[<HOST>]$
Note : Celle-ci peut être précisée directement dans jail.local à la section appropriée pour prendre le pas sur la directive filter.
Modifiez les ports le cas échéant dans la section ssh si vous avez suivi la recommandation ci-dessus…
enabled = true
port = 2222
Après modification de la configuration, n’oubliez pas de redémarrer fail2ban : /etc/init.d/fail2ban restart
Rkhunter
Rootkit Hunter est un programme de détection de rootkits. Vous pouvez l’installer grâce à :
apt-get install rkhunter
Il procédera à des détections journalières anti-rootkits et enverra des notifications par e-mail si nécessaire. Il est conseillé de l’installer très tôt car il calcule l’empreinte MD5 des programmes installés afin de détecter d’éventuels changements. Editez /etc/default/rkhunter pour indiquer l’adresse de notification et l’exécution journalière :
vi /etc/default/rkhunter
REPORT_EMAIL="monitoring@test.com"
CRON_DAILY_RUN="yes"
En cas de fausses détections positives sur des répertoires ou fichiers existants et sains, éditez /etc/rkhunter.conf pour les ajouter à la liste des éléments autorisés.
vi /etc/rkhunter.conf
ALLOWHIDDENDIR=/dev/.udev
ALLOWHIDDENDIR=/dev/.static
Vous pouvez également utiliser chkrootkit qui est un équivalent.
Empêcher l’accès aux sous dossiers
Bloquer l’accès à PhpMyAdmin par exemple.
Sur un reverse proxy
/etc/apache2/apache2.conf RewriteCond %{THE_REQUEST} /phpmyadmin/ RewriteRule ^.*$ - [G,L]
Via le .htaccess
Renvoie un code 403.
RewriteRule ^phpMyAdmin - [F]
Empêcher l’accès à la racine de apache
/etc/apache2/sites-available/default et /etc/apache2/sites-available/default-ssl <Directory /var/www/> Options -Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny deny from all </Directory>
Désactiver le listage des répertoires
Changer « Indexes » en « -Indexes ».
/etc/apache2/sites-available/default /etc/apache2/sites-available/default-ssl et les configurations des vhosts
Attribuer les permissions correctement
cd /var/www chown www-monsite:www-monsite -R * find . -type f -exec chmod 644 {} \; find . -type d -exec chmod 755 {} \;
Migration Serveur de Fichier avec ROBOCOPY #2012
TD RISR C8 TD Maquettage Wood
Migration de serveur de fichier avec Robocopy
Le principe consiste à faire un miroir de l’arborescence afin de déplacer le service de fichiers à d’un serveur à un autre. En environnement de production, il est préférable de respecter les étapes ci-dessous.
Pour réaliser cette migration, il est nécessaire d’utiliser la commande robocopy.
Pour les versions plus récentes (Windows Server 2003 R2 / 2008 / 2008 R2 / 2012 et 2012 R2), Robocopy est déjà intégré.
Etape 1:
Le répertoire partagé est actuellement sur le serveur A. Il faut le migrer vers le serveur B. L’objectif est de ne pas stopper l’environnement de production pour les utilisateurs.
Ce premier script permettra de copier l’intégralité des données actuelles du volume vers le serveur B. Les permissions NTFS sont prises en compte.
Pour celà, la migration du serveur A vers le serveur B va s’effectuer via un script bat. Le script va copier l’arborescence sur le serveur B dans un partage de fichiers opérationnel. Le partage du serveur A est toujours celui utilisé par les utilisateurs.
La commande robocopy prend pour paramètre la cible source et la cible destinataire.
/MIR : La commande permet de copier les nouveaux fichiers du serveur actuel vers le nouveau. Les fichiers supprimés sur l’actuel sont aussi supprimés vers le nouveau.
/SEC : La commande sec permet de prendre en compte le changement des permissions NTFS appliqués aux différents fichiers / répertoires.
Etape 2:
L’exécution du 2e script a pour objectif de copier toutes les modifications qui seront apportées entre la date à laquelle la copie principale cf.Etape 1) a été effectuée ET la date à laquelle la migration finale sera effective.
Comme de nouveaux fichiers seront crées (ou supprimés), il est nécessaire de les copier avant mise en production. La commande suivante va permettre d’appliquer la copie de façon récursive toutes les x minutes.
x permet de choisir l’intervalle de temps entre chaque synchronisation.
ATTENTION : Les droits NTFS ne sont pas mis à jour. Seuls les attributs principaux des fichiers sont pris en compte. C’est la raison pour laquelle il faut exécuter un script dans l’étape 3.
Etape 3:
Enfin, le script suivant sera exécuté lors de la migration définitive du partage de fichiers. Cette opération peut s’exécuter durant une période hors production.
Le script ci-dessus va effectuer la migration du serveur A vers le serveur B en prenant en compte les droits utilisateurs et les permissions NTFS.
Article réalisé par :
Briquet Romain (RISRC8)
Chamou Abdel-Malik (RISRC8)
Lambert Jérémy (RISRC8)
N’hésitez pas à laisser vos commentaires ou remarques au sujet de cet article.
Diplômés 2016 CESI REIMS
Sources.list Debian 8.X #CRC16 #C24
Avant de débuter vos TD’s avec Debian Jessie
Promo CRC16
Office 365 vs Echange 2013
Google du jour
Les indispensables de l’Admin système sous Debian #Rappels
-- Download Les indispensables de l'Admin système sous Debian #Rappels as PDF --
Ceci n’est pas un cours mais un petit “TIPS” pour vous aider à vous remettre dans le bain..
Créer un fichier vide
touch le-nom-du-fichier
touch -t le-nom-du-fichier (-t utilise la date indiquée plutôt que la date actuelle)
Modifier la permission d’un fichier ou dossier
chmod 755 le-nom-du-dossier-ou-fichier
chmod -R 755 le-nom-du-dossier (Modifie récursivement les autorisations des dossiers et leurs contenus)
Modifier le propriétaire d’un fichier ou Dossier
chown proprietaire le-nom-du-dossier-ou-fichier
chown -R proprietaire le-nom-du-dossier (Modifie récursivement l’appartenance des répertoires et leurs contenus)
Gestion des comptes utilisateurs
- su
sudo
- adduser
- useradd
/etc/init.d/lenomduservice start , stop
Editer un fichier sous debian
Sous Unix, et en particulier sous Linux, la configuration du système et des programmes se fait très souvent en éditant des fichiers textes qui contiennent des paramètres de configuration. Ces paramètres de configuration suivent une certaine syntaxe, différente pour chaque programme, et que l’utilisateur doit connaître. Généralement, il y a une instruction de configuration par ligne de texte. Le système ou le programme va alors lire son ou ses fichier(s) de configuration et s’adapter à la configuration demandée.
Presque tous les programmes et systèmes Unix sont conçus avec une règle qui dit qu’il ne tient pas compte des lignes du fichier de configuration qui commencent par un certain caractère (souvent #). L’utilisateur peut alors mettre des lignes de commentaires dans le fichier de configuration en commençant ces lignes par le caractère particulier. Il peut aussi facilement activer ou désactiver une ligne du fichier de configuration en enlevant ou en ajoutant le caractère particulier au début de la ligne. Le fait de désactiver ainsi une ligne de configuration se dit « commenter une ligne » et le fait d’activer ainsi une ligne de configuration se dit « décommenter une ligne ». Ces expressions seront régulièrement utilisées dans la suite de cette formation.
vi /etc/nom-du-fichier-a-editer (Editeur incontournable sur un système unix/linux)
gedit /etc/nom-du-fichier-a-editer (Editeur sous Gnome)
kedit /etc/nom-du-fichier-a-editer (Editeur sous KDE)
vim /etc/nom-du-fichier-a-editer (Version améliorer de vi mais à installer)
emacs /etc/nom-du-fichier-a-editer (Pour les puristes)
Changer son ip sous Debian
gedit /etc/network/interfaces
En statique :
auto eth0
iface eth0 inet static
address 192.168.0.7
netmask 255.255.255.0
gateway 192.168.0.254
En client DHCP :
auto eth0
allow-hotplug eth0
iface eth0 inet dhcp
Redémarrer les services réseau :
/etc/init.d/networking restart
Vider le cache DNS (Client)
Il suffit simplement de relancer le deamon NSCD :
/etc/init.d/nscd restart
Si cela ne marche pas, vous devez installer le paquet « nscd »
apt-get install nscd
Changer le nom d’hôte de votre Debian
Editez le fichier /etc/hostname
gedit /etc/hostname
Redémarrer le service hostname
/etc/init.d/hostname.sh
Testez votre modification en utilisant les commandes
hostname
hostname -f
Affiche l’état de tout les processus en cours
ps -e
Affiche les informations mise à jour périodiquement sur les processus, l’utilisation de la mémoire, du CPU.
top
Plus complet regardez ceci : http://www.tontonfred.net/blog/?p=865
Déport d’affichage par SSH
SSH possède une fonction de déport d’affichage. Il faut que le serveur SSH distant ait autorisé cette fonction.
ssh -X login@serveur.exemple.org
La programmation de tâches
Exécuter un commande périodiquement
La cron est un programme (installé par défaut) qui est chargé de lancer d’autres programmes de manière périodique et automatique. Chaque utilisateur peut définir avec sa crontab les programmes qu’il veut lancer périodiquement. Il lui suffit d’éditer sa cron et de définir la commande et sa périodicité d’exécution.
Par exemple, je veux que mon ordinateur me réveille tous les matins à 7h12 en jouant un mp3. J’édite ma crontab :
%
crontab -e
Je me retrouve alors dans vim avec un fichier vide. J’ajoute la ligne :
12 7 * * * music123 ~/music/fichier.mp3
J’enregistre et je quitte ; les changements sont alors automatiquement pris en compte par le système.
Explications :
- Les 5 premiers ensembles de caractères séparés par des espaces (ici, 12 7 * * *) définissent la fréquence. Dans l’ordre, on trouve :
- les minutes,
- les heures,
- le jour du mois,
- le mois,
- le jour de la semaine (sachant que Lundi vaut 1, Mardi vaut 2, etc.).
Pour exécuter une commande chaque jour à 7h12, on fixe donc le champ minute à 12, le champ heure à 7, puis on met des étoiles dans les autres champs pour dire qu’il faut que ce soit exécuté tous les jours dans le mois, tous les mois et tous les jours de la semaine.
- Enfin, on trouve la commande à exécuter : (ici, music123 ~/music/fichier.mp3).
Quand la cron lance un programme, elle envoie par mail à l’utilisateur le texte que ce programme écrirait sur la console s’il était lancé à la main ; sauf si le programme n’a rien écrit. Pour éviter de recevoir un mail tous les matins qui me dit qu’il a bien joué mon fichier mp3, je modifie l’entrée dans la cron en renvoyant la sortie texte du programme vers /dev/null
:
12 7 * * * music123 ~/music/fichier.mp3 1>/dev/null 2>&1
Autre exemple : j’ai une connexion permanente à Internet et je veux aussi que fetchmail aille chercher mes mails tous les quarts d’heure. J’édite ma cron et je rajoute la ligne suivante :
*/15 * * * * fetchmail –silent
Explications :
- Les 5 premiers ensembles de caractères */15 * * * * définissent la fréquence « toutes les quinze minutes ».
- J’exécute fetchmail avec l’option –silent qui n’écrit dans sa sortie que les messages d’erreur ; comme ça, je ne recevrais un mail que quand le rappatriement des mails se passe mal.
Exécuter une commande à une date donnée
Par exemple, pour exécuter les commandes date puis df -h le 28 septembre 2008 à midi 42, tapez :
%
at 12:42 28.09.2008
Vous voyez alors apparaître le prompt du programme at pour taper les commandes :
at>
date
at>
df -h
Une fois que vous avez fini de taper les commandes, utilisez la combinaison de touches Ctrl+d. Le résultat de la série de commandes, appelée job, vous sera envoyé par mail juste après leur exécution.
Pour voir la liste des jobs en attente, utilisez la commande atq. Pour annuler un job, tapez atrm numéro_du_job.
Surveiller les connexions réseau du serveur “Humour”
- netstat -laeptu
- netstat -taupe
- netstat -nao
RSAT pour SAMBA 4 #RIR
Remote Server Administration Tools
un outil d’admin pour vérifier la structure et les objets de Samba 4 à partir d’un client Microsoft
(Sans délégation de contrôle)
Par Stéphane Adnot
Installer et Configurer 2012 Server
VERSIONS : Les informations essentielles
- Edition Standard
- Edition Datacenter
- Edition Foundation
- Edition Essential
Edition Standard
- 4 To de Ram Max
- Inclus 2 licences Hyper-V
- La plupart des rôles
Edition Datacenter
- Jusqu’a 640 Coeurs
- 4 To de Ram Max
- Nombre Illimité de Machines Hyper-V
- Fonctionnalités de Cluster
Edition Foundation
- Ne peut être jointe à un Domaine
- Un seul processeur
- 32 Go de Ram Max
- Petite Entreprise
- Nombre limité de Rôles
Edition Essential (Remplacante des Versions SBS)
- 25 Utilisateurs Max
- 64 Go de Ram Max
- Pas de Hyper-V
- Pas de Cluster
Les Nouveautés marquantes dans les rôles de 2012 Server:
- Nouveau Gestionnaire de Serveur => Soit gérer un serveur, soit plusieurs Serveurs.
- Fonctionnalité : Expérience Windows Server Essential
- Fonctionnalité :WDS amélioré ==> Déploiement Windows (RIS)
- Fonctionnalité :WSUS amélioré et intégré d’origine
Les Nouveautés marquantes dans les Fonctionnalités de 2012 Server (42 Fonctionnalités)
- Clustering avec basculement
- Equilibrage de Charge
Rappels des prérequis pour l’installation d’un AD:
- Serveur Windows supportant ADDS
- IP Fixe
- Nom de Domaine valide
- Formatage NTFS
Rappels Fondamentaux AD
Rappels sur les Maîtres D’opérations (FSMO)
Rappels sur les Stratégies de groupe (GPO)
Stop motion and light painting
Stop motion and light painting
Hexanet Datacenter
Voici la video de #stopmotion en #lightpainting que j’ai réalisé pour célébrer l’inauguration du #Datacenter de #Hexanet . Elle est composée de 800 images en longue exposition non retouchées.
Merci au PDG d’HEXANET, Jean-François Collard, de m’avoir fait confiance et d’avoir mis en avant notre Art Visuel devant ses clients, et les élus de la région.
Merci aux personnels d’astreinte de Hexanet de m’avoir permis des horaires décalées..
Merci à Thomas Grivet qui m’a assisté lors de toutes les prises de vue.
N’hésitez pas à la partager sa musique est libre de droit.
Calligraphie Lumineuse
…
Remise Diplômes CESI EXIA REIMS 2014
Diplomés 2014 !!!
Man in light is a Dancer ? light Painting only ..
Intro manipulation Shell #RARE
Exo 1 Déplacements dans une arborescence de répertoires et listage du contenu
- Quel est votre répertoire courant ? Placez-vous dans votre répertoire principal ou bien la racine (si ce n’est pas déjà le cas) Affichez le contenu de votre répertoire principal
- Utilisation de l’aide en ligne :
consultez le manuel en ligne pour voir les différentes options de la commande ls
- Regardez le contenu du premier niveau de l’arborescence Unix
Exo 2 Création et manipulation de répertoires
- Replacez-vous dans votre répertoire principal
Créez un répertoire d’exercice de nom ex_unix -
Descendez dans ce répertoire
créez-y deux sous-répertoires dir1 et dir2 -
Déplacez-vous dans le répertoire dir2 Créer le fichier fich
-
Déplacez-vous dans le répertoire dir2
créé précédemment, déplacez le fichier dans le répertoire dir1 -
Détruisez le répertoire dir2. Opération qui se fait en deux étapes (à moins d’utiliser la commande rm -r) : destruction des fichiers se trouvant dans le répertoire destruction du répertoire proprement dit
Exo3 Manipulation et visualisation de fichiers
- Créer un fichier 1.txt
Expérimentez les différentes commandes de visualisation de fichiers-texte que sont : cat, more, head et tail -
Concaténez tous vos fichiers texte sur un seul fichier de nom visu.txt Vérifiez le résultat en affichant le fichier ainsi créé
-
Faites une copie du fichier visu.txt sous le nom vis2.txt
-
La commande ln permet de réaliser un lien avec un autre fichier ou répertoire.
Créez un lien pour le fichier fichier1
REVISION IOS CISCO #TRT #CRC3
Commandes d’informations
La commande show
show running-config Affiche la conguration courante
show startup-config Affiche la conguration en memoire
show interface nomInterface Affiche la conguration de l’interface
show ip interface brief Affiche une vue d’ensemble des interfaces
show ip protocols Affiche les protocoles de routage
show ip route Affiche la tables de routage
show ip access-lists Affiche les ACLs
show ip nat Affiche les translations NAT
show ip dhcp binding Affiche les reservations DHCP
show version Affiche la version d’IOS
Bonne Année !!!!!
Formation Photo “Light Painting” chez HL STUDIO à Reims
CESI REIMS Millésime 2012/2013
Formation Light Painting à partir de 49 euros
Conditions:
Se munir de son appareil photo (Reflex et Bridge capable de faire un temps de pause d’au moins 15 secondes) et si possible d’un pied si vous en avez un .
N’hésitez à en parler à vos amis et contactez-moi si vous voulez plus d’explications ou de détails
Pour vos amis : tontonfred@me.com
Enjoy !!
Scénario 1 #RARE
Une entreprise est dans l’obligation de migrer 2 serveurs 2003 R2 vers 2008 R2
Il ya un contrôleur de domaine et un contrôleur de domaine supplémentaire .Le contrôleur de domaine catalogue globale est conservé car sa configuration matériel supporte 2008 R2 .Celui-ci deviendra contrôleur de domaine supplémentaire. Et un nouveau serveur deviendra contrôleur de domaine (catalogue globale).
- Le réseau est mono domaine
- Ne pas oublier de maquetter un client Windows 7
- Les serveurs sont également serveurs de fichiers avec ou sans tolérances de pannes
- Ils n’ont pas de rôles WINS , DHCP
Il existe différentes méthodes pour migrer ceux ci..Par exemple avec ou sans rupture de production .etc…
Vous allez effectuer un travail d’analyse et de recherche pour décrire à vos yeux la meilleure solution de migration pour ce cas…
Pour jeudi j’attends de vous une méthode de migration sur papier ou électronique en décrivant chaque étape dans le détail et en vous disant que cette méthode pourra être utilisée par des collaborateurs ( n’oubliez pas de prendre le recul nécessaire d’un responsable administrateur ..)
Même si les serveurs sont déclarés “compatibles” dans le scénario ne pas omettre la partie teste de compatibilité matériel. Pour fabriquer cette méthode de migration vous devez tenir compte de tous les aspects, comme par exemple l’aspect technique , l’aspect méthodologie, l’aspect organisationnel et surtout les répercutions sur l’entreprise au moment de cette migration.
L’intérêt de cet exercice et de mettre en place une méthodologie de travail qui doit couvrir tous les aspects de votre futur métier .. Vous serez évalué sur l’ensemble des aspects à prendre en compte. Pour atteindre la notation maximale il faudra couvrir tous les aspects.
Configuration DNS Serveurs Microsoft #rappels #RARC5
#RARE
Concernant les différentes conversations avec certaines personnes au niveau de DNS , je confirme bien que Microsoft préconise de configurer les serveurs comme étudié en cours.C’est à dire avec le croisement, et la seconde position …Ceci permet d’avoir 0 problème au niveau de l’analyse de rôles ..De plus aucun phénomène de ralentissement n’est constaté sur nos serveurs de clients au niveau des requêtes DNS…
Toutefois dans la formation officielle de Microsoft sur les Serveurs 2012 la boucle locale refait son apparition dans les configurations. Le fait de mettre cette adresse fonctionne aussi biensûr sur 2008 mais génère des warnings dans l’analyse de rôle … (A tester sur 2012)
Attention Rien a voir avec les paramètres de redirecteur ..
A bon entendeur bisouxxx bye bye ..
Fondamentaux Active Directory #RARE #RAPPELS
RAPPELS:
Active Directory est le service d’annuaire de Microsoft intégré aux versions serveur de Windows.
Historiquement, Microsoft n’avait pas de service d’annuaire et beaucoup d’entreprises utilisaient le NDS de Novell.
Ce service d’annuaire est basé sur le protocole le plus connu du domaine : LDAP.
Ce protocole fonctionnant en TCP/IP, Microsoft a du utiliser cette pile de protocoles en standard et faire reculer au second plan ses protocoles historiques : Netbios, Wins, etc.
LDAP:
L’annuaire LDAP regroupe tous les objets dans un arbre.
- – La racine de cet arbre est le domaine (DNS).
- – Les branches sont des unités d’organisations (pas des objets).
- – Les feuilles sont des objets (utilisateurs, groupes, ordinateurs, …).
Ca c’est la structure historique de LDAP
Voir Slides Fred Structure Logique et physique de l’AD
Rôles FSM0 : (Flexible single master operation)
- Maître d’attribution de noms de domaines : Responsable de l’ajout/suppression des noms de domaines. Unique au sein de la forêt
- Maître de schéma : Responsable du schéma d’annuaire LDAP. Unique au sein de la forêt
- Maitre RID : Distribue les identifiants uniques aux objets de l’annuaire .Unique au sein d’un domaine
- Maitre d’infrastructure : Gère les liens entre les utilisateurs et leurs groupes.Unique au sein d’un domaine
- Emulateur CPD : Permet d’émuler le rôle de PDC et réplique les changements de mots de passe utilisateurs.Unique au sein d’un domaine
Catalogue Global:
Dans un parc contenant plusieurs contrôleurs de domaines, les serveurs de catalogue global ont une copie complète des informations de tous les contrôleurs de domaine.
Il y a toujours au moins un CG dans une forêt. Le premier serveur à être installé dans une forêt est forcément un CG.
Ainsi, si un utilisateur de nancy.cesi.fr veut se connecter sur le site de Reims (reims.cesi.fr) et que le serveur de Reims n’est pas un CG, il devra contacter son CG pour obtenir les informations du compte utilisateur.
Protégé : Shell “La piscine” #CRC13 #INTROSHELL #RAPPELS
TD Cisco du 20/06 #TRT #RARE #CPI
Sécurisation d’un SI nomade #TRT #VEILLETECHNO
Des nouvelles de “Glances” ..
Il y’a environ 2 ans j’avais testé un outil se nommant : “glances”
by nicolargo : “Glances est un logiciel libre (distribué sous licence LGPL) permettant de surveiller votre système d’exploitation GNU/Linux ou BSD à partir d’une interface texte. Glances utilise la librairie libstatgrab pour récupérer les informations de votre système. Il est développé en langage Python.”
Il remplace de nombreuses commandes et s’avère très pratique.
Depuis le monde de glances s’agrandit et on voit apparaitre les prémices d’un système de surpervision plus complet..
Et ce week J’ai pu tester non sans mal l’installation de celui-ci sur un mac (avec brew) et l’utilisation d’un mode client serveur avec une toute nouvelle application android .Trop cool et plutôt pratique…
Capture du mac:
Capture Android :
Je vous invite vivement à l’utiliser lors de vos TD et TP il vous aidera à résoudre certain problème..
Distance Administrative par défaut #TRT #CCNA2
Apache vs IIS Points forts / Points Faibles #RARE
Points Forts
- Gratuité
- Peu gourmand en ressources matérielles
- Excellente stabilité
- Facile à sécuriser nativement
- Excellent intégration des CMS dominant
Points Faibles
- Installation et administration plus laborieuses (pas d’interface graphique)
- Pas de support technique (Officiel)
Points forts
- Grande simplicité d’installation et d’utilisation
- Il faut reconnaitre que d’années en années IIS gagne en performance
Points faibles
- Coût du support technique
- Plus gourmand en ressources matérielles
- Pas de solution native pour le sécuriser correctement au niveau réseau (Firewall)
- Difficile d’intégrer les CMS dominants
Installation
http://technet.microsoft.com/fr-fr/library/cc771209.aspx
Si l’on souhaite confier à IIS un grand site Web ou un grand Intranet, la facture pour l’achat du matériel adéquat monte beaucoup plus vite que celle d’Apache et de plus la stabilité n’est pas assurée…
Apache quant à lui consomme des ressources matérielles très modestes, et il est irréprochable en termes de fiabilité. De plus, à charge égale il consomme beaucoup moins de ressources matérielles qu’IIS.
Ransomware …un petit nouveau ?? #HADOPI
Je ne le connaissais pas celui-ci…Je vais compléter ma collection..
Failles IE, WINDOWS, Flashplayer du 13/02/2013
Antivirus Windows #COMPARATIFS #RAPPELS
Histoire de remettre quelques pendules à l’heure et de casser certains mythes ..quelques captures d’un comparatif de début 2012 et début 2013 ..
Pour aider les windowsiens à choisir un antivirus…
Sinon la meilleure solution reste ….
De pas utiliser Windows 😉
Question de Alexis #Indices
NEWS #SAMBA #DISTRIBUTEUR #CESI
Personne n’a remarqué que le distributeur de friandises et boissons du CESI fonctionne sous SAMBA !!!!!!!!
Ambiance Galette … ;)
Guignol et son roi…
Ubuntu Phone OS Demonstration by Mark Shuttleworth at CES 2013
Message de soutien pour les Abonnés Free #çactavant
Client MTP Mac osx pour vos terminaux Android 4.X
Depuis Android 4.X google est passé au protocole MTP .
Avec un Mac vous avez la possibilité d’utiliser le client MTP fourni par google ICI
Appliquer un quota pour un dossier sous 2008 R2
La gestion des quotas d’origine sous 2008 R2 présente un défaut majeur : Vous n’avez pas la possibilité d’appliquer un quota pour un dossier donné mais pour un volume.
Pour palier à ceci il faut ajouter le service de rôle ” Gestionnaire de ressources du serveur de fichier” sur le rôle serveur de fichier.
Il ne vous reste plus qu’a créer un quota sur le dossier désiré.
Attention cette fois-ci on ne le croise pas avec un utilisateur..Implicitement celui-ci sera concerné grâce à sa permission d’accès.
Abonnement Free Mobile #Toujours du grand n’importe quoi
Un peu d’humour #by Alexis
Installer des packages Linux sous Mac OSX #
Journée W2K8 Autonomie C20
RARE C3 Ambiance Cupcakes !!!!!! pour le Script Bash
Prestashop, TECHNICAL ERROR: unable to add the product.
Lors de l’ajout d’un produit dans le panier, une alerte mentionne :
TECHNICAL ERROR :unable to add the product
Détail : Error thrown : Object XML HttpRequest
Text status error
la solution, avec utilisation d’un client ftp
dans le dossier classes/FrontController.php, remplacer la ligne (253) :
‘content_dir’ => $protocol_content.Tools::getServerName()._PS_BASE_URI_,
par cette ligne :
‘content_dir’ => $protocol_content.Tools::getHttpHost()._PS_BASE_URI_,
pensez à vider le cache smarty aprés cette modification…
To @Coco ;)
①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳ ⒶⒷⒸⒹⒺⒻ ⒼⒽⒾⒿⓀⓁ ⓂⓃⓄⓅⓆⓇ ⓈⓉⓊⓋⓌⓍ ⓎⓏ ⓐⓑⓒⓓⓔⓕ ⓖⓗⓘⓙⓚⓛ ⓜⓝⓞⓟⓠⓡ ⓢⓣⓤⓥⓦⓧ ⓨⓩ
(⊙▂⊙✖ )(づ  ̄ ³ ̄)づ ( c//”-}{-*\\x)(-’๏_๏’-)(◐ o ◑ )(⊙…⊙ )๏[-ิ_•ิ]๏(•ิ_•ิ)\(•ิ_•ิ\) (/•ิ_•ิ)(︶︹︺)あぃ£Ю〓§♤♥▶¤๑⊹⊱⋛⋌⋚⊰⊹ ๑۩۩.. ..۩۩๑ ๑۩۞۩๑ ✲ ❈ ✿ ✲ ❈ ➹ ~.~ ◕‿- ❣ ✚ ✪ ✣ ✤ ✥ ✦❉ ❥ ❦ ❧ ❃ ❂ ❁ ❀ ✄ ☪ ☣ ☢ ☠ ☭ღღღ ▶ ▷ ◀ ◁ ☀ ☁ ☂ ☃ ☄ ★ ☆ ☇ ☈ ⊙ ☊ ☋ ☌ ☍ⓛⓞⓥⓔ๑•ิ.•ั๑ ๑۩۞۩๑ ♬✿ ☉♡ ♢ ♣ ♤ ♥ ♦ ♧ ♨ ♩ ✙✈ ✉ ✌ ✁ ✎ ✐ ❀ ✰ ❁ ❤ ❥ ❦❧ ➳ ➽ εїз℡❣·۰•●○●ゃōゃ♥ ♡๑۩ﺴ ☜ ☞ ☎ ☏♡ ⊙◎ ☺ ☻✖╄ஐﻬ ► ◄ ▧ ▨ ♨ ◐ ◑ ↔ ↕ ▪ ▫ ☼ ♦ ▀ ▄ █▌ ▐░ ▒ ▬♦ ◊ ◦ ☼ ♠♣ ▣ ▤ ▥ ▦ ▩ ◘ ◙ ◈ ♫ ♬ ♪ ♩ ♭ ♪ の ☆ → あ ぃ £ ❤ ❁ ❀ ✿ ✾ ❃ ✺ ❇ ❈ ❊ ❉ ✱ ✲ ✩ ✫ ✬ ✭ ✮ ✰ ☆ ★ ✪ ¤ ☼ ☀ ☽ ☾ ❤ ♡ ღ☻ ☺ ❂ ◕ ⊕ ☉ Θ o O ♋ ☯ ㊝ ⊙ ◎ ◑ ◐ ۰ • ● ▪ ▫ 。 ゚ ๑ ☜ ☞ ☂ ♨ ☎ ☏▶ ▷ ◀ ◁ ☀ ☁ ☂ ☃ ☄ ★ ☆ ☇ ☈ ☉ ☊ ☋ ☌ ☍ ☑ ☒☢ ☸ ☹ ☺ ☻ ☼ ☽ ☾ ♠ ♝ ♞♯♩♪♫♬♭♮ ☎ ☏ ☪ ♈ ♨ ºº ₪ ¤ 큐 « »™ ♂✿ ♥ の ↑ ↓ ← → ↖ ↗ ↙ ↘ ㊣ ◎ ○ ● ⊕ ⊙ ○ △ ▲ ☆ ★ ◇ ◆ ■ □ ▽ ▼ § ¥〒 ¢ £ ※ ♀ ♂ © ® ⁂ ℡ ↂ░ ▣ ▤ ▥ ▦ ▧ ✐✌✍✡✓✔✕✖ ♂ ♀ ♥ ♡ ☜ ☞ ☎ ☏ ⊙ ◎ ☺ ☻ ► ◄ ▧ ▨ ♨ ◐ ◑ ↔ ↕ ♥ ♡ ▪ ▫ ☼ ♦ ▀ ▄ █ ▌ ▐ ░ ▒ ▬ ♦ ◊ ◘ ◙ ◦ ☼ ♠ ♣ ▣ ▤ ▥ ▦ ▩ ◘ ◙ ◈ ♫ ♬ ♪ ♩ ♭ ♪ ✄☪☣☢☠㊊㊋㊌㊍㊎㊏ ㊐㊑㊒㊓㊔㊕㊖㊗㊘㊜㊝㊞㊟㊠㊡㊢㊣㊤㊥㊦㊧㊨㊩㊪㊫㊬㊭㊮㊯㊰✗✘✚✪✣✤✥✦✧✩✫✬✭✮✯✰ ✱✲✳❃❂❁❀✿✾✽✼✻✺✹✸✷ ✶✵✴❄❅❆❇❈❉❊❋❖☀☂☁ 【】┱ ┲ ❣ ✪ ✣ ✤ ✥ ✦ ❉ ❥ ❦ ❧ ❃ ❂ ❁ ❀ ✄ ☪ ☣ ☢ ☠ ☭ ♈ ➸ ✓ ✔ ✕ ✖ .: ◢ ◣ ◥ ◤ ▽ ▧ ▨ ▣ ▤ ▥ ▦ ▩ ◘ ◙ ▓ ▒ ░ ™ ℡ 凸 の ๑۞๑ ๑۩ﺴ ﺴ۩๑ o(‧”’‧)o ❆ べò⊹⊱⋛⋋ ⋌⋚⊰⊹ ⓛⓞⓥⓔ ☀ ☼ ☜ ☞ ⊙® ◈ ♦ ◊ ◦ ◇ ◆ εїз❃❂❁❀✿✾✽✼✻✺✹✸✷ ✶✵✴❄❅❆❇❈❉ ❊❋❖❤❥❦❧↔ ↕ ▪ → ︷╅╊✿ (¯`•._.• •._.•´¯)(¯`•¸•´¯) ❤`•.¸¸.•´´¯`•• .¸¸.•´¯`•.•●•۰• ••.•´¯`•.•• ••.•´¯`•.••—¤÷(`[¤* *¤]´)
๑•ิ.•ั๑ ๑۩۞۩๑ ♬✿.。.:* ★ ☆ εїз℡❣·۰•●○●ōゃ ♥ ♡๑۩ﺴ ☜ ☞ ☎ ☏♡ ⊙◎ ☺ ☻✖╄ஐﻬ ► ◄ ▧ ▨ ♨ ◐ ◑ ↔ ↕ ▪ ▫ ☼ ♦ ▀ ▄ █▌ ▐░ ▒ ▬♦ ◊ ◦ ☼ ♠♣ ▣ ▤ ▥ ▦ ▩ ◘ ◙ ◈ ♫ ♬ ♪ ♩ ♭ ♪ の ☆ → あ ぃ £ ❤# @ & * ❁ ❀ ✿ ✾ ❃ ✺ ❇ ❈ ❊ ❉ ✱ ✲ ✩ ✫ ✬ ✭ ✮ ✰ ☆ ★ ✪ ¤ ☼ ☀ ☽ ☾ ❤ ♡ ღ☻ ☺ ❂ ◕ ⊕ ☉ Θ o O ♋ ☯ ㊝ ⊙ ◎◑ ◐ ۰ • ● ▪ ▫ 。 ゚ ๑ ☜ ☞ ☂ ♨ ☎ ☏ × ÷ = ≠ ≒ ∞ ˇ ± √ ⊥▶ ▷ ◀ ◁ ☀ ☁ ☂ ☃ ☄ ★ ☆ ☇ ☈ ☉ ☊ ☋ ☌ ☍ ☑ ☒☢ ☸ ☹ ☺ ☻ ☼ ☽ ☾ ♠ ♡ ♢ ♣ ♤ ♥ ♦ ♧ ♨ ♩ ✙ ✈ ✉ ✌ ✁♝ ♞♯♩♪♫♬♭♮ ☎ ☏ ☪ ♈ ♨ ₪ ™ ♂✿ ♥ の ↑ ↓ ← → ↖ ↗ ↙ ↘ ㊣ ◎ ○ ● ⊕ ⊙ ○ △ ▲ ☆ ★ ◇ ◆ ■ □ ▽ ▼ § ¥ 〒 ¢ £ ※ ♀ ♂ &⁂ ℡ ↂ░ ▣ ▤ ▥ ▦ ▧ ✐✌✍✡✓✔✕✖ ♂ ♀ ♥ ♡ ☜ ☞ ☎ ☏ ⊙ ◎ ☺ ☻ ► ◄ ▧ ▨ ♨ ◐ ◑ ↔ ↕ ♥ ♡ ▪ ▫ ☼ ♦ ▀ ▄ █ ▌ ▐ ░ ▒ ▬ ♦ ◊ ◘ ◙ ◦ ☼ ♠ ♣ ▣ ▤ ▥ ▦ ▩ ◘ ◙ ◈ ♫ ♬ ♪ ♩ ♭ ♪ ✄☪☣☢☠░ ▒ ▬ ♦ ◊ ◦ ♠ ♣ ▣ ۰•● ❤ ●•۰► ◄ ▧ ▨ ♨ ◐ ◑ ↔ ↕ ▪ ▫ ☼ ♦♧♡♂♀♠♣♥❤☜☞☎☏⊙◎ ☺☻☼▧▨♨◐◑↔↕▪ ▒ ◊◦▣▤▥ ▦▩◘ ◈◇♬♪♩♭♪の★☆→÷¤——(•·÷[ ]÷·•)—
Alerte Sécurité Flashplayer du 29/03/2012
Faites de l’informatique…
Edito du 28/01/2012
Pour les petits malins qui essayent des failles XSS ,CSS etc
All connections are logged …nothing interesting here, go fuck !!
VR GPub 4.0 CSRF et d’autres….
Sondage Licence Globale le retour …
Encore de retour je relance la question et le débat.
La licence globale est une proposition française visant à légaliser les échanges non-commerciaux de contenus audiovisuels à travers Internet, en contrepartie d’une rétribution forfaitaire redistribuée aux ayants droit, proportionnellement à la densité de téléchargement que leurs œuvres ont suscité.
Tout ceci n’inclut pas les logiciels.
En gros c’est : 5 € par abonné et par mois…
Pour vous faire une idée.
http://fr.wikipedia.org/wiki/Licence_globale
http://www.framasoft.net/article5097.html
http://medialab.sciences-po.fr/controversies/2011/ecole_com/licence_globale/
[lasonde sd_id=”2709″]
Yesterday by JcFrog ..
Portes ouvertes CESI EXIA Reims 10/12/2011
Révision Cisco CRC11
Père Noël stp ;)
Pour Louis à propos du patch Battlefield 3 ..
http://blogs.battlefield.ea.com/Default.aspx##
Comment la vraie vie devrait un peu plus s’inspirer des Internets en 3 leçons
Install Active Directory By CRC9
Un exemple d’install simple
Nouveau Domaine
Nouvelle Arborescence
Nouvelle Forêt
[stream provider=video base=x:/www.tontonfred.net flv=AD.flv embed=true share=false width=640 height=360 dock=true controlbar=over bandwidth=med autostart=false /]