Blogs intéressants
Blog d'Omid Ameri : Dédié à la virtualisation et au système.
Sponsor

PostHeaderIcon AWX l’alternative gratuite à Ansible Tower

Article publiée le 03 octobre 2017

Tous les utilisateurs connaissent Ansible Tower, l'interface graphique pour gérer Ansible créé par RedHat qui est une solution très onéreuse! Hors une variante opensource existe également sponsorisé depuis peu par RedHat :AWX

Ci-dessous une petite doc d'installation dédiée adaptée aux distributions RedHat/CentOS:

  • Installez Ansible: yum install ansible
  • Créer le fichier install_aws.yml qui contiendra le playbook d'installation AWX:

- name: Deploy AWX
hosts: all
become: true
become_user: root

tasks:

- name: sort out the yum repos
yum:
name: "{{ item }}"
state: "latest"
with_items:
- "epel-release"
- "yum-utils"

- name: add the docker ce yum repo
yum_repository:
name: "docker-ce"
description: "Docker CE YUM repo"
gpgcheck: "yes"
enabled: "yes"
baseurl: "https://download.docker.com/linux/centos/7/$basearch/stable"
gpgkey: "https://download.docker.com/linux/centos/gpg"

- name: install the prerequisites using yum
yum:
name: "{{ item }}"
state: "latest"
with_items:
- "epel-release"
- "libselinux-python"
- "python-wheel"
- "python-pip"
- "git"
- "docker-ce"

- name: start and enable docker
systemd:
name: "docker"
enabled: "yes"
state: "started"

- name: install the python packages using pip
pip:
name: "{{ item }}"
state: "latest"
with_items:
- "pip"
- "ansible"
- "boto"
- "boto3"
- "docker"

- name: check out the awx repo
git:
repo: "https://github.com/ansible/awx.git"
dest: "~/awx"
clone: "yes"
update: "yes"

- name: install awx
command: "ansible-playbook -i inventory install.yml"
args:
chdir: "~/awx/installer"

 

  • Exécutez le playbook (pensez à rajouter votre machine dans le fichier /etc/ansible/hosts):

ansible-playbook -i hosts install_aws.yml

  • Une fois le playbook exécuté vous devriez avoir des container docker monté:

 

  • Connectez vous sur l'interface Web via l'url suivante: http://<ipoudnsdevotremachine>
  • Attendez que l'installation de AWX se finalise:

  • Une fois l'installation terminée authentifiez vous avec les identifiants par défaut (login : admin, mot de passe: password):

 

  • Une fois authentifié le dashboard AWX sera affiché :

Comme vous pouvez le constater l'interface AWX est identique à celle de Tower!… Lire la suite

PostHeaderIcon Tutoriel | Gérez vos container docker avec Portainer

Article publié le 2 Octobre 2017

Un petit tutoriel afin de vous présenter un outil peu connu mais extrêmement puissant vous permettant de gérer vos environnements Docker avec une simplicité sans égale: Portainer.

Si vous cherchez une interface graphique pour gérer votre environnement docker, portainer est fait pour vous!

Afin de suivre ce tuto, Docker doit-être installé sur votre machine. Un tuto sur l'installation et la configuration de  docker est disponible :

https://journaldunadminlinux.fr/tuto-docker-demarrer-avec-docker/

1) Installation de Portainer

Portainer est livré nativement dans un container docker. Pour le déployer :

docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v /opt/portainer:/data portainer/portainer

Une fois le container déployé connectez vous à l'interface web via l'adresse suivante: http://ipdevotremachine:9000

 

2) Configuration

Lors de la première connexion, il vous sera demandé de créer le mot de passe du user admin:

Il vous sera demandé ensuite de "brancher" votre instance portainer à votre machine Docker.… Lire la suite

PostHeaderIcon Présentation de Zentyal 5

Article publié le 1er Octobre 2017

Deux après la rédaction de mon article sur la solution IPCOP (https://journaldunadminlinux.fr/tutoriel-securiser-son-reseau-avec-ipcop/), je vais partager aujourd'hui ma nouvelle découverte: Zentyal.

Zentyal est une solution de sécurité (mais pas seulement) Opensource vous offrant pleins de fonctionnalités:

  • Mise en réseau (Networking)
    • Pare-feu (informatique) et routage
      • Filtrage
      • NAT (Network address translation) et redirections de port
      • VLAN 802.1Q (Réseau local virtuel)
      • Support de passerelles IP multiples (PPPoE and DHCP)
      • Règles de passerelle multiple, équilibrage de charge et basculement automatique
      • Lissage du trafic (à l'aide d'une couche d'application)
      • Suivi graphique de la vitesse du trafic
      • Système de détection d'intrusions dans le système
      • Client DNS dynamique
    • Infrastructure réseau
      • Serveur DHCP (Dynamic Host Configuration Protocol)
      • Serveur NTP (Network Time Protocol)
      • Serveur DNS
        • Mises à jour dynamiques via DHCP (Dynamic Host Configuration Protocol)
      • Serveur RADIUS (Remote Authentication Dial-In User Service)
    • Prise en charge VPN
      • Autoconfiguration de routes dynamiques
    • Proxy HTTP
      • Cache Internet
      • Authentification de(s) utilisateur(s)
      • Filtrage de contenu (avec des listes par catégorie)
      • Antivirus transparent
    • Système de détection d'intrusions
    • Serveur mail
      • Domaines virtuels
      • Quotas
      • Soutien pour Sieve
      • Récupération de compte externe
      • POP3 et IMAP avec SSL/TLS
      • Filtre antispam et antivirus
        • Listes grises, noires et blanches
      • Filtre proxy transparent POP3
      • Compte "catch-all" (fourre-tout)
  • Messagerie internet (webmail)
  • Serveur internet (web server)
    • Hôtes virtuels
  • Autorité de certification
  • Travail de groupe (workgroup)
    • Gestion centralisée des utilisateurs et des groupes
      • Soutien maître/esclave
      • Synchronisation avec un contrôleur de domaine Windows Active Directory
    • Windows PDC
      • Système de mot de passe
      • Assistance pour les clients Windows 7
    • Partage des ressources en réseau
      • Serveur de fichiers
        • Antivirus
        • Corbeille
      • Serveur d'impression
    • Groupware: partage de calendriers, agendas, repertoire, boîte mail, wiki, etc.
Lire la suite

PostHeaderIcon Tutoriel | Répartition de charge en fonction des ressources disponibles sur vos machines avec HAPROXY

Article publiée le 23 Septembre 2017

Il y a quelque temps, je suis tombé sur la problématique suivante: comment faire en sorte que mon LoadBalancer HAProxy répartisse les connexions sur les machines ayant le moins de charge CPU?

Un collègue m'a alors fait suivre une doc qui m'a apporté la solution.

Ci-dessous un petit tuto vous expliquant comment procéder en prenant comme exemple la répartition d'un flux SSH sur 2 machines. Rien ne vous empêche d'adapter ce tuto  pour rediriger d'autres type de connexion (HTTP, etc...)

1) Configuration de votre serveur HAPROXY

  • Installez HAPROXY:

Sous Debian/Ubuntu:

apt-get install haproxy

Sous RedHat/Centos

yum install haproxy

Éditez le fichier /etc/haproxy/haproxy.cfg (pensez à faire une sauvegarde avant) et écrasez le contenu avec la configuration ci-dessous:

global
log 127.0.0.1 local2
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
maxconn 4000
user haproxy
group haproxy
daemon

 

# turn on stats unix socket

stats socket /var/lib/haproxy/stats

 

defaults
mode tcp
log global
option dontlognull
option http-server-close
#option forwardfor except 127.0.0.0/8
option redispatch
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
maxconn 3000

 

 

listen haproxy_servers

#bind correspond au port d'écoute de votre HAPROXY

bind *:2222
mode tcp
option tcplog
timeout client 10800s
timeout server 10800s
#balance leastconn
default-server inter 10s downinter 5s rise 2 fall 2 slowstart 60s maxconn 200 maxqueue 250 weight 100 error-limit 10 on-error mark-down on-marked-down shutdown-sessions agent-port 9707 agent-inter 30s
server monserveur1.mondomaine.net monserveur1.mondomaine.net:22 check agent-check observe layer4
server monserveur2.mondomaine.net monserveur2.mondomaine.net:22 check agent-check observe layer4
server localhost 127.0.0.1:22 maxconn 500 backup weight 1

 

backend servers

mode tcp
option tcplog
#balance roundrobin
server monserveur1.mondomaine.net monserveur1.mondomaine.net:22
server monserveur2.mondomaine.net monserveur2.mondomaine.net:22

2) Installation de l'agent sur les machines hôtes

Déployez l'agent en suivant les instructions ci-dessous sur chacune des machines qui recevra la charge.… Lire la suite

PostHeaderIcon tuto | Installez et configurez rundeck (ordonnanceur opensource)

Article publié le 14 Août 2017

Article mis à jour le 6 Septembre 2017

J'ai eu l'occasion de tester pas mal d'ordonnanceur et j’ai remarqué que la plupart du temps les solutions du marché sont onéreuses, difficile à mettre en place et dur à maîtriser.

C'est pour ces raisons que j'ai été impressionné par la solution Rundeck.

Cet ordonnanceur open-source est extrêmement simple à mettre en place et à administrer. De plus énormément de plugins sont disponible ce qui permet de bénéficier d'un paquet de fonctionnalités supplémentaire (intégration d'Ansible, etc...)

 

1) Installation

Sous Debian/Ubuntu:

Installez Java:

apt-get install openjdk-8-jdk

Télécharger le paquet DEB sur le site officiel de Rundeck et installez le.… Lire la suite

PostHeaderIcon Tuto | Installer et configurer un serveur WildFly

Article publiée le 7 Juin 2017

WildFly est un fork opensource de Jboss. Ce serveur d'application Java EE représente une alternative à crédible par rapport aux autres serveurs d'application JAVA type weblogic, websphère (tutoriel d'installation disponible ici), Jboss, etc...

Ce tutoriel explique comment installer et configurer rapidement un serveur WildFly afin qu'il soit opérationnel. Nous ne rentrerons pas dans les fonctionnalités avancées du produit.

1) Installation

Avant toute chose, Wildfly doit être exécuté via un user système dédié (surtout pas en root!).

Le choix de la distribution importera peu (Debian/Ubuntu ou Centos/RedHat feront très bien l'affaire). Assurez que JAVA soit installé sur votre serveur.… Lire la suite

PostHeaderIcon Tuto | Installer et configurer OpenNebula sous Debian

Article publié le 6 Juin 2017

Cela fait un petit moment que je m'intéresse aux technologies Cloud (AWS, OpenStack, etc...) et OpenNebula a particulièrement attiré mon attention par sa simplicité d'installation.

C'est pourquoi, je vous propose un petit tutoriel d'installation sur OpenNebula sous Debian.

Pour suivre ce tutoriel, vous aurez besoin d'au minimum deux VMs: Une VM pour l'interface de gestion et d'une ou plusieurs VMs pour les hôtes (hyperviseurs).

 

1) Installation de l'interface de gestion

1.1) Installation des paquets

On installe les dépôts:

wget -q -O- http://downloads.opennebula.org/repo/Debian/repo.key | apt-key add -

echo "deb http://downloads.opennebula.org/repo/5.2/Debian/8 stable opennebula" > /etc/apt/sources.list.d/opennebula.list

On installe les paquets:

apt-get update & apt-get install opennebula opennebula-sunstone opennebula-gate opennebula-flow

A adapter selon la version de votre Debian (à l'heure ou cet article a été écrit, la 9 n'est pas encore sortie en version stable)

 

On installe des bibliothèques Gem supplémentaires

/usr/share/one/install_gems

Activation d'openNebula:

systemctl enable opennebula
systemctl enable opennebula-sunstone

1.2) Installation du stockage partagé

On installe le serveur NFS:

apt-get install nfs-common nfs-kernel-server

Dans le fichier /etc/exports ajoutez la ligne suivante:

/var/lib/one/ *(rw,sync,no_subtree_check,root_squash)

Activez  nfs:

systemctl enable nfs-kernel-server

Démarrez nfs:

systemctl start nfs-kernel-server

1.3 Installation de la base de données

La base de données par défaut est SQLITE.… Lire la suite

PostHeaderIcon PyDash | Outil de monitoring Web pour Linux

Article publiée le 11 Avril 2017

J'ai découvert par hasard un petit outil de monitoring Web en temps réel nommé PyDASH. Cet outil développé en Python vous permet d'avoir un aperçu global de votre machine:

 

1) Installation

1.1) Prérequis

Installez les prérequis:

Sous Debian/Ubuntu:

apt-get install git python-pip apache2 libapache2-mod-wsgi

Sous Redhat/Centos

Installez les dépots EPEL:

yum install epel-release

Puis installez les prérequis:

yum install git python-pip httpd mod-wsgi

 

1.2) Installation de PyDASH

On installe ensuite PyDASH:

Positionnez-vous dans le répertoire apache censé contenir le contenu (par défaut /var/www)

Rapatriez les sources depuis le dépôt GIT officiel

git clone https://github.com/k3oni/pydash

Positionnez-vous dans le répertoire pydash/pydash et changez la valeur SECRET_KEY contenue dans le fichier setting.py

Installez-le framework python Django (framework Web Python):

pip install -r requirement.txt

On initialise la base de donnée interne:

./manage.py syncdb

Ensuite attribuez les bons droits au répertoire racine pydash:

chown -R apache:apache pydash    - Pour les distribution Redhat/Centos

chown -R www-data-:www-data  - Pour les distributions Debian/Ubuntu

1.3) Configuration du serveur Apache

Sous Centos/RedHat

Créez le fichier /etc/httpd/conf.d/pyfash.conf et ajoutez y les lignes suivantes:

 

 WSGISocketPrefix run/wsgi
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
ServerName dummy-host.example.com

WSGIDaemonProcess pydash display-name=%{GROUP} python-path=/var/www/pydash
WSGIProcessGroup pydash
WSGIScriptAlias / /var/www/pydash/pydash/wsgi.py
service apache2 reload
Alias /static /var/www/pydash/static/
Alias /media /var/www/pydash/media/

<Directory /var/www/pydash/pydash>
<Files wsgi.py>
Order deny,allow
Allow from all
</Files>
</Directory>

#CustomLog logs/pydash-access_log common
#ErrorLog logs/pydash-error_log
</VirtualHost>

Sous Debian/Ubuntu

Créez le fichier /etc/apache2/sites-available/pydash.conf et ajoutez y les lignes suivantes (sans oublier de tapez la commande "a2ensite pydash.conf" pour activer votre VirtualHost) :

 WSGISocketPrefix /var/run/apache2/wsgi
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
ServerName dummy-host.example.com

WSGIDaemonProcess pydash display-name=%{GROUP} python-path=/var/www/pydash
WSGIProcessGroup pydash
WSGIScriptAlias / /var/www/pydash/pydash/wsgi.py

Alias /static /var/www/pydash/static/
Alias /media /var/www/pydash/media/

<Directory /var/www/pydash/pydash>
<Files wsgi.py>
Order deny,allow
Allow from all
</Files>
</Directory>

#CustomLog logs/pydash-access_log common
#ErrorLog logs/pydash-error_log
</VirtualHost>

 

 

Recharger ensuite la configuration de votre serveur apache:

service apache2 reload

 

 

 

 

 … Lire la suite

PostHeaderIcon Tuto | Installation et configuration de nginx + Loadbalancing

Article publiée le 10 Avril 2017

Durant mon temps libre, j'ai décidé de m'intéresser de prêt à Nginx. Il est vrai que je n'ai jamais eu l'occasion de le mettre en place étant donné que l'intégralité de mes environnements WEB tournent avec Apache. Nginx est un serveur Web spécialement conçu pour encaisser de très forts trafics. Les performances de celui-ci sont nettement supérieures à ceux d'Apache. De plus, Nginx intègre une fonctionnalité de LoadBalancing très puissante. Cependant, l'inconvénient majeur de Nginx est qu'il ne peut gérer nativement du contenu  dynamique (PHP par exemple). Il faudrait pour cela passer par une configuration légèrement plus fastidieuse par rapport à celle d'Apache.… Lire la suite

PostHeaderIcon Tuto Docker | Gérer vos container avec Docker compose

Article publiée le 10 Février 2017

Après mon tuto sur Docker (http://journaldunadminlinux.fr/tuto-docker-demarrer-avec-docker/) je continue dans ma lancée en vous présentant l'outil docker-compose. Docker-compose est un outil officiel Docker  absolument génial qui permet de gérer à 100% vos container uniquement avec un fichier de configuration yml. Cet outil est d'autant plus pratique si vos applications nécessite l'installation de plusieurs containers pour fonctionner.

I) Installation

L'installation est très simple (curl doit être installé sur votre machine):

curl -L https://github.com/docker/compose/releases/download/1.11.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose

 

La commande docker-compose doit fonctionner:

 

2) Utiliser Docker Compose

Pour vous montrer comment fonctionne docker-compose je vais prendre comme exemple l'installation d'un GITLAB complet sous Docker (base de données + application).… Lire la suite

PostHeaderIcon Tuto Docker | Démarrer avec Docker

Article publié le 09/02/2017

Mis à jour le 02/10/2017

Après mal de temps, j'ai enfin décidé à me mettre à étudier Docker. Étant très hésitant au départ, je me suis vite aperçu que Docker est un outil extrêmement puissant, flexible avec un potentiel Devops incroyable.

La question que se posent beaucoup de personnes est: qu'est-ce que c'est Docker? Contrairement à la virtualisation classique ou vous virtualisez l'intégralité de la machine et tout se qu'elle héberge, Docker n'héberge  que les applications et les librairies!

 

 

 

 

I) Installation

Sous Debian: 

On ajoute les dépôts docker et on installe:

echo "deb https://apt.dockerproject.org/repo debian-jessie main" > /etc/apt/sources.list.d/docker.list

apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D

apt-get update && apt-get install docker-engine

Sous Centos:

On ajoute les dépôts docker et on installe:

vi /etc/yum.repos.d/docker.repo
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
yum install docker-engine
systemctl enable docker
systemctl start docker
Afin de nous faciliter la vie, on attribue les droits à notre utilisateur pour éviter de bosser avec root.… Lire la suite

PostHeaderIcon Tuto | Installation d’un serveur PostgreSQL multi-instances

Article publiée le 27 Décembre 2016

Je continue dans ma lancée des tutoriels concernant l'installation et la configuration de base de données multi instance (cf: tuto sur l'installation d'une base Mysql multi instance: http://journaldunadminlinux.fr/tuto-installation-dune-mysql-multi-instance/).

Si vous ne connaissez rien du tout sur postgresql je vous suggère d'aller faire un tour sur le tuto d'installation de postgres: http://journaldunadminlinux.fr/tuto-installation-dune-mysql-multi-instance/

Ci-dessous la procédure pour configurer un serveur postgresql en multi instance

 

  • Procédez à l'installation de PostgreSQL via la commande apt-get install postgresql postgresql-common postgresql-contrib
  • Faites, une sauvegarde du fichier de configuration /etc/postgresql/9.4/main/postgresql.conf
  • Copier la configuration ci-dessous dans votre fichier postgresql.conf:
data_directory = '/var/lib/postgresql/9.4/main'
hba_file = '/etc/postgresql/9.4/main/pg_hba.conf'
ident_file = '/etc/postgresql/9.4/main/pg_ident.conf'
external_pid_file = '/var/run/postgresql/9.4-main.pid'
listen_addresses = 'localhost'
port = 5432
max_connections = 100
unix_socket_directories = '/var/run/postgresql'
ssl = true
shared_buffers = 1024MB
work_mem = 16MB
maintenance_work_mem = 1024MB
checkpoint_segments = 64
checkpoint_completion_target = 0.9
effective_cache_size = 1024MB
log_min_duration_statement = 500
log_line_prefix = '%m %d '
datestyle = 'iso, mdy'
lc_messages = 'en_US.UTF-8'
lc_monetary = 'en_US.UTF-8'
lc_numeric = 'en_US.UTF-8'
lc_time = 'en_US.UTF-8'
default_text_search_config = 'pg_catalog.english'
ssl_cert_file = '/etc/ssl/certs/ssl-cert-snakeoil.pem'
ssl_key_file = '/etc/ssl/private/ssl-cert-snakeoil.key'
  • Créez les dossiers de stockage  avec les bons droits:
mkdir /srv//pg && chown postgres:postgres /srv//pg && chmod 700 /srv/pg
  • Créez les répertoires pour les fichiers de configurations

mkdir /etc/postgresql/9.4/<instance>
  • Créez la nouvelle instance
su - postgres
/usr/lib/postgresql/9.4/bin/initdb -D /srv//pg
cp /etc/postgresql/9.4/main/*conf /etc/postgresql/9.4/<instance name>
  • Éditez et modifier le fichier /etc/postgresql/9.4/<instance name>/postgresql.conf avec les bonnes informations
data_directory
hba_file
ident_file
external_pid_file
port
  • Redémarrez PostgreSQL

Quelques commandes pour aider (version "9.4"  adapter bien évidemment):

Lister les Clusters :   pg_lsclusters

Arrêter une instance: pg_ctlcluster 9.4 <instance name> stop

Démarrer une instance: pg_ctlcluster 9.4 instance1 start… Lire la suite

PostHeaderIcon Tuto | Installez et débutez avec postgresql

Article publiée le 27 Décembre 2016

PostgreSQL est pour moi la meilleure alternative à Oracle. Elle allie performance, fiabilité et simplicité d'administration. Ayant eu pas mal de galère avec MySQL que je trouve plus "fragile" j'ai vite été séduis par la robustesse de PostGRESQL.

 

1) Installation

Debian/Ubuntu

apt-get install postgresql-*

RedHat/Centos

La version de postgresql contenu dans les dépôts de ces distributions sont un peu veilles. Je vous suggère d'ajouter les dépots yum officiel:

CentOS/RHEL 7
# rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-7-x86_64/pgdg-centos94-9.4-1.noarch.rpm
CentOS/RHEL 6
# rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-redhat94-9.4-1.noarch.rpm
CentOS/RHEL 5
# rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-5-x86_64/pgdg-redhat94-9.4-1.noarch.rpm

9.4 correspond à la version de postgreSQL, rien ne vous empêche d'installer une version supérieur/inférieur en modifiant le lien.… Lire la suite

PostHeaderIcon Tuto | Installation d’une base Mysql Multi-instances

Article publiée le 26 Décembre 2016

Un petit tutoriel sur l'installation d'une base de données MySQL multi instance. Ce type d'installation vous sera particulièrement utile si votre serveur héberge plusieurs instances applicative. En effet admettons que vous hébergiez plusieurs instances applicatives, au lieu de créer une base de données par application, vous pourrez créer une instance MySQL dédié par application. L'avantage est que vous pourrez effectuer un tunning précis de votre base de données par application.

 

  •  Procédez à l'installation de mysql via la commande apt-get install mysql-server
  •  Faites une sauvegarde du fichier de configuration original /etc/mysql/my.cnf et modifier le de la manière suivante (le fichier de configuration est bien sur à adapter.
Lire la suite

PostHeaderIcon Tutoriel | Mettre en place un reverse proxy Apache avec un serveur tomcat

Article publié le 8 Novembre 2016

Très souvent je peux constater que des admins mettent directement leur serveur Tomcat en front (les clients se connectent directement sur le Tomcat).

Il est très vivement recommandé d'utiliser un serveur Apache en front (reverse proxy). En effet l'utilisation d'un serveur apache a les avantages suivants:

  • Sécurité: Le serveur tomcat est isolé de l'extérieur et apache gère mieux les requêtes HTTP
  • Performance: Apache sera plus performant que Tomcat (le moteur HTTP d'apache est beaucoup plus performant).
  • Configuration: Apache contrairement à Tomcat est hautement configurable!

Une fois votre serveur apache installé activez le mode proxy:

a2enmod proxy_http

Créez votre virtualhost:

touch /etc/apache2/site-available/<nom de votre site>.conf

Ajoutez y la configuration suivante

< VirtualHost *:80>

ServerName <nom de votre site>

ProxyPreserveHost On

ProxyRequests On

ProxyPass / <adresse IP ou DNS de votre appli tomcat>

ProxyPassReserve / <Adresse IP ou DNS de votre appli tomcat>

</VirtualHost>

Activez ensuite votre virtualHost via la commande a2ensite <nom de votre VirtualHost> puis recharger la configuration de  votre serveur apache avec la commande /etc/init.d/apache2 reload

Lire la suite

PostHeaderIcon tutoriel | Installation et configuration de Tomcat 9

Article publiée le 8 Novembre 2016

1) Présentation

Tomcat 9 est sortie depuis quelque temps.

Tous d'abord faisons un point sur les nouveautés:

- Implémentation des spécification de JAVA7

- Implémentation de Java Servlet  3.1,

- Implémentation de de JavaServer Page2.3

Ci dessous un petit tuto rappel de comment installer un serveur tomcat (version 9):

Cette article reprend le tutoriel que j'ai rédigé pour tomcat 8 en étant adapté pour cette nouvelle version. Il n'y aura pas de gros changement pour les personnes ayant lu le tutoriel sur tomcat 8 🙂

Prérequis: Java

yum install java* pour (RedHat/Centos) ou apt-get install openjdk* (Sous debian/Ubuntu)

- Créez proprement votre répertoire d’installation de tomcat, dans mon cas cela sera /srv/tomcat

mkdir /srv/tomcat

- Décompressez l'archive dans le répertoire de destination:

mv <votre archive>.tar.gz <repertoire d’installation>  &&  tar -xvf  <repertoire d’installation>/<votre archive>.tar.gz

Exemple:  mv /root/apache-tomcat-9.0.0.tar.gz  /srv/tomcat/

Quelques petites explications:

- Le répertoire bin contient tous les scripts de tomcat notamment ceux de démarrage et d’arrêt.… Lire la suite

PostHeaderIcon Tutoriel | Installer et paramétrer un FTP sécurisé avec VsFTPD

Article publiée le 12 Octobre 2016

Petit tuto expliquant comment configurer un serveur FTPs sécurisé avec vsftpd. Vsftpd étant le serveur FTP le plus sécurisé, je vous le recommande fortement.

- Installez vsftpd via la commande apt-get install vsftpd (sous Debian) ou yum install vsftpd (sous RedHat/CentOS)

- Une fois l'installation effectuée, éditez le fichier /etc/vsftpd/vsftpd.conf et écraser le contenu avec la configuration suivante (sans oublier de faire une sauvegarde du fichier original):

anonymous_enable=NO
# A adapter
pasv_min_port=30000
pasv_max_port=30099
local_enable=YES
virtual_use_local_privs=YES
write_enable=YES
local_umask=18
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
idle_session_timeout=600
data_connection_timeout=1200
chroot_local_user=YES
listen=YES
max_clients=30
pam_service_name=vsftpd.virtual
guest_enable=YES
user_sub_token=$USER
local_root=/srv/ftp/$USER
hide_ids=YES
userlist_enable=YES
tcp_wrappers=YES
ssl_enable=YES
allow_anon_ssl=NO
allow_writeable_chroot=YES
force_local_data_ssl=YES
force_local_logins_ssl=YES
rsa_cert_file=/etc/ssl/certs/<nom du fichier>.crt
rsa_private_key_file=/etc/ssl/private/<nom du fichier>.key
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH
- On génère ensuite un certificat auto-signé:
openssl req -x509 -newkey rsa:1024-keyout /etc/ssl/private/private.key -out /etc/ssl/certs/certificate.crt -nodes -days 3650
chmod 0600/etc/ssl/private/private.key; chmod 0640/etc/ssl/certs/certificate.crt
- On configure le PAM (vi /etc/pam.d/vsftpd.virtual)
#%PAM-1.0
auth       required     pam_userdb.so db=/etc/vsftpd/login
account    required     pam_userdb.so db=/etc/vsftpd/login
session    required     pam_loginuid.so
- On crée le user ftp:
useradd ftp
- On oublies pas de créer le répertoire des comptes FTP selon ce que vous avez indiqué dans le fichier de configuration vsftpd.conf.… Lire la suite

PostHeaderIcon Tutoriel | chiffrer et déchiffrer avec GnuPG

Article publié le 10 Octobre 2016

Petit tuto très simplifié sur comment chiffrer/dechiffrer des fichiers avec GnuPG.

- Démarrez l'agent gnugpg:

gpg-agent --daemon --use-standard-socket

 

- Authentifiez vous sans utiliser sudo mais en vous connectant directement avec le compte UNIX souhaité.
- Générez votre clé privée (de préférence sur une machine sûre):

gpg -gen-key

 

- Renseignez les informations demandées par l'invite de commande. Si la génération de votre clé prend trop de temps, utilisez la commande ci-dessous

rngd -r /dev/urandom

- Générez votre clé de révocation (au cas ou)

gpg --output revoke.asc --gen <id de votre clé>

- Vérifiez que votre clé a bien été généré

gpg --list-keys

- Exportez votre clé publique qui sera nécessaire pour chiffrer / déchiffrer (la clé public devra être envoyé au destinataire afin qu'il puisse
déchiffrer le contenu).… Lire la suite

PostHeaderIcon Tutoriel | Installer et configurer le firewall Shorewall

Article publié le 23 Juin 2016

Un petit tuto sur le firewall Shorewall qui simplifie grandement la configuration d'IPTABLES. En effet avec Shorewall vous pouvez configurer de manière très efficace IPTABLE juste avec une  petite poignée de fichiers de configuration (très utile pour de nombreux  serveurs dédiés piratés...)

 

1) Installation

Sous Debian/ Ubuntu:

apt-get install shorewall shorewall-core

(sans oublier shorewall6 si vous avez une interface réseau avec une adresse IPV6)

 

Sous RedHat/Centos

Shorewall n'est pas dans les dépots officiels de ces distributions. Pour cela il est nécessaire de rajouter les dépôts de shorewall:

Créez le fichier /etc/yum.repos.d/shorewall.repo et rajouter les lignes suivantes:

[shorewall]
name = RHEL $releasever - Shorewall - sysadminguide.net
baseurl = http://mirror.sysadminguide.net/shorewall
enabled = 1
protect = 0
gpgcheck = 0

Puis installez shorewall:

yum install shorewall, shorewall-core

(Sans oublier shorewall6 si vous avez une interface réseau avec une adresse IPV6;-))

 

2) Configuration

2.1) Sous Debian:

Copiez les fichiers de configurations depuis le répertoire /usr/share/doc/shorewall/examples/one-interface vers  /etc/shorewall

cd /usr/share/doc/shorewall/examples/one-interface && cp {interfaces, policy, shorewall.conf.gz, zones} /etc/shorewall && gunzip /etc/shorewall/shorewall.conf.gz

cd /usr/share/doc/shorewall6/examples/one-interface && cp {interfaces, policy, shorewall.conf.gz, zones} /etc/shorewall6 && gunzip /etc/shorewall6/shorewall.cong.gz (si vous avez une adresse IPv6)

Créez le fichier /etc/shorewall/rules  (également pour /etc/shorewall6/rules le cas échéant) et ajoutez y les lignes suivantes:

?SECTION NEW
SHELL cat /etc/shorewall/rules.d/*.rules 2> /dev/null || true

Puis créez le répertoire /etc/shorewall/rules

mkdir /etc/shorewall/rules.d

(mkdir /etc/shorewall6/rules.d)

 

2.2) RedHat

La procédure est presque identique à celle de Debian.… Lire la suite

PostHeaderIcon Installer et configurer Centreon Entreprise Server

Article publié le 25 Mai 2013

Mis à jour publié le 24 Mai 2016

Ce tutoriel a été mis à jour pour la sortie de la  version 3.x

 

Nagios/Centreon est pour moi le meilleur système de supervision qui existe. Il est puissant, gratuit avec une énorme communauté qui le maintient.

Maintenant sa mise en place est plus ou moins fastidieuse.

J'ai découvert par hasard que Centreon proposait une édition Entreprise.

La version standard est entièrement gratuite est présente de nombreux avantage

- Téléchargeable sous forme d'ISO centreon Entreprise standard est livré sous forme d'OS complet (basé sur CENTOS) avec tout le  système de monitoring préinstallé.… Lire la suite

image_print