admin:procedures:installation_serveur_physique
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
admin:procedures:installation_serveur_physique [2017/06/30 12:50] – [Firewall] fpoulain | admin:procedures:installation_serveur_physique [2023/11/11 19:02] (Version actuelle) – dokuwiki formatting pitchum | ||
---|---|---|---|
Ligne 6: | Ligne 6: | ||
Ne pas hésiter à lire https:// | Ne pas hésiter à lire https:// | ||
En particulier, | En particulier, | ||
- | | + | |
+ | < | ||
Cette commande permet de récupérer le nom de l' | Cette commande permet de récupérer le nom de l' | ||
Ligne 12: | Ligne 14: | ||
sur chaque disque, activer le "mode grub" | sur chaque disque, activer le "mode grub" | ||
- | | + | < |
- | > set 1 bios_grub on | + | # parted /dev/sda |
- | > quit | + | > set 1 bios_grub on |
- | # grub-install /dev/sda | + | > quit |
+ | # grub-install /dev/sda | ||
+ | </ | ||
====== libvirt ====== | ====== libvirt ====== | ||
- | Rappel : virt-manager à besoin de netcat-openbsd (enfin d'un netcat avec -U) | + | Rappel : '' |
Sur Coon : | Sur Coon : | ||
- | | + | * On édite le réseau |
- | + | | |
- | | + | |
- | + | | |
- | | + | * '' |
- | + | ||
- | | + | |
- | + | ||
- | + | ||
- | systemctl disable libvirt-guests pour éviter que les machines démarrent toutes seules sans action explicite | + | |
- | d'un admin (ce qui ne devrait pas être possible, car le point de montage de la partition des qcow ne peut | + | |
- | pas être monté automatiquement | + | |
====== Firewall ====== | ====== Firewall ====== | ||
- | On utilisera firehol. Pour les détails quant à l' | + | On utilisera |
<note warning> | <note warning> | ||
- | On pensera à définir les services pour drbd et icinga : | + | On pensera à définir les services pour '' |
<code bash / | <code bash / | ||
#FHVER: 1:213 | #FHVER: 1:213 | ||
Ligne 49: | Ligne 46: | ||
client_icinga_ports=" | client_icinga_ports=" | ||
</ | </ | ||
- | <code bash / | + | <code bash / |
#FHVER: 1:213 | #FHVER: 1:213 | ||
# La premiere ligne ci dessus est nécessaire !! | # La premiere ligne ci dessus est nécessaire !! | ||
Ligne 55: | Ligne 52: | ||
client_drbd_ports=" | client_drbd_ports=" | ||
</ | </ | ||
- | ===== Sur coon ===== | ||
- | On reste permissif : même si les routes ne sont pas censées être celles là, on n' | + | ===== Script |
- | <code bash / | + | On a un script de firewalling destiné à être identique entre maine et coon. La différence se situant au niveau de la configuration. |
- | ## IPv6 | + | |
+ | Dans le principe on reste permissif : même si les routes ne sont pas censées être celles là, on n' | ||
+ | |||
+ | Il faut par ailleurs gérer le dnat sur l'IP de FIP. On le fait en premier car c'est une contrainte de la conf de firehol. Ensuite il faut penser dans les routeurs comme si la destination était changée. Le bon goût de cette conséquence est que la gestion ipv6 est assez bien intégrée. Enfin on contrôle l'IP de sortie du cluster avec une règle de SNAT. | ||
+ | |||
+ | <code bash / | ||
+ | ################################################################################ | ||
+ | # Configuration | ||
+ | ################################################################################ | ||
+ | |||
+ | myPrivateIp=" | ||
+ | myPublicIp4=" | ||
+ | myPublicIp6=" | ||
+ | |||
+ | clusterPrivateNetwork=" | ||
+ | clusterV6Network=" | ||
+ | |||
+ | # Si vous décommentez la ligne qui suit, le firewall considérera que fip | ||
+ | # pointe sur cette machine avec l' | ||
+ | |||
+ | # fip=" | ||
+ | |||
+ | declare -A dispatching=( | ||
+ | | ||
+ | [" | ||
+ | | ||
+ | [" | ||
+ | [" | ||
+ | | ||
+ | ) | ||
+ | |||
+ | ################################################################################ | ||
+ | # / | ||
+ | ################################################################################ | ||
+ | |||
+ | ################################################################################ | ||
+ | # NAT pour ipv4 | ||
+ | ################################################################################ | ||
+ | if test -n " | ||
+ | then | ||
+ | for service in " | ||
+ | do | ||
+ | eval " | ||
+ | dport=" | ||
+ | protos=" | ||
+ | ipv4=" | ||
+ | for proto in $protos | ||
+ | do | ||
+ | ipv4 dnat to $ipv4 inface enp0s31f6 dst $fip proto $proto dport $dport | ||
+ | done | ||
+ | done | ||
+ | |||
+ | # Contrôle de l'IP de sortie | ||
+ | ipv4 snat to $fip outface enp0s31f6 | ||
+ | fi | ||
+ | |||
+ | ################################################################################ | ||
+ | # IPv6 | ||
+ | ################################################################################ | ||
ipv6 interface any v6interop proto icmpv6 | ipv6 interface any v6interop proto icmpv6 | ||
client ipv6neigh accept | client ipv6neigh accept | ||
Ligne 66: | Ligne 120: | ||
policy return | policy return | ||
+ | ################################################################################ | ||
# DHCP | # DHCP | ||
+ | ################################################################################ | ||
interface4 virbr0 dhcp | interface4 virbr0 dhcp | ||
policy return | policy return | ||
server dhcp accept | server dhcp accept | ||
+ | ################################################################################ | ||
+ | # FIP -> ME | ||
+ | # The purpose of this interface is to control the traffic | ||
+ | # on the enp0s31f6 interface destinated to fip IP. | ||
+ | ################################################################################ | ||
+ | if test -n " | ||
+ | then | ||
+ | interface enp0s31f6 fip_trafic dst4 $fip dst6 $myPublicIp6 | ||
+ | |||
+ | # The default policy is DROP. | ||
+ | policy drop | ||
+ | |||
+ | # Protection anti flood | ||
+ | protection strong | ||
+ | |||
+ | # Services acceptés | ||
+ | server ICMP accept | ||
+ | server ICMPV6 | ||
+ | |||
+ | # The following means that this machine can REQUEST anything via enp0s31f6. | ||
+ | client all accept | ||
+ | fi | ||
+ | |||
+ | ################################################################################ | ||
# EXT->ME | # EXT->ME | ||
# The purpose of this interface is to control the traffic | # The purpose of this interface is to control the traffic | ||
- | # on the enp0s31f6 interface | + | # on the enp0s31f6 interface |
- | interface enp0s31f6 external_trafic dst4 94.130.8.3 | + | ################################################################################ |
+ | interface enp0s31f6 external_trafic dst4 $myPublicIp4 | ||
# The default policy is DROP. | # The default policy is DROP. | ||
Ligne 83: | Ligne 164: | ||
# Services acceptés | # Services acceptés | ||
- | server ICMP accept | ||
server ssh accept | server ssh accept | ||
+ | server ICMP accept | ||
+ | server ICMPV6 accept | ||
# The following means that this machine can REQUEST anything via enp0s31f6. | # The following means that this machine can REQUEST anything via enp0s31f6. | ||
client all accept | client all accept | ||
+ | ################################################################################ | ||
# LAN->ME | # LAN->ME | ||
# The purpose of this interface is to control the traffic | # The purpose of this interface is to control the traffic | ||
- | # on the {enp1s0, | + | # on the {enp1s0, |
- | interface " | + | ################################################################################ |
+ | interface " | ||
# On est entre amis | # On est entre amis | ||
Ligne 111: | Ligne 195: | ||
client all accept | client all accept | ||
+ | ################################################################################ | ||
# Clients on enp0s31f6 (Internet) accessing servers on {enp1s0, | # Clients on enp0s31f6 (Internet) accessing servers on {enp1s0, | ||
+ | ################################################################################ | ||
router ext2me inface enp0s31f6 outface " | router ext2me inface enp0s31f6 outface " | ||
protection strong | protection strong | ||
+ | ################################################################################ | ||
# Clients on {enp1s0, | # Clients on {enp1s0, | ||
+ | ################################################################################ | ||
router me2ext inface " | router me2ext inface " | ||
masquerade | masquerade | ||
Ligne 121: | Ligne 209: | ||
route all accept | route all accept | ||
+ | ################################################################################ | ||
# Clients on {enp1s0, | # Clients on {enp1s0, | ||
+ | ################################################################################ | ||
router me2me inface " | router me2me inface " | ||
# If you remove it, no REQUEST will pass matching this traffic. | # If you remove it, no REQUEST will pass matching this traffic. | ||
route all accept | route all accept | ||
- | # Clients | + | ################################################################################ |
- | router6 me2me6 | + | # Clients on enp0s31f6 |
- | route all accept | + | ################################################################################ |
+ | if test -n " | ||
+ | then | ||
+ | for service in " | ||
+ | do | ||
+ | eval " | ||
+ | dport=" | ||
+ | protos=" | ||
+ | ipv4=" | ||
+ | ipv6=" | ||
+ | for proto in $protos | ||
+ | do | ||
+ | router " | ||
+ | | ||
+ | server $service | ||
+ | done | ||
+ | done | ||
+ | fi | ||
</ | </ | ||
- | ===== Sur maine ===== | + | ===== Configuration sur coon ===== |
+ | <code bash / | ||
+ | ################################################################################ | ||
+ | # Configuration | ||
+ | ################################################################################ | ||
+ | myPrivateIp=" | ||
+ | myPublicIp4=" | ||
+ | myPublicIp6=" | ||
+ | clusterPrivateNetwork=" | ||
+ | clusterV6Network=" | ||
+ | |||
+ | # Si vous décommentez la ligne qui suit, le firewall considérera que fip | ||
+ | # pointe sur cette machine avec l' | ||
+ | |||
+ | # fip=" | ||
+ | |||
+ | declare -A dispatching=( | ||
+ | | ||
+ | [" | ||
+ | | ||
+ | [" | ||
+ | [" | ||
+ | | ||
+ | ) | ||
+ | |||
+ | </ | ||
+ | |||
+ | ===== Configuration sur maine ===== | ||
+ | |||
+ | <code bash / | ||
+ | ################################################################################ | ||
+ | # Configuration | ||
+ | ################################################################################ | ||
+ | |||
+ | myPrivateIp=" | ||
+ | myPublicIp4=" | ||
+ | myPublicIp6=" | ||
+ | |||
+ | clusterPrivateNetwork=" | ||
+ | clusterV6Network=" | ||
+ | |||
+ | # Si vous décommentez la ligne qui suit, le firewall considérera que fip | ||
+ | # pointe sur cette machine avec l' | ||
+ | |||
+ | fip=" | ||
+ | |||
+ | declare -A dispatching=( | ||
+ | | ||
+ | [" | ||
+ | | ||
+ | [" | ||
+ | [" | ||
+ | | ||
+ | ) | ||
+ | </ |
admin/procedures/installation_serveur_physique.1498827006.txt.gz · Dernière modification : 2017/06/30 12:50 de fpoulain