vendredi 24 décembre 2021

Utiliser un compte gmail comme relais SMTP

Gmail propose d'utiliser ses services pour envoyer jusqu'a 500 courriers par jour. 

Gmail

Si vous utilisez l'authentification en deux étapes

  • Connectez vous sur votre compte personnel gmail avec cette URL : https://security.google.com/settings/security/apppasswords
  • Ajoutez un nouveau mot de passe d'application :
    • Application : Messagerie
    • Appareil : Autre
    • Donnez un nom personnalisé, par exemple : TestLinux
    • Gardez une copie du mot de passe de 16 caractères qui a été généré (fichier sasl_pass).

Si vous utilisez l'authentification classique

  • Il faut aller dans le compte perso, partie sécurité, puis activer "L'accès moins sécurisé des applications"
  • Il est aussi important de valider tous les warnings liés à la sécurité de votre compte (Examiner l'activité liée à la sécurité)
  • Le mot de passe à utiliser sera le mot de passe classique.

Postfix

  • Installez les paquets : postfix mutt libsasl2-2 ca-certificates libsasl2-modules
    • Utilisez le type d'installation "Site internet"
    • Utilisez un nom de domaine quelconque, il est tout de même préférable de garder une cohérence avec vos sites
  • Dans /etc/postfix/main.cf, modifiez les lignes suivantes :
    • smtpd_tls_security_level=encrypt
    • smtp_tls_security_level=encrypt
    • relayhost=[smtp.gmail.com]:587
  • A la fin de /etc/postfix/main.cf, on ajoute les lignes :
    • smtp_sasl_auth_enable=yes
    • smtp_sasl_password_maps=hash:/etc/postfix/sasl_pass
    • smtp_sasl_security_options=noanonymous
    • smtp_use_tls=yes
  • Créez un nouveau fichier /etc/postfix/sasl_pass, avec la ligne suivante :
    [smtp.gmail.com]:587 votreCompte@gmail.com:votreMotDePasseDe16CaractèresSansEspaces
  • Changez les droits du fichier /etc/postfix/sasl_pass en "400"
  • Créez la base de données sasl : postmap /etc/postfix/sasl_pass
  • Relancez postfix

Limitations

  • Pour ne pas dépasser le quota de 500 messages par jour, il est possible d'ajouter les lignes suivantes à la fin du fichier main.cf :
    • default_destination_rate_delay = 175
    • default_destination_concurrency_limit = 1
    • default_extra_recipient_limit = 1
  • 175 secondes entre chaque messages ==> 493 messages par 24 heures

Tests

  • Ecrire trois nouveaux messages :
    • echo "aaa bbb ccc" | mutt -s "test1" uneCible@free.fr
    • echo "aaa bbb ccc" | mutt -s "test2" uneCible@free.fr
    • echo "aaa bbb ccc" | mutt -s "test3" uneCible@free.fr
  • Lancez la commande "mailq" pour voir le contenu de la liste d'attente.

dimanche 12 décembre 2021

Mise en oeuvre d'un serveur "gitea"

Introduction Gitea est un dépôt git complet (HTTP/HTTPS et SSH) qui consomme peu de mémoire. Il est facilement installable sur une distribution "Alpine linux". Installation Sur une "Alpine linux 3.14", 32 bits,  384 Mo de mémoire, disque dur de 32 Go. Il ne doit pas y avoir de  […]

Lire la suite

samedi 11 décembre 2021

Installation de la distribution "alpine linux"

Introduction Alpine linux 3.14 est une distribution très légère qui est idéale pour créer des machines virtuelles de production (sur LXC, ou Proxmox par exemple). Les principales caractéristiques de cette distribution sont : Nombreux processeurs compatibles : i386, amd64, arm, ppc64 Taille de disque  […]

Lire la suite

mardi 22 juin 2021

Blocage de l'accès en fonction du pays (iptables)

Principe Mes serveurs personnels sont uniquement utilisés en France ou en Europe. De plus, je remarque que de nombreuses attaques viennent de pays lointains. Il est donc nécessaire de réduire la surface d'attaque en n'autorisant que certains pays. Pour cela il existe différentes solutions qui  […]

Lire la suite

samedi 31 octobre 2020

Haproxy en mode http

  Haproxy peut être utilisé en mode http, avec prise en charge des acl(s), ou en mode tcp (pass-through). Mon article ne présente que le mode http. Maquette Le reverse-proxy dispose de l'adresse 192.168.16.30 dans mon exemple. J'utilise une Debian 10. Le serveur web qui héberge www.foo.net :  […]

Lire la suite

lundi 12 octobre 2020

LXC 3.0 sur Debian 10

Pourquoi revenir à LXC ? J'ai utilisé avec bonheur LXD 2.0 sur Ubuntu 16.04, mais depuis la version 4.0 il est obligatoire d'utiliser "snap" pour l'installation. J'ai alors eu de gros problèmes de compatibilité entre les conteneurs crées sur "apt" et leur mise en oeuvre avec  […]

Lire la suite

vendredi 15 mai 2020

LXD 4.0 sur Ubuntu 20.04

Installation avec la commande : apt install lxd En réalité, la commande apt execute un "snap". Il n'y a pas de version classique. Première initialisation Would you like to use LXD clustering : no Do you want to configure a new storage pool : yes Name of the new storage pool : default Name  […]

Lire la suite

lundi 11 mai 2020

Systemd (systemctl)

Systemd (commande "systemctl") est un système d'initialisation qui a été spécifiquement conçu comme alternative à SysVinit ( commandes "/etc/init.d" et "service"). Ce service est activé par défaut, à partir des distributions suivantes : Debian 8 Ubuntu 16.04 CentOs 7  […]

Lire la suite

vendredi 3 avril 2020

Première utilisation d'OpenNebula

Utilisation d'OpenNebula en tant que front-end pour un cloud privé. Les noeuds fonctionnent avec LXD. Nebula-1.webm  […]

Lire la suite

mardi 31 mars 2020

Installation d'une maquette OpenNebula

Objectif OpenNebula est une solution de cloud privé, complète et assez simple à mettre en oeuvre La maquette disposera de 4 machines virtuelles : Un routeur DebHub16 ou Pfsense, pour que chaque élève soit isolé Un front-end OpenNebula basé sur Debian 10 64 bits : mémoire 1 Go, disque de 20 Go, 1  […]

Lire la suite

samedi 28 mars 2020

Downgrade du réseau sur Ubuntu 16.04 et plus

Voici deux manipulations qui permettent de revenir à la configuration réseau de l'Ubuntu 14.04 Predictable Network Interface Device Names Vous ne voulez plus des interfaces réseau du style "eno1", "enp0s1" et revenir à "eth0" Dans le fichier /etc/default/grub, à la  […]

Lire la suite

dimanche 24 novembre 2019

La commande netstat

La commande Netstat permet de lister tous les ports ouverts sur une machine Options utiles -p  Affiche le nom du programme -t  Tous les ports TCP en mode "ETABLISHED" ou "WAIT" -u  Tous les ports UDP en mode "ETABLISHED" ou "WAIT" -a  Voir aussi les ports en  […]

Lire la suite

mardi 29 octobre 2019

Quick reference OpenSuse 15

Configuration réseau Configuration d'une carte réseau Les fichiers sont dans le dossier "/etc/sysconfig/network" Sur un serveur en mode CLI, le réseau doit être géré par "Wicked". En GUI, il doit être géré par "NetworManager". Il est possible de changer de mode avec  […]

Lire la suite

Quick reference CentOs 8

Configuration réseau Configuration d'une carte réseau Les fichiers sont dans le dossier "/etc/sysconfig/network-scripts" Il y a un fichier de configuration par carte réseau. Pour la carte "enp0s3" par exemple, il faut utiliser le fichier "ifcfg-enp0s3" Exemple d'adresse  […]

Lire la suite

dimanche 25 août 2019

Clé live-usb MX

La distribution MX linux 18.3 est basée sur Debian9 et permet de réaliser facilement un live-usb avec persistance des données Installation Il faut commencer par charger l'image ISO de MX linux 18.3, et installez celle-ci sur un live-cd. Une alternative est de partir directement d'une clé MX déja  […]

Lire la suite

mercredi 21 août 2019

Mise en oeuvre d'un serveur CentOs 7 ou 8 (64 bits)

Installation CentOs7 J'utilise le CD d'installation "CentOS-7-x86_64-NetInstall-1908.iso L'installateur fonctionne graphiquement, la souris est "presque" fonctionnelle. Dans certains cas il faut utiliser les touches "tab" "enter" et "echap" ! La carte  […]

Lire la suite

lundi 24 juin 2019

LXD 3.0 sur Ubuntu 18.04

Objectif Réaliser une installation de LXD, avec prise en charge de limites : Taille de la mémoire Taille du disque dur Nombre de processeurs Utilisation des profiles "default" (bridge lxdbr0) et "mac" (macvlan) Machine physique Ubuntu 18.04 64 bits est installé sur un disque  […]

Lire la suite

samedi 22 juin 2019

LXD sur un réseau local

Objectif L'utilisation de LXD derrière un bridge "lxdbr0" impose d'utiliser des règles de NAT. Une seule adresse réseau est visible (celle de l'hôte), et bien sur à cause du DNAT, chaque port ne peux être dirigé que vers un seul conteneur. J'ai donc cherché une autre solution, pour que  […]

Lire la suite

mardi 9 avril 2019

Remplacement d'Ansible et sshd sur Cygwin

Critique d'Ansible, après 1 an d'utilisation Ansible est un système qui fonctionne correctement dans le cadre de l'administration système. Les machines cibles sont généralement assez rapides pour que tout se passe sans timeout ! En ce qui concerne l'accès aux machines virtuelles des élèves, sur des  […]

Lire la suite

dimanche 7 octobre 2018

Mise en place d'une configuration de proxy automatique

Principe Le serveur DHCP distribue un nom de domaine par défaut. Le serveur DNS dispose d'un enregistrement "wpad" qui pointe vers un serveur web. Un fichier "wpad.dat" doit être situé à la racine. Les navigateurs sont configurés en "détection automatique des paramètres  […]

Lire la suite

mardi 7 août 2018

Utiliser Ansible avec un serveur Windows

Ansible communique avec Windows grace au protocole winrm, il n'est pas possible d'utiliser SSH. Winrm est apparu avec la version 3.0 de powershell. C'est la version qui est installé par défaut sur Windows 2012 et/ou Windows 8.0 Installation sur le serveur Ansible (Linux) apt-get install python-pip  […]

Lire la suite

vendredi 6 juillet 2018

Retour d'experience sur Ansible en production

Introduction Les scripts YAML d'Ansible peuvent avoir leur interêt, mais je trouve que l'utilisation de scripts Bash est préférable (c'est un avis personnel) : La vitesse Bash+Ansible est la même que Ansible+YAML En Bash je dispose des boucles et de tests Créer des scripts d'installation en Bash,  […]

Lire la suite

jeudi 21 juin 2018

Utilisation du système de gestion de configuration Ansible

Installation Le serveur ansible sera nommé (ans) et la machine à piloter (foo). Sur ans (Ubuntu 18.04) : apt-get install ansible Sur ans, création d'une paire de clés : ssh-keygen A créer dans /root/.ssh/ansible Pas de Passphrase Sur ans, dans /etc/ansible/ansible.cfg : remote_port = 22  […]

Lire la suite

mercredi 20 juin 2018

Backup d'un conteneur LXD

Pour réaliser le backup d'une machine LXD, je propose la méthode suivante : Arrêt du conteneur foo Déplacement dans le dossier /var/lib/lxd/containers/foo Archivage avec TAR. Les compressions gzip, bzip2 et xz fonctionnent Démarrage du conteneur foo Voici un script qui utilise cette méthode de  […]

Lire la suite

lundi 18 juin 2018

Optimisation d'un serveur LAMP

Php5 Dans /etc/php5/apache2/php.ini : Post_max_size = 64M Upload_max_filesize = 64M Apache2 Dans /etc/apache2/mods-enabled/mpm-prefork.conf : StartServers                         2 (à la place de 5) MinSpareServers                  2 (à la place de 5) MaxSpareServers                 5 (à la place de  […]

Lire la suite

lundi 28 mai 2018

Création d'une base de donnée Mysql

Eventuellement, pour vider une ancienne base : drop database foo; Puis : create database foo; create user 'fooUser'@'localhost' identified by 'unMotDePasse'; grant all on foo.* to 'fooUser'@'localhost'; flush privileges; Créer un pseudo-root pour MariaDb create user 'admin'@'localhost' identified  […]

Lire la suite

samedi 19 mai 2018

Eviter d'être considéré comme un spammeur

Si on utilise un serveur SMTP personnel, il arrive souvent que les mails envoyés soient considérés comme des spams. Voici quelques astuces pour éviter cela : Outil J'utilise un site qui permet de déterminer ce qui ne fonctionne pas. Ce site propose gratuitement d'effectuer 3 tests par jour :  […]

Lire la suite

Création de switchs virtuels sur Linux

Vde.png

Il est possible d'utiliser des switchs virtuels administrables sur Linux. Ces switchs peuvent ensuite être interfacés avec Virtualbox. Les switchs VDE permettent d'utiliser les VLANS Installation Sur Ubuntu : apt-get install vde2 Pour créer un switch et sa console d'administration : vde_switch -d -s  […]

Lire la suite

Nom des distributions Debian et Ubuntu LTS

Debian 6  Squeeze 7  Wheezy 8  Jessie 9  Stretch 10  Buster 11  Bullseye Ubuntu 8.04  Hardy 10.04  Lucid 12.04  Precise 14.04  Trusty 16.04  Xenial 18.04  Bionic 20.04  Focal 22.04  Jammy  […]

Lire la suite

Utiliser un raspberry comme serveur de virtualisation

Il est possible d'utiliser un Raspberry pi 2 ou 3 comme machine hôte pour plusieurs machines "virtuelles". Le processeur ARM ne dispose pas de la fonction VTx, il est impossible d'utiliser KVM. Par contre il est possible d'utiliser l'isolation LXC ou LXD. Si on garde la distribution  […]

Lire la suite

vendredi 18 mai 2018

LXD 2.0 sur Ubuntu 16.04 en mode bridge (lxdbr0)

Introduction LXD est une amélioration de LXC réalisé par Canonical. LXD est un cousin de Docker, les deux logiciels reposent sur LXC, l'utilisation est toutefois totalement différente. LXD est pré-installé sur les machines Ubuntu 16.04, 32 et 64 bits. Si vous voulez utiliser LXD, utilisez Ubuntu !  […]

Lire la suite

Finalisation de la configuration d'une machine Ubuntu 16.04 et plus

A la fin de l'installation d'un serveur ubuntu 16.04, 32 ou 64 bits il faut : Débrayer la mise à jour automatique qui a tendance à bloquer les commandes "apt-get update" et "apt-get upgrade" : Dans le fichier /usr/lib/apt/apt.systemd.daily, modifier la ligne AutoAptEnable=1, pour  […]

Lire la suite