FranceMicro

Actus et Aide Informatique

Créer un bureau Distant Ubuntu + LXDE + xRDP

Installation d’un bureau distant à partir d’un serveur One Provider pour une expérience de bureau distant léger et fluide. Le processus d’installation est simple. Il faut juste s’assurer d’avoir au moins Ubuntu 16, 18 ou 20 en tant qu’OS afin d’être sur que cela fonctionne.

Pour ma part j’ai fait le choix d’Ubuntu 20 et de Lxde. Après quelques recherches de tests comparatifs entre LXDE et XFCE, LXDE est plus léger alors que XFCE fournit un plus grand nombre de compatibilité.

Après que vous vous êtes connecté en SSH, effectué la commande suivante pour mettre à jour Ubuntu dans sa dernière version stable:

apt update && apt -y dist-upgrade

Quand c’est fait, installé le support xRDP avec une simple commande:

apt -y install xrdp

En assumant que tout c’est déroulé correctement, procédé à l’installation du bureau Lubuntu ( connu aussi sous le nom de LXDE ):

apt install lubuntu-desktop -y

Cela risque de prendre un certain temps parce que l’interface graphique comprends plusieurs méga-octets de données.

La prochaine étape sera de spécifier xRDP d’utiliser LXDE. On va devoir éditer le fichier /etc/xrdp/startwm.sh. Décommenter les 2 dernières lignes du fichier et ajouter la ligne suivante:

lxsession -s Lubuntu -e LXDE

Redémarrer xRDP pour que la nouvelle configuration soit prise en compte.

service xrdp restart

Tout devrait fonctionner maintenant ! Connectez vous à votre VPS ( ou serveur dédié ) avec le client RDP de votre choix. Perso, je me connecte avec mRemoteNG.

Je vous recommande les règles de base pour sécuriser votre serveur.

Installation Directadmin + OpenLiteSpeed + plusieurs versions de Php

Voilà, on arrête avec WHM / Cpanel et ses licences hors de prix pour passer à DirectAdmin, bien plus accessible financièrement, voir même sans surcoût chez plusieurs fournisseurs de serveurs virtuelles. Pour ceux qui ne connaisse pas, Directadmin existe depuis quasiment aussi longtemps que Cpanel, et offre des fonctions similaires dans une interface simple et agréable, vous pouvez le tester par ici si vous voulez:

Choix de la distribution, configuration:

Directadmin support plusieurs distributions Linux ( Centos 6, 7, 8 / Debian 8, 9, 10 / Cloud Linux / FreeBsd ). Pour ma part, je fais le choix de CentOs 7, pour plusieurs raisons. Premièrement a l’instar de Cpanel déjà qui ce base sur CentOs, je continue donc sur une base que je connais et ensuite parce que Centos 8 à encore quelques petits bugs. Les autres distributions semblent elles subir quelques défauts d’intégrations ( notamment au niveau du Firewall CSF ), à vérifier ceci dit.

De plus, Directadmin possède une compatibilité avec le serveur Web OpenLiteSpeed ( version gratuite de LiteSpeed ) ce qui donne accès à lsphp, idéal pour alléger les demandes en mémoire de mon serveur VPS. En plus, le combo Direct Admin / OpenLiteSpeed, c’est ça compatibilité total avec le .htaccess d’Apache, là ou de base c’est une fonctionnalité réservé à LiteSpeed, la version Pro ).

Et la dernière raison est d’ordre financière donc, plusieurs hébergeurs de VPS intègre sans surcoût la licence DirectAdmin. Je vais faire une petite liste, que vous pourrez retrouver ici.

Pré requis:

  • 1 serveur dédié ou virtuel avec au minimum 1GO de mémoire et 2GO d’espace disque de disponible
  • Accès Ssh, Root
  • 1 adresse IP fixe
  • Licence DirectAdmin
  • Un peu de temps de libre ^^

Préparation Serveur:

Ici je n’occupe pas des partitions, on laisse celle par défaut fourni par l’hébergeur. DirectAdmin recommande un partitionnement de base, c’est à dire:

/boot 500MB

swap si – de 2GO RAM: 2X la RAM, si 2GO-8GO: égale a la quantité de RAM, si + de 8GO RAM: au moins 4GO de swap

/ le reste de votre espace disque

Connexion en SSH. On vérifie que le hostname pointe correctement

hostname

Si ce n’est pas le cas, vous pouvez le modifier maintenant et le revérifier à nouveau.

hostnamectl set-hostname nomdhote.votredomaine.com

hostnamectl status

On mets a jour le serveur et on fait plein de yes, lol, uniquement si on est d’accord bien sur. Bien vérifier que toutes les installations se sont bien faite sinon vous ne pourrez pas installer DirectAdmin.

yum clean all

yum install wget tar gcc gcc-c++ flex bison make bind bind-libs bind-utils openssl openssl-devel perl quota libaio \

libcom_err-devel libcurl-devel gd zlib-devel zip unzip libcap-devel cronie bzip2 cyrus-sasl-devel perl-ExtUtils-Embed \

autoconf automake libtool which patch mailx bzip2-devel lsof glibc-headers kernel-devel expat-devel \

psmisc net-tools systemd-devel libdb-devel perl-DBI perl-Perl4-CoreLibs perl-libwww-perl xfsprogs rsyslog logrotate crontabs file kernel-headers

On va sécuriser SSH en ajoutant un nouvel utilisateur avec accès Root. Fonctionnant de manière différente par rapport a Debian / Ubuntu, CentOs attribue les privilèges Root en plaçant l’utilisateur dans le groupe Wheel. Modification du Port SSH, on enlève l’accès à l’utilisateur Root puis on rédémarre.

adduser tonpseudo

passwd tonpseudo

sudo usermod -aG wheel tonpseudo

nano /etc/ssh/sshd_config

ssh 11111

permitrootlogin no

systemctl restart sshd

On ajoute une autorisation de notre nouveau port SSH à notre parefeu.

iptables -A INPUT -p tcp -i eth0 –dport 1111 -j ACCEPT

iptables -F

iptables -X

Si ça fonctionne, on peut maintenant ajouter cette règle définitivement.

firewall-cmd –zone=public –add-port=1111/tcp –permanent

firewall-cmd –reload

Installation DirectAdmin:

Nous allons maintenant lancer l’installation du panneau de contrôle. Il vous faut être en root.

su root

bash <(curl -Ss https://www.directadmin.com/setup.sh) auto

L’installation va prendre un moment ( 10 minute dans mon cas ), il faudra peut être entrer les informations suivantes: Cliend Id, Licence Id, Adresse IP ( pour ma part le serveur a été reconnu automatiquement par les serveurs de DirectAdmin ).

Une fois que le message Install Complete apparaît, vous pouvez accéder à votre interface par le biais de http://votreadresseip:2222. Sur votre session SSH est apparu un peu plus haut vos identifiants de connexion, il faut bien en prendre note. Vous pouvez également les retrouver dans…

A ce stade vous pouvez utiliser Directadmin et le reste est facultatif mais… si vous voulez vraiment sécuriser votre serveur, je vous recommande de rester avec moi. Durant l’installation le firewall CSF a déjà été installé avec plusieurs règles de sécurité. Nous allons améliorer tout ça.

1 – Sécuriser PHP en désactivant certaines fonctions.

cd /usr/local/directadmin/custombuild

./build update

./build secure_php

2 – Vérifier qu’on est bien à jour, ça va prendre du temps !

./build all -d

systemctl restart httpd.service

3 – Désactiver l’accès distant à MySQL

nano /etc/my.cnf

bind-address = 127.0.0.1

systemcrl restart mysqld

4 – Activation de la récursion locale des DNS et on bloque celle qui sont distante, votre fichier named.conf, dans la partie { Options } devrait ressembler à ça:

nano /etc/named.conf

allow-query { any; };

allow-transfer { none; };

allow-recursion { localhost; };

recursion yes;

5

Installation OpenLiteSpeed

Ici c’est totalement facultatif, mais comme l’hébergeur que je suis en train de concevoir est focalisé sur WordPress cela va me permettre de tirer les meilleurs performances possibles de mon VPS grâce a LSPHP et LSCACHE. On en profite également pour installer plusieurs versions de PHP, donnant ainsi le choix à l’utilisateur finale si son script n’est pas compatible avec la version par défaut ( dans notre cas la 7.3 ).

./build set webserver openlitespeed

./build set mod_ruid2 no

./build set php1_mode lsphp

./build set php1_release 7.3

./build set php2_mode lsphp

./build set php2_release 7.4

./build set php3_mode lsphp

./build set php3_release 7.2

./build set php4_mode lsphp

./build set php4_mode 5.6

./build openlitespeed

./build php n

./build rewrite_confs

Pour que Directadmin redémarre automatiquement OpenLiteSpeed afin de prendre en compte les modifications du fichier .htaccess

echo ‘*/3 * * * * root if ! find /home/*/domains/*/*_html/ -maxdepth 2 -type f -newer /usr/local/lsws/cgid -name « .htaccess » -exec false {} +; then /usr/local/lsws/bin/lswsctrl restart; fi‘ > /etc/cron.d/openlitespeed_htaccess_scan

Continuer à sécuriser le serveur

Installation de xcf version gratuite,

Installation d’un certificat SSL Letsencrypt sur le hostname

cd /usr/local/directadmin/scripts

./letsencrypt.sh request_single ton.hostname.com 4096

Le serveur devrait redémarrer en moins d’une minute et ça devrait être actif si tout c’est bien passé.

Tuto écrit à l’arrache et toujours en cours, y a des trucs que je dois peaufiner là dedans… comme par exemple écrire dans un français correct sans faute d’orthographe, ajouter des étapes et ce serait pas du luxe de rajouter quelques images ici et là.

Hetzner, Proxmox HA / Ceph + PfSense

Tuto qui sert surtout de pense bête pour la mise en place d’un système de stockage redondant ( Cloud ) en utilisant un ensemble de logiciels Open Source afin d’avoir un meilleur contrôle des coûts… et en même temps si ça peut servir à quelqu’un d’autre pour faire joujou tant mieux ^^

Prérequis:

  • 3 serveurs
  • 2 disques par serveur
  • 1 carte réseau physique / serveur
  • 1 adresse IP fixe / serveur

Pourquoi Hetzner ?

Après avoir fait un certain temps sur des serveurs Kimsufi puis avec Oneprovider, il est temps de passer chez Hetzner. La principale fonctionnalité recherchée est la possibilité de trafic interne entre serveur. Les prix eux restent dans le même d’idée que les 2 autres. Bien qu’ici les serveurs se situeront en Allemagne au lieu de la France ( pour ceux qui souhaitent y installer des sites, niveau référencement ce ne sera pas forcèment la meilleure solution ).

Installation de Proxmox VE

Hetzner ne propose pas d’image d’installation Pré configuré pour Proxmox, on va donc le faire avec nos petites mains, en démarrant à partir de l’interface Robot d’Hetzner et choisir le mode Rescue.

Connexion en ssh

Vérifier que votre nom d’hôte est résolvable, hostname –ip-address, si ce n’est pas le cas faire la modif dans /etc/hosts

On tape installimage

Choisir Debian 10 ( Buster ).

On monte les 2 disques durs /dev/sda, dev/sdb

on mets le RAID à 0 ( SWRAID 0 ), on ne veut pas de RAID car un disque sera utilisé pour le Système, VM, ISO et l’autre pour Ceph

Hostname ( votreserveur.votredomaine.com )

Création de partition

  • swap swap 16G ( il est recommandé d’avoir un swap d’une taille égale à votre mémoire vive )
  • /boot ext3 512M
  • /home ext3 all

On sauvegarde la configuration et après que l’installation soit complète, on redémarre, reboot

La prochaine étape sera d’adapter les souces APT:

echo « deb http://download.proxmox.com/debian/pve buster pve-no-subscription » > /etc/apt/sources.list.d/pve-install-repo.list

Ajouter la clé:

wget http://download.proxmox.com/debian/proxmox-ve-release-6.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg

On va mettre à jour les listes de Paquet, garder les dernières versions de tout les paquets et le noyau Debian.

apt-get update

apt-get upgrade

apt-get dist-upgrade

Puisque Proxmox apporte ses propres firmware, ceux existant doivent être supprimé en premier.

aptitude -q -y purge firmware-bnx2x firmware-realtek firmware-linux firmware-linux-free firmware-linux-nonfree

Après ça, on peut commencer à installer Proxmox.

apt-get install proxmox-ve postfix open-iscsi

Lors de la config Postfix

choisir Internet

system mail name = proxmox.votredomaine.com

postmaster mail recipient = votrenom

le reste par défaut

Mailbox size limit = 0

Internet Protocols = all

La paquet os-prober scans toutes les partitions de votre hôte incluant celle de vos VMs pour créer des entrées dual-boot GRUB. Si vous n’avez pas installé Proxmox VE en dual boot dernière un autre OS vous pouvez supprimer en toute sécurité os-prober, ce qui est notre cas.

apt remove os-prober

Maintenant que l’installation est finis, vous pouvez maintenant vous connecter à l’interface Web Admin ( https://votreadresseip:8006 ), en utilisant le compte root et le mot de passe Linux root en sélectionnant  » PAM Authentication ) lors de la connexion.

Nous allons sécurisé un peu notre serveur.

Sécurisé SSH

  • adduser tonnom
  • usermod -aG sudo tonnom
  • nano /etc/ssh/sshd_config
  • Port 11234 ( on change le port SSH )
  • PermitRootLogin no
  • /etc/init.d/ssh restart
  • install fail2ban
  • nano /etc/fail2ban/jail.local

[DEFAULT]

bantime = 84600

findtime = 600

maxretry = 3

destemail = tomtom@example.com

sendername = Fail2ban

action = %(action_mwl)s

[sshd]

enabled = true

port = 21153

puis systemctl restart fail2ban

Désactivation de Rpcbind

Les services ouverts Portmapper peuvent être abusé pour des attaques de type DDoS contre des systèmes tierces et donc pour des raisons de sécurité / abus, nous allons désactiver Rpcbind, nullement nécessaire dans notre cas. Attention tout de même si vous souhaitez monter une partition réseau NFS, vous en aurez besoin. Chez Hetzner vous serez automatiquement contacté dans les 24 heures par le Bureau Fédéral Allemand pour la Sécurité de l’Information ( BSI ) si Portmapper reste accessible à tous. Donc on le désinstalle.

systemctl disable rpcbind.target

systemctl disable rpcbind.socket

systemctl disable rpcbind.service

systemctl stop rpcbind.target

systemctl stop rpcbind.socket

systemctl stop rpcbind.service

puis reboot. Vérifier que le service à bien était désactivé en vous connectant en SSH à partir d’une autre machine, puis effectué la commande suivante:

rpcinfo -T udp -p 1.1.1.1 ( l’adresse ip du serveur dont vous souhaitez effectuer les tests de port )

Configuration Réseau

Configurer PfSense

Tuto largement inspiré des liens suivants, que je ne peux que vous conseillez… Tuto toujours en cours.

Bienvenue !

Bienvenue sur FranceMicro.net Ici vous retrouverez un petit site sans prétention sur l’actualité Informatique. Conception en cours.