- - Cómo instalar el servidor web Caddy en Linux

Cómo instalar el servidor web Caddy en Linux

En estos días, HTTPS es clave cuando se aloja un sitio web. Sin ella, sus usuarios podrían estar filtrando datos muy personales de su sitio web al mundo. Para resolver esto, muchos webmasters de Linux han optado por usar las herramientas LetsEncrypt, ya que hacen que sea muy fácil generar un certificado. Aún así, por más fácil que sea LetsEncrpyt, habilitarlo en Nginx o Apache en Linux puede ser un poco complicado. Afortunadamente, hay una mejor manera. Presentamos el servidor web Caddy. Es el servidor web que tiene HTTPS habilitado de forma predeterminada. Si estás harto de problemas con los certificados SSL, Caddy puede ser justo lo que necesitas.

Instalando Caddy

Instalar el servidor web Caddy funciona bastantelo mismo sin importar qué sistema operativo del servidor esté utilizando. La razón por la que Caddy es tan fácil de instalar es por la elección del desarrollador de usar un script Bash descargable para instalar el software, en lugar de agregar repositorios de software de terceros o instalar a través de binarios.

En este tutorial, utilizaremos Ubuntu Server, aunque ejecutar el servidor web Caddy también funcionará bien en la mayoría de los demás sistemas operativos Linux, incluso en los de escritorio. Para comenzar, asegúrese de tener el Rizo aplicación en tu PC con Linux. Si no lo hace, abra una terminal, busque "curl" en su administrador de paquetes e instálelo.

Nota: determine si ya tiene rizo ejecutando rizo en la terminal Si aparece el cuadro de diálogo "ayuda" para el programa, tiene Rizo en tu máquina Linux.

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

El servidor web Caddy es de uso gratuito para uso personal, pero debe especificarlo. ¿Planea utilizar Caddy en un entorno empresarial? Ejecute el comando de instalación con:

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

Ejecutar Curl lo canalizará a través de Bash e iniciará automáticamente el proceso de instalación. El instalador de Caddy tardará en descargar el binario del servidor web y colocarlo en / usr / local / bin / directorio. Si la instalación se realiza correctamente, verá un mensaje que dice "Instalado correctamente".

En este punto, deberá modificar el binario Caddy. Ejecute el siguiente comando en la terminal, con sudo privilegios

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

Configurando Caddy

Caddy está instalado en el servidor. El siguiente paso en el proceso es configurar la estructura del directorio. Comience por obtener un terminal raíz. Hacer esto hará que la modificación de carpetas en el sistema de archivos sea mucho más rápida, ya que no necesitará ingresar sudo para cada comando, seguido de una contraseña.

En la mayoría de los sistemas, los usuarios pueden iniciar sesión directamente en la cuenta raíz con:

su

Sin embargo, en el servidor Ubuntu, la cuenta de Root está bloqueada por razones de seguridad. Para evitar esto, obtenga un shell de raíz con sudo.

sudo -s

Ahora que tenemos acceso de root, cree los directorios necesarios para que el servidor Caddy funcione correctamente.

mkdir /etc/caddy
mkdir /etc/ssl/caddy

Nota: Si su servidor ya tiene un / var / www / directorio, omita este último mkdir mando.

mkdir /var/www

A continuación, cree un nuevo "Caddyfile" dentro de / etc / caddy /.

touch /etc/caddy/Caddyfile

Utilizando la chmod comando, actualice los permisos para la subcarpeta Caddy dentro de / etc / ssl /.

chmod 0770 /etc/ssl/caddy

Finalmente, chown el / var / www / directorio:

chown www-data: /var/www

Caddy Systemd File

La mayoría de los servidores, especialmente el servidor Ubuntu, hacen pesadosuso del sistema systemd init. Sin embargo, dado que el servidor web se instala a través de la secuencia de comandos Bash, un archivo systemd no está presente. En cambio, tendremos que hacer el nuestro. Utilizar el toque comando para crear un nuevo archivo de servicio en blanco.

touch /lib/systemd/system/caddy.service

Abre el nuevo caddy.service archivar y pegar el siguiente código en él:

[Unit]
Description=Caddy HTTP/2 web server
Documentation=https://caddyserver.com/docs
After=network-online.target
Wants=network-online.target

[Service]
Restart=on-failure
StartLimitInterval=86400
StartLimitBurst=5

User=www-data
Group=www-data
; Letsencrypt-issued certificates will be written to this directory.
Environment=CADDYPATH=/etc/ssl/caddy

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

LimitNOFILE=1048576
LimitNPROC=64

PrivateTmp=true
PrivateDevices=true
ProtectHome=true
ProtectSystem=full
ReadWriteDirectories=/etc/ssl/caddy

; The following additional security directives only work with systemd v229 or later.
; They further retrict privileges that can be gained by caddy. Uncomment if you like.
; Note that you may have to add capabilities required by any plugins in use.
;CapabilityBoundingSet=CAP_NET_BIND_SERVICE
;AmbientCapabilities=CAP_NET_BIND_SERVICE
;NoNewPrivileges=true

[Install]
WantedBy=multi-user.target

Hay mucho código para el caddy.service archivo, así que haz tu mejor esfuerzo para asegurarte de que todo esté allí. Cuando esté seguro, guarde los cambios presionando el Ctrl + X combinación de teclado Salga del editor con Ctrl + X.

systemctl enable caddy.service
systemctl start caddy.service

Después de configurar systemd, todo debería estar listo para funcionar.

Configurar dominios

Caddy, como cualquier otro servidor web, necesita un poco de configuración antes de usarlo. Comience creando una carpeta de dominio:

Nota: asegúrese de cambiar el nombre de "test-domain.org" con su dominio.

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

Luego, edite el archivo Caddyfile Creamos antes.

nano /etc/caddy/Caddyfile

Pegue el siguiente código para activar su nuevo dominio:

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

Reinicie el servicio systemd Caddy para guardar los cambios. Cuando el servicio termina de reiniciarse, Caddy está listo para usar en su servidor.

systemctl restart caddy.service
</p>

Comentarios