Comment installer le serveur Web Caddy sous Linux

De nos jours, HTTPS est la clé lors de l’hébergement d’un site Web. Sans cela, vos utilisateurs pourraient divulguer des données très personnelles de votre site Web dans le monde. Pour résoudre ce problème, de nombreux webmasters Linux ont commencé à utiliser les outils LetsEncrypt, car ils facilitent la création d’un certificat. Pourtant, pour aussi simple que soit LetsEncrpyt, l’activer sur Nginx ou Apache sur Linux peut encore être un peu une corvée. Heureusement, il existe un meilleur moyen. Présentation du serveur Web Caddy. C’est un serveur Web sur lequel HTTPS est activé par défaut. Si vous en avez assez de vous tracasser avec les certificats SSL, Caddy est peut-être exactement ce dont vous avez besoin.

Installation de Caddy

L’installation du serveur Web Caddy fonctionne à peu près de la même manière, quel que soit le système d’exploitation du serveur que vous utilisez. La raison pour laquelle Caddy est si facile à installer est que le développeur a choisi d’utiliser un script Bash téléchargeable pour installer le logiciel, plutôt que d’ajouter des référentiels de logiciels tiers ou d’installer via des binaires.

Dans ce didacticiel, nous utiliserons Ubuntu Server, bien que l’exécution du serveur Web Caddy fonctionne parfaitement sur la plupart des autres systèmes d’exploitation Linux, même sur les ordinateurs de bureau. Pour commencer, assurez-vous d’avoir l’application Curl sur votre PC Linux. Si vous ne le faites pas, ouvrez un terminal, recherchez «curl» dans votre gestionnaire de paquets et installez-le.

  Comment installer NixOS Linux

Remarque: déterminez si vous avez déjà curl en exécutant curl dans le terminal. Si la boîte de dialogue «Aide» apparaît pour le programme, vous avez Curl sur votre machine Linux.

curl https://getcaddy.com | bash -s personal

Le serveur Web Caddy est gratuit pour un usage personnel, mais vous devez le spécifier. Vous prévoyez d’utiliser Caddy dans une entreprise? Exécutez la commande d’installation avec:

curl https://getcaddy.com | bash -s commercial

L’exécution de Curl le fera passer par Bash et démarrera automatiquement le processus d’installation. Le programme d’installation de Caddy prendra du temps pour télécharger le binaire du serveur Web et le placer dans le répertoire / usr / local / bin /. Si l’installation réussit, vous verrez un message disant «Installé avec succès».

À ce stade, vous devrez modifier le binaire Caddy. Exécutez la commande suivante dans le terminal, avec les privilèges sudo.

sudo setcap cap_net_bind_service=+ep /usr/local/bin/caddy

Configurer Caddy

Caddy est installé sur le serveur. L’étape suivante du processus consiste à configurer la structure des répertoires. Commencez par obtenir un terminal racine. Cela rendra la modification des dossiers dans le système de fichiers beaucoup plus rapide, car vous n’aurez pas besoin d’entrer sudo pour chaque commande, suivi d’un mot de passe.

  Grammar Nazi vous aide à apprendre l'anglais pendant que vous lisez [Android]

Sur la plupart des systèmes, les utilisateurs peuvent se connecter directement au compte root avec:

su

Sur le serveur Ubuntu, cependant, le compte racine est verrouillé pour des raisons de sécurité. Pour contourner ce problème, procurez-vous un shell racine avec sudo.

sudo -s

Maintenant que nous avons un accès root, créez les répertoires nécessaires pour que le serveur Caddy fonctionne correctement.

mkdir /etc/caddy

mkdir /etc/ssl/caddy

Remarque: si votre serveur possède déjà un répertoire / var / www /, ignorez cette dernière commande mkdir.

mkdir /var/www

Ensuite, créez un nouveau «Caddyfile» dans / etc / caddy /.

touch /etc/caddy/Caddyfile

À l’aide de la commande chmod, mettez à jour les autorisations pour le sous-dossier Caddy dans / etc / ssl /.

chmod 0770 /etc/ssl/caddy

Enfin, consultez le répertoire / var / www /:

chown www-data: /var/www

Fichier Caddy Systemd

La plupart des serveurs, en particulier les serveurs Ubuntu, utilisent largement le système d’initialisation de systemd. Cependant, comme le serveur Web s’installe via un script Bash, aucun fichier systemd n’est présent. Au lieu de cela, nous devrons créer le nôtre. Utilisez la commande tactile pour créer un nouveau fichier de service vierge.

touch /lib/systemd/system/caddy.service

Ouvrez le nouveau fichier caddy.service et collez-y le code suivant:

[Unit]
Description = Serveur Web Caddy HTTP / 2
Documentation = https: //caddyserver.com/docs
Après = network-online.target
Wants = network-online.target

[Service]
Redémarrer = en cas d’échec
StartLimitInterval = 86400
StartLimitBurst = 5

Utilisateur = www-data
Groupe = www-data
; Les certificats émis par Letsencrypt seront écrits dans ce répertoire.
Environnement = CADDYPATH = / etc / ssl / caddy

  4 alternatives Discord pour les joueurs Linux

ExecStart = / usr / local / bin / caddy -log stdout -agree = true -conf = / etc / caddy / Caddyfile -root = / var / tmp
ExecReload = / bin / kill -USR1 $ MAINPID

LimitNOFILE = 1048576
Limite NPROC = 64

PrivateTmp = vrai
PrivateDevices = true
ProtectHome = vrai
ProtectSystem = plein
ReadWriteDirectories = / etc / ssl / caddy

; Les directives de sécurité supplémentaires suivantes ne fonctionnent qu’avec systemd v229 ou version ultérieure.
; Ils restreignent en outre les privilèges qui peuvent être acquis par caddie. Décommentez si vous le souhaitez.
; Notez que vous devrez peut-être ajouter des fonctionnalités requises par tout plug-in utilisé.
; CapabilityBoundingSet = CAP_NET_BIND_SERVICE
; AmbientCapabilities = CAP_NET_BIND_SERVICE
; NoNewPrivileges = true

[Install]
WantedBy = multi-user.target

Il y a beaucoup de code pour le fichier caddy.service, alors faites de votre mieux pour vous assurer que tout est là. Lorsque vous êtes sûr, enregistrez les modifications en appuyant sur la combinaison de touches Ctrl + X. Quittez l’éditeur avec Ctrl + X.

systemctl enable caddy.service

systemctl start caddy.service

Après avoir configuré systemd, tout devrait être prêt à fonctionner.

Configurer des domaines

Caddy, comme tout autre serveur Web, a besoin d’un peu de configuration avant de l’utiliser. Commencez par créer un dossier de domaine:

Remarque: assurez-vous de renommer «test-domain.org» avec votre domaine.

mkdir -p /var/www/test-domain.org/

Ensuite, modifiez le fichier Caddyfile que nous avons créé précédemment.

nano /etc/caddy/Caddyfile

Collez le code suivant pour activer votre nouveau domaine:

mon-domaine.com {
root /var/www/test-domain.org
}

Redémarrez le service Caddy systemd pour enregistrer les modifications. Lorsque le service a fini de redémarrer, Caddy est prêt à être utilisé sur votre serveur.

systemctl restart caddy.service