Suppression des NO-BREAK SPACE

find . -type f |grep .md | xargs sed -i $'s/\x23\xC2\xA0/# /g'
master
Pierre Coimbra 2020-02-23 11:49:36 +01:00
parent 30e9acb34a
commit c96b26eb12
No known key found for this signature in database
GPG Key ID: F9C449C78F6FAEE6
12 changed files with 33 additions and 33 deletions

View File

@ -2,7 +2,7 @@
Il faut impérativement une VM pour que Docker soit fluide
## Installation de Docker
## Installation de Docker
```
apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -

View File

@ -2,7 +2,7 @@
Il faut impérativement une VM pour que Docker soit fluide
## Installation de Docker et Docker-Compose
## Installation de Docker et Docker-Compose
```
apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -

View File

@ -29,7 +29,7 @@ Voici les choix techniques faits afin de répondre à ces objectifs
![Topologie de HAProxy](schema_haproxy.png)
## Création d'un canal d'échange par clé entre les deux containers
## Création d'un canal d'échange par clé entre les deux containers
Afin de pouvoir faire des scp de manière automatique entre les deux containers, il faut mettre en place une connexion ssh par clé en root entre les deux containers.
Le procédé est le même, en voici les variantes,

View File

@ -2,7 +2,7 @@
Nous allons mettre en place un proxy interne pour permettre au services des zones n'ayant pas un accès direct à internet (PROXY, INT, CTF et DIRTY) d'accéder au gestionnaire de packet et à internet (via WGET). Le proxy interne sera dans la zone DMZ, il fera donc le lien entre l'extérieur et les services.
## Apt Cacher NG
## Apt Cacher NG
Pour l'accès au gestionnaire de packet nous allons utiliser Apt-Cacher NG.
### Installation
@ -23,11 +23,11 @@ systemctl restart apt-cacher-ng.service
```
Apt-Cacher est désormais sur le port 9999 du proxy interne. Il n'est accessible que depuis les zones PROXY, INT, CTF et DIRTY. Les requêtes depuis d'autres zones seront rejetées.
## Squid
## Squid
Pour l'accès à internet via WGET nous allons utiliser Squid.
### Installation
### Installation
```
apt-get install -y squid3 ca-certificates
```
@ -59,7 +59,7 @@ systemctl restart squid.service
Squid est maintenant accessible depuis le port 3128 du proxy interne uniquement depuis les zones PROXY, INT, CTF et DIRTY. Les requêtes depuis d'autres zones seront rejetées.
## Accès au Proxy Interne depuis un container ou une VM
## Accès au Proxy Interne depuis un container ou une VM
Les outils principaux sont WGET et APT-GET on va donc les reliées au Proxy Interne.
@ -69,10 +69,10 @@ Le proxy interne sera accessible uniquement depuis les zones PROXY, INT, CTF et
- CTF (VLAN 40) -> 10.0.3.254
- DIRTY (VLAN 50) -> 10.0.4.254
### WGET
### WGET
Les requêtes passerons désormais par le proxy interne sur le port 3128 pour les requêtes http et https. Seul le root aura accès au proxy.
#### /root/.wgetrc
#### /root/.wgetrc
```
http_proxy = http://<ip_proxy_zone>:3128/
https_proxy = http://<ip_proxy_zone>:3128/

View File

@ -2,7 +2,7 @@
Nous allons ici mettre en place le serveur LDAP qui sera répliqué sur les deux nodes. Tout les services utiliseront LDAP pour l'authentification des utilisateurs.
A noté que pour des questions pratique nous n'allons pas utilisé Fusion Directory, il faudra donc créer un schéma pour chaque service et modifier les utilisateur avec ldapadd et ldapmodify.
Pour la sécurisation de LDAP nous allons utiliser LDAP avec STARTTLS.
## Installation slapd
## Installation slapd
On commence par installer le serveur ldap.
```
apt-get update
@ -25,13 +25,13 @@ Database backend to use: MDB
Do you want the database to be removed when slapd is purged? YES
Allow LDAPv2 protocol? No
```
### /etc/ldap/ldap.conf
### /etc/ldap/ldap.conf
```
BASE dc=krhacken,dc=org
URI ldap://IP.LDAP/
```
## Centralisation des fichiers de configuration
## Centralisation des fichiers de configuration
Nous allons créer un répertoire /root/ldap/conf qui va centraliser tous nos fichiers de configuration
```
mkdir -p /root/ldap/conf/
@ -120,7 +120,7 @@ ldapsearch -xLLL -H ldap://localhost -D cn=viewer,ou=system,dc=krhacken,dc=org -
doit retourner une erreur, si on ajout -ZZ à la fin ça doit fonctionner
## Configuration des futurs client LDAP
## Configuration des futurs client LDAP
Sur tout les futurs client LDAP il faudra activer la connexion SSL.
Il faut commencer par copier le certificat de la CA (ca_server.pem)
```
@ -134,7 +134,7 @@ TLS_CACERT /etc/ldap/ca_certs.pem
...
```
## Droits d'accès pour la configuration
## Droits d'accès pour la configuration
### /root/ldap/conf/acces-conf-admin.ldif
```
dn: olcDatabase={0}config,cn=config
@ -186,7 +186,7 @@ Vérification
ldapsearch -QLLLY EXTERNAL -H ldapi:/// -b "cn=config" "Objectclass=olcModuleList"
```
## refint
## refint
L'overlay permet de sassurer de la cohérence de lannuaire lors de suppression dentrées.
### /root/ldap/conf/refint_act.ldif
```
@ -452,14 +452,14 @@ Commande pour la connexion à un utilisateur
ldapsearch -xLLLH ldap://localhost -D uid=PSEUDO,ou=krhacken,ou=people,dc=krhacken,dc=org -W -b "dc=krhacken,dc=org" "uid=PSEUDO"
```
## Groupes
## Groupes
Il existe deux types de groupes : les posixgroup et les groupofnames.
Les posixgroup sont similaires au groupes Unix, et les groupofnames ressemblent plus à des groupes AD.
Pour faire simple, lavantage des groupofnames est quavec un filtre sur un utilisateur, on peut connaitre ses groupes (avec loverlay memberof). Chose impossible avec les posixgroups.
### /root/ldap/conf/Group.ldif
### /root/ldap/conf/Group.ldif
```
dn: cn=cloud,ou=sysgroup,ou=group,dc=krhacken,dc=org
cn: cloud
@ -494,14 +494,14 @@ On ajoute l'utilisateur avec
ldapmodify -cxWD cn=admin,dc=krhacken,dc=org -y /root/pwdldap -f addusertogroup.ldif
```
# Sécurisation de l'annuaire
# Sécurisation de l'annuaire
## Comptes avec permissions réduite
## Comptes avec permissions réduite
Nous allons créer deux compte systèmes.
- Un viewer qui aura uniquement les droits en lecture de l'arbre
- Un Writer qui lui aura les droits en écriture
### /root/ldap/conf/viewer.ldif
### /root/ldap/conf/viewer.ldif
```
dn: cn=viewer,ou=system,dc=krhacken,dc=org
objectClass: simpleSecurityObject
@ -527,7 +527,7 @@ ldapadd -cxWD cn=admin,dc=krhacken,dc=org -y /root/pwdldap -f writer.ldif
```
On autorise la lecture de l'arbre uniquement au utilisateur authentifié en modifiant une ACL
### /root/ldap/conf/acl.ldif
### /root/ldap/conf/acl.ldif
```
dn: olcDatabase={1}mdb,cn=config
changetype: modify

View File

@ -474,7 +474,7 @@ query_filter = (&(maildomain=%s)(objectClass=maildomainkrhacken)(maildomainactif
result_attribute = maildomain
result_filter = REJECT Goodbye
```
### /etc/postfix/ldap/check_sender_domains_reject.cf
### /etc/postfix/ldap/check_sender_domains_reject.cf
Bloque les FROM TO vers les mails non attribués
```
server_host = ldap://10.0.1.6
@ -932,7 +932,7 @@ postfix reload
systemctl restart rspamd
```
## Machine Learning en fonction des actions des utilisateurs
## Machine Learning en fonction des actions des utilisateurs
Les mails Spam sont considérées comme Spam et les mails lisible sont considérées comme Ham.
Couplé avec Dovecot, Rspamd nous propose de pouvoir apprendre également en fonction des actions des utilisateurs. Si un mail est déplacé vers le répertoire spam, il sera appris comme tel et au contraire, sil est sorti du répertoire Spam vers autre chose que la corbeille, il sera appris comme Ham.
### /etc/dovecot/conf.d/90-sieve-extprograms.conf
@ -1052,7 +1052,7 @@ location /rspamd/ {
}
```
## Entrée DNS
## Entrée DNS
### SPF
Permet de valider auprès des récepteurs de nos mails que nous somme vraiment l'expéditeur légitime du mail.
```

View File

@ -6,7 +6,7 @@ Ce service est redondé car vital, son IP est 10.0.0.6 sur Alpha et 10.0.0.7 sur
## Objectif
Il doit rediriger les requêtes arrivant de HAProxy vers le bon container en fonction de l'hostname. Pour cela nous allons utiliser des serveurs web HTTP avec des proxy sur Nginx sans s'occuper de l'autre serveur web.
## Création d'un canal d'échange par clé entre les deux containers
## Création d'un canal d'échange par clé entre les deux containers
Afin de pouvoir faire des scp de manière automatique entre les deux containers, il faut mettre en place une connexion ssh par clé en root entre les deux containers.
Le procédé est le même, en voici les variantes,

View File

@ -32,7 +32,7 @@ Une fois la VM redémarrée pour la première fois, il faut faut assigner les in
Il faut configurer 2 interfaces pour commencer, une le WAN (wan vlan 10) et une pour le LAN (interne vlan 10). On ajoutera le reste plus tard.
# En attente du choix WAN...
# En attente du choix WAN...
### Règles (uniquement DNAT)
- DNAT 80,443 dmz:10.0.0.5

View File

@ -17,6 +17,6 @@ Deux combinaisons possibles
## En ipv6
Un réseau uniquement ipv6 serait plus compliqué à mettre en place au niveau des accès depuis des clients ipv4. Cependant un bloc d'ipv6 en plus d'une ou deux ipv4 serait un plus.
## Conclusion
## Conclusion
Le choix qui serait le plus fiable au niveau de la gestion de la disponibilité du serveur serait une ipv4 pour l'accès au firewall et une seconde ipv4 pour l'accès direct au serveur car plus sûr en cas de crash des deux VM. Avec un bloc d'ipv6 pour pouvoir rajouter progressivement le support de l'ipv6.

View File

@ -53,7 +53,7 @@ Vérifier la cohérence et lancer l'installation.
### Sur la deuxième node (Beta)
Même procédure, dans "Management Network Configuration" il faut juste remplacer le Hostname par **beta.krhacken.org**
## Préparation des hyperviseurs
## Préparation des hyperviseurs
La procédure est la même sur les deux nodes. Elle peut être faite via SSH (recommandé) ou sur l'interface d'administration **https://IP:8006**
### Mise à jour
@ -79,7 +79,7 @@ pveam download local debian-10.0-standard_10.0-1_amd64.tar.gz
### Images VM
Nous aurons besoin de VM OPNSense (Pare-Feu) et de VM debian, il faut donc télécharger les derniers ISO disponibles.
#### OPNSense
#### OPNSense
VM nécessaire car c'est une distribution Free-BSD
Obtention du lien de Téléchargement sur le [site officiel](https://opnsense.org/download/)
@ -94,7 +94,7 @@ Le lien donné sera utilisé par la suite
wget -P /var/lib/vz/template/iso <lien_obtenu>
```
#### Debian
#### Debian
VM nécessaire pour faire tourner efficacement Docker
Obtention du lien de Téléchargement sur le [site officiel](https://www.debian.org/distrib/netinst)

View File

@ -80,14 +80,14 @@ Switch Administration VLAN 100
- [...] Voir DNS
# Réseau physique
# Réseau physique
La configuration et les branchement à faire sur le switch sera détaillé plus tard.
# Réseau virtuel
Cette partie consiste à mettre en place OpenvSwitch sur les deux nodes.
## Installation
## Installation
Commune aux deux nodes
```
apt-get update

View File

@ -1,7 +1,7 @@
# Topologie globale de l'infrastructure
Le réseau sera découpé en deux sous-réseaux matérialisés par des switchs virtuels : le réseau interne accessible directement depuis l'extérieur et le réseau d'administration accessible uniquement via un VPN.
## Réseau WAN
## Réseau WAN
Le réseau WAN permettra de faire le lien entre l'extérieur, les pare-feux et les hyperviseurs.