Vous regardez une version antérieure (v. /confluence/display/BM35/Installation+d%27un+serveur+Edge+%3A+Nginx+et+Postfix) de cette page.

afficher les différences afficher l'historique de la page

Vous regardez la version actuelle de cette page. (v. 1) afficher la version suivante »

Présentation

Le présent document a pour but de décrire la procédure de déploiement d'un serveur de type Edge BlueMind comme relais postfix et proxy.

Principe

  • BlueMind est installé sur le serveur principal
  • le rôle bm-edge-role est installé sur le serveur dit "Edge"
  • le serveur web nginx du serveur edge est configuré comme relais proxy servant le serveur principal

Sur cette page :

En rapport :

bm-edge-role-principe

Procédure de déploiement

  1. Installer BlueMind sur le serveur principal en suivant la procédure habituelle

    L'espace de stockage des backups de BlueMind doit être accessible sur ce nouveau serveur sous /var/backups/bluemind

  2. installer la souscription sur le serveur secondaire en tant que fichier

    Rappel : le fichier texte correspondant à la souscription peut être installé manuellement sur un serveur

    • pour Ubuntu / Debian en tant que /etc/apt/sources.list.d/bm.list
    • pour RedHat / CentOS en tant que /etc/yum.repos.d/bm.repo
  3. installer le paquet bm-edge-role sur le serveur proxy

    # Ubuntu / Debian
    proxy.bluemind.loc:~$ sudo aptitude update
    proxy.bluemind.loc:~$ sudo aptitude install bm-edge-role
    # RedHat / CentOS
    proxy.bluemind.loc:~$ sudo yum makecache
    proxy.bluemind.loc:~$ sudo yum install bm-edge-role
  4. ajouter le rôle de relais smtp au serveur proxy dans le panneau d'administration du serveur principal
    • se connecter à BlueMind sur le serveur principal avec l'utilisateur  admin0@global.virt
    • naviguer dans Gestion du Système > Serveurs de l'application
    • cliquer sur le bouton Nouveau serveur
    • remplir les informations du nouveau serveur et cliquer sur Créer
    • une fois le serveur ajouté à la liste, cliquer sur la ligne correspondant au serveur proxy
    • dans l'onglet Rôles du serveur, cocher la case Relai de messagerie puis cliquer sur le bouton Enregistrer
    • dans la liste des serveurs, le serveur proxy apparaît bien avec le tag lié au relais de messagerie mail/smtp-edge
  5. configurer le domaine pour utiliser le serveur proxy comme relais de messagerie
    • toujours en tant qu'utilisateur admin0@global.virt, naviguer dans Gestion du Système > Domaines supervisés
    • cliquer sur la ligne correspondant au domaine à configurer
    • dans l'onglet Messagerie , sélectionner le serveur proxy comme relais de messagerie puis cliquer sur Enregistrer
  6. configurer le serveur pour envoyer les mails sortant à travers le relais
    • toujours en tant que l'utilisateur admin0@global.virt, naviguer dans Gestion du Système > Configuration Système
    • dans l'onglet Messagerie, remplir le champ Relais avec l'adresse IP ou le nom d'hôte du serveur proxy puis cliquer sur Enregistrer

 

Configuration de Nginx

  1. Se connecter en tant que root sur le serveur proxy
  2. naviguer jusqu'au dossier /etc/nginx/sites-available

    proxy.bluemind.loc:~# cd /etc/nginx/sites-available
  3. créer un fichier de configuration bm-proxy et l'éditer, par exemple avec vim

    proxy.bluemind.loc:/etc/nginx/sites-available# vim bm-proxy
  4. ajouter les lignes suivantes

    server {
      listen 80;
      # <url_externe_bluemind> désigne l'url externe à laquelle les utilisateurs se connectent
      server_name <url_externe_bluemind>;
    
      location / {
    	return 301 https://<url_externe_bluemind>$request_uri;
      }
    }
    
    server {
      listen 443;
      server_name <url_externe_bluemind>;
    
      ssl on;
      ssl_certificate /etc/ssl/certs/bm_cert.pem;
      ssl_certificate_key /etc/ssl/certs/bm_cert.pem;
      ssl_session_timeout 5m;
      ssl_prefer_server_ciphers on;
    
      ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
      ssl_ciphers 'EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA256:EECDH:+CAMELLIA128:+AES128:+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!IDEA:!ECDSA:kEDH:CAMELLIA128-SHA:AES128-SHA';
      add_header Strict-Transport-Security max-age=15768000; # six months
    
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    
     location / {
    	# <srv_interne> est le serveur BlueMind principal
        proxy_pass https://<srv_interne>;
      }
    
      location /webmail/ {
        client_max_body_size 0m;
        proxy_pass https://<srv_interne>/webmail/;
      }
    
      location /Microsoft-Server-ActiveSync {
        proxy_pass https://<srv_interne>/Microsoft-Server-ActiveSync;
        proxy_read_timeout 1200s;
        proxy_headers_hash_bucket_size 128;
        proxy_headers_hash_max_size 2048;
        client_max_body_size 10m;
        proxy_pass_header Server;
      } 
    
      location /eventbus {
        proxy_pass https://<srv_interne>;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
      }
    
      location /api/filehosting/ {
        client_max_body_size 0m;
        proxy_pass https://<srv_interne>$request_uri;
        proxy_set_header        X-Real-IP       $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_http_version 1.1;
        proxy_buffering off;
      }
    
      location /api/attachment/ {
        client_max_body_size 0m;
        proxy_pass https://<srv_interne>$request_uri;
        proxy_set_header        X-Real-IP       $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_http_version 1.1;
        proxy_buffering off;
      }
    
      location /fh/ {
        proxy_pass https://<srv_interne>/fh/;
        proxy_http_version 1.1;
        proxy_buffering off;
      }
    }
    
  5. sauvegarder le fichier et quitter l'éditeur
  6. exécuter les commandes suivantes pour mettre en place la configuration

    proxy.bluemind.loc:/etc/nginx/sites-available# ln -s /etc/nginx/sites-available/bm-proxy /etc/nginx/sites-enabled/
    proxy.bluemind.loc:/etc/nginx/sites-available# rm /etc/nginx/sites-enabled/default
  7. recharger la configuration du serveur nginx

    Commande pour BlueMind 3.0.x
    proxy.bluemind.loc:/etc/nginx/sites-available# service nginx reload
    Commande pour BlueMind 3.5.x
    proxy.bluemind.loc:/etc/nginx/sites-available# service bm-nginx reload

Proxy Nginx et messagerie

  1. Sur le serveur proxy, copier le fichier de configuration du serveur principal situé à l'emplacement /etc/nginx/global.d/bm-proxy-mail.conf (il est possible d'utiliser scp)

    proxy.bluemind.loc:~# scp root@srv1.bluemind.loc:/etc/nginx/global.d/bm-mail-proxy.conf /etc/nginx/global.d/
  2. éditer le fichier /etc/nginx/global.d/bm-mail-proxy.conf sur le serveur relais et remplacer l'adresse IP de la ligne auth_http par l'adresse IP du serveur principal

  3. recharger la configuration nginx

    Commande pour BlueMind 3.0.x
    proxy.bluemind.loc:~# service nginx reload
    Commande pour BlueMind 3.5.x
    proxy.bluemind.loc:~# service bm-nginx reload

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

  • Aucune étiquette