Dans ce didacticiel, nous allons vous montrer comment installer le serveur Web Caddy sur CentOS 7. Pour ceux d'entre vous qui ne le savaient pas, le serveur Web Caddy est une source ouverte, et serveur Web axé sur la sécurité écrit en Go. Caddy inclut des fonctionnalités modernes telles que la prise en charge des hôtes virtuels, la minification des fichiers statiques et HTTP/2.
Cet article suppose que vous avez au moins des connaissances de base sur Linux, que vous savez utiliser le shell et, plus important encore, que vous hébergez votre site sur votre propre VPS. L'installation est assez simple et suppose que vous s'exécutent dans le compte root, sinon vous devrez peut-être ajouter 'sudo
‘ aux commandes pour obtenir les privilèges root. Je vais vous montrer l'installation étape par étape du serveur Web Caddy sur un serveur CentOS 7.
Prérequis
- Un serveur exécutant l'un des systèmes d'exploitation suivants :CentOS 7.
- Il est recommandé d'utiliser une nouvelle installation du système d'exploitation pour éviter tout problème potentiel.
- Accès SSH au serveur (ou ouvrez simplement Terminal si vous êtes sur un ordinateur).
- Un
non-root sudo user
ou l'accès à l'root user
. Nous vous recommandons d'agir en tant qu'non-root sudo user
, cependant, car vous pouvez endommager votre système si vous ne faites pas attention lorsque vous agissez en tant que root.
Fonctionnalités du chariot
- HTTPS automatique.
- Déploiement facile.
- Multicœur.
- WebSocket.
- Réécritures et redirections.
- Hôtes virtuels.
Installer le serveur Web Caddy sur CentOS 7
Étape 1. Tout d'abord, commençons par nous assurer que votre système est à jour.
yum clean allyum -y mise à jour
Étape 2. Installation du serveur Web Caddy sur CentOS 7.
L'installation de Caddy est simple et rapide en exécutant la commande suivante :
curl https://getcaddy.com | bas
Une fois le script terminé, vous pouvez exécuter la commande suivante pour voir où se trouve le fichier binaire de votre Caddy :
quel chariot
Votre sortie devrait être comme ci-dessous :
/usr/local/bin/caddy
Étape 3. Configuration des répertoires nécessaires.
Ensuite, créez les répertoires où nous stockerons le fichier de configuration Caddy Caddyfile et les certificats SSL :
mkdir /etc/caddychown -R root:caddy /etc/caddytouch /etc/caddy/Caddyfilemkdir /etc/ssl/caddychown -R caddy:root /etc/ssl/caddychmod 0770 /etc/ssl/caddymkdir /var/ wwwchown caddie :caddie /var/www
Étape 4. Installation de Caddy en tant que service système.
Nous devons également créer un nouveau script de configuration SystemD :
cd /etc/systemd/system/nano caddy.service
Ajoutez la ligne suivante :
[Unit]Description=Caddy HTTP/2 web serverDocumentation=https://caddyserver.com/docsAfter=network-online.targetWants=network-online.target systemd-networkd-wait-online.service[Service]Restart=en cas d'échecStartLimitInterval=86400StartLimitBurst=5 ; Utilisateur et groupe, le processus s'exécutera en tant que.User=caddyGroup=caddy ; Les certificats émis par Letsencrypt seront écrits dans ce répertoire.Environment=CADDYPATH=/etc/ssl/caddy; Définissez toujours "-root" sur quelque chose de sûr au cas où il serait oublié dans le Caddyfile.ExecStart=/usr/local/bin/caddy -log stdout -agree=true -conf=/etc/caddy/Caddyfile -root=/var/ tmpExecReload=/bin/kill -USR1 $MAINPID ; Limitez le nombre de descripteurs de fichiers ; voir `man systemd.exec` pour plus de paramètres de limite.LimitNOFILE=1048576; Le chariot non modifié ne devrait pas utiliser plus que cela.LimitNPROC=64 ; Utilisez private /tmp et /var/tmp, qui sont supprimés après l'arrêt du caddy.PrivateTmp=true; Utilisez un /devPrivateDevices=true minimal ; Masquez /home, /root et /run/user. Personne ne volera vos clés SSH.ProtectHome=true; Faites en sorte que /usr, /boot, /etc et éventuellement d'autres dossiers soient en lecture seule.ProtectSystem=full ; … sauf /etc/ssl/caddy, car nous y voulons des certificats Letsencrypt.; Celui-ci conserve simplement les droits d'accès r/w, il n'en ajoute aucun nouveau. Doit toujours être accessible en écriture sur l'hôte !ReadWriteDirectories=/etc/ssl/caddy ; Les directives de sécurité supplémentaires suivantes ne fonctionnent qu'avec systemd v229 ou version ultérieure.; Ils restreignent davantage les privilèges qui peuvent être obtenus par le caddie. Décommentez si vous le souhaitez.; Notez que vous devrez peut-être ajouter des fonctionnalités requises par les plugins utilisés. ;CapabilityBoundingSet=CAP_NET_BIND_SERVICE;AmbientCapabilities=CAP_NET_BIND_SERVICE;NoNewPrivileges=true[Install]WantedBy=multi-user.target
Définissez le propriétaire et les autorisations :
chown root:root /etc/systemd/system/caddy.servicechmod 644 /etc/systemd/system/caddy.service
Enfin, exécutez les commandes suivantes pour permettre à Caddy de s'exécuter au démarrage :
systemctl enable caddysystemctl start caddy
Étape 5. Création d'une page Web de test et d'un Caddyfile.
À des fins de test, nous allons créer un fichier HTML de test :
mkdir -p /var/www/my-domain.comecho "Caddy"> /var/www/idroot.us/index.htmlchown -R www-data:/var/www/my-domain.comEnsuite, ajoutez notre domaine au fichier de configuration de Caddy :
nano /etc/caddy/CaddyfileAjoutez la ligne suivante :
mon-domaine.com { root /var/www/idroot.us}Enregistrez le fichier et quittez l'éditeur. Pour appliquer les modifications, redémarrez Caddy :
systemctl redémarrer caddy.serviceMaintenant, avec un navigateur Web, allez simplement sur
https://my-domain.com
, et vous verrez notre page de test !Félicitations ! Vous avez installé Caddy avec succès. Merci d'avoir utilisé ce didacticiel pour installer le serveur Web Caddy dans le système CentOS 7. Pour obtenir de l'aide supplémentaire ou des informations utiles, nous vous recommandons de consulter le site Web officiel de Caddy. site Web du serveur.