Let’s encrypt, installation Certbot Debian 8 Jessie

Ajouter les dépôts backports
echo "deb http://ftp.debian.org/debian jessie-backports main" | sudo tee -a /etc/apt/sources.list
Mise à jour et installation des paquets
apt-get update && apt-get install python-certbot-apache -t jessie-backports -y
Obtenir un certificat sécurité
certbot --apache
les paquets Certbot sur votre système sont dotés d’un service cron qui renouvelle automatiquement vos certificats avant leur expiration. Puisque les certificats de Cryptage durent 90 jours, il est fortement conseillé de profiter de cette fonctionnalité.
certbot renew --dry-run
les certificats ce trouve dans ce répertoire : /etc/letsencrypt/live/

Installation serveur Debian 8 Jessie

Mettre a jour le serveur
apt-get update && apt-get upgrade -y
Installation apache2
apt-get install apache2
Création de l’utilisateur du site
adduser utilisateur
Création du dossier de votre site
mkdir /home/utilisateur/www
mkdir /home/utilisateur/logs
Changer les droits des dossier créer
chown utilisateur /home/utilisateur/www /home/utilisateur/logs
chgrp utilisateur /home/utilisateur/www /home/utilisateur/logs
Création d’un lien symbolique
ln -s /home/utilisateur/www /var/www/nomdedomaine.fr
Création du fichier de configuration du site
nano /etc/apache2/sites-available/nomdedomaine.conf
<VirtualHost *:80>
    ServerAdmin utilisateur@nomdedomaine.fr
 # Domaines gérés par ce virtualhost
    ServerName nomdedomaine.fr
    ServerAlias *.nomdedomaine.fr
 # Racine Web
    DocumentRoot /var/www/nomdedomaine.fr
 # Règles spécifiques s'appliquant à ce dossier
    <Directory /var/www/nomdedomaine.fr>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>
    # Où placer les logs pour cette hôte
    ErrorLog /home/utilisateur/logs/error.log
    CustomLog /home/utilisateur/logs/access.log combined
</VirtualHost>
Activation de la configuration du site
a2ensite nomdedomaine.conf
service apache2 reload
Ajouter un mod à apache2
a2enmod rewrite
service apache2 restart
Installation de PHP
apt install php5 libapache2-mod-php5 php5-curl php5-gd
Puis une fois l’installation terminée (pour relancer le serveur apache)
service apache2 restart
Installation d’un FTP
apt-get install proftpd
Décommenter # DefaultRoot ~ pour que chaque utilisateur reste dans son dossier personnel.
nano /etc/proftpd/proftpd.conf
service proftpd restart
Installation d’une base de données
apt-get install mysql-client mysql-server php5-mysql
Pendant l’installation il vous sera demandé de rentrer le mot de passe « root », ce mot de passe est très important, car il vous permet de vous connecter en tant qu’administrateur à votre base de données.
Installer PhpMyAdmin
apt-get install phpmyadmin
choix du serveur a paramétrer : Apache2
On redémarre Apache quand proposé
On se connecte par l’adresse http://xxx.xxx.xxx.xxx/phpmyadmin
Changer la page d’accueil du serveur
soit vous modifier la page index du serveur.
nano /var/www/html/index.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta http-equiv="content-language" content="fr-FR" />
<title>Index de l'espace personnel de utilisateur</title>
<link rel="icon" type="image/png" href="/favicon.png" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
Index de l'espace personnel de utilisateur.
<br>
<br>
<a href="https://nomdedomaine.fr">Mon site</a>
<br>
Bonne visite :)
</body>
</html>
soit vous faite une redirection de la page index vers un site.
nano /etc/apache2/sites-enabled/000-default.conf
Commenter # les lignes
#ServerAdmin
#DocumentRoot
#ErrorLog
#CustomLog
et rajouter une redirection
Redirect 301 / http://nomdedomaine.fr
service apache2 restart

Installation basique de searx sous Debian 8 Jessie

Mise a jour d’openssl
apt-get -t jessie-backports install openssl
apt-get -t jessie-backports install libssl-dev
Installation des dépendances systèmes nécessaires
apt-get install git build-essential libxslt-dev python-dev python-virtualenv python-pybabel zlib1g-dev libffi-dev libssl-dev
Installation de searx
cd /usr/local
git clone https://github.com/asciimoo/searx.git
useradd searx -d /usr/local/searx
chown searx:searx -R /usr/local/searx
Installation des dépendances python dans virtualenv
cd /usr/local/searx
virtualenv searx-ve
. ./searx-ve/bin/activate
pip install -r requirements.txt
python setup.py install
Configuration
Modifiez la phrase secrète du fichier
searx/settings.yml (ceci est une étape nécessaire pour la sécurité de votre application)
sed -i -e "s/ultrasecretkey/`openssl rand -hex 16`/g" searx/settings.yml
Ouvrez searx/settings.yml et baladez-vous dans les différentes options de configuration. Modifiez-les selon vos besoins et vos envies.
Vérification
Il est ici nécessaire d’être dans le virtualenv. Si vous n’y êtes plus :
cd /usr/local/searx
. ./searx-ve/bin/activate
Lancez searx :
python searx/webapp.py
Désactivez l’option de debug dans settings.yml :
sed -i -e "s/debug : True/debug : False/g" searx/settings.yml
Searx n’est pas dæmonisé (il ne tourne pas en arrière-plan). Cette dæmonisation est le rôle d’uwsgi.
Installation des paquets :
apt-get install uwsgi uwsgi-plugin-python
Créez le fichier de configuration /etc/uwsgi/apps-available/searx.ini.
nano /etc/uwsgi/apps-available/searx.ini
avec ce contenu :
[uwsgi]
# Quel est l'utilisateur qui fera tourner le code
uid = searx
gid = searx
# Nombre de workers (habituellement, on met le nombre de processeurs de la machine)
workers = 4
# Quels sont les droits sur le socket créé
chmod-socket = 666
# Plugin à utiliser et configuration de l'interpréteur
single-interpreter = true
master = true
plugin = python
# Module à importer
module = searx.webapp
# Chemin du virtualenv
virtualenv = /usr/local/searx/searx-ve/
Activez la configuration de l’application et relancez uwsgi
cd /etc/uwsgi/apps-enabled
ln -s ../apps-available/searx.ini
/etc/init.d/uwsgi restart
Avec Apache2 comme Serveur web
Ajoutez le module uwsgi :
apt-get install libapache2-mod-uwsgi
Ajoutez cette configuration /etc/apache2/sites-available/
nano /etc/apache2/sites-available/nano searx.conf
<Location /searx>
    Options FollowSymLinks Indexes
    SetHandler uwsgi-handler
    uWSGISocket /run/uwsgi/app/searx/socket
</Location>
Activer le site :
a2ensite searx.conf
Relancez Apache :
service apache2 reload