Cómo instalar Blacklistd en FreeBSD 11.1
Introducción Cualquier servicio que esté conectado a Internet es un objetivo potencial para ataques de fuerza bruta o acceso injustificado. Hay herramientas como fail2ba
Este tutorial muestra OpenBSD como una solución de comercio electrónico con PrestaShop y Apache.
Se requiere Apache porque PrestaShop tiene requisitos complejos de reescritura de URL que no son compatibles con el servidor web incorporado de OpenBSD, httpd. Este tutorial utiliza certificados autofirmados. Utilice un certificado verificado para la producción.
Temporalmente cree un usuario normal con permiso para usar doas
sin contraseña. Este acceso se eliminará después de la configuración.
user add -c "Example User" -m -G wheel -L staff auser
passwd auser
echo 'permit nopass keepenv :wheel' > /etc/doas.conf
Agregue el repositorio de paquetes de OpenBSD.
echo 'https://cdn.openbsd.org/pub/OpenBSD' > /etc/installurl
Reenvíe correos electrónicos de estado y seguridad diarios a su dirección.
echo '[email protected]' > /root/.forward
Establecer el nombre de host del servidor.
echo 'www.example.com' > /etc/myname
hostname www.example.com
Agregue el FQDN y la dirección IP de su servidor /etc/hosts
.
Reemplace 192.0.2.1
con su dirección IP Vultr.
127.0.0.1 localhost
::1 localhost
192.0.2.1 www.example.com
Agregue los paquetes necesarios para PrestaShop y Apache. Elija las últimas versiones cuando se le solicite.
doas su
pkg_add apache-httpd php php-curl php-gd php-intl php-pdo_mysql php-zip mariadb-client mariadb-server wget unzip
Creó un certificado SSL autofirmado para la prueba. Establezca el Nombre común en el FQDN de su servidor, por ejemplo, www.example.com.
openssl req -x509 -new -nodes -newkey rsa:4096 -keyout /etc/ssl/private/example.com.key -out /etc/ssl/example.com.crt -days 3650 -sha256
chmod 0600 /etc/ssl/private/example.com.key
Localice la URL de la última versión de PrestaShop , descárguela /tmp
y extráigala /var/www/htdocs/prestashop
.
cd /tmp
wget <https://download.prestashop.com/download/releases/prestashop_1.7.6.4.zip>
unzip prestashop_1.7.6.4.zip -d /var/www/htdocs/prestashop
chown -R www:www /var/www/htdocs/prestashop
Configure el firewall para bloquear todo el tráfico entrante, excepto ssh , www y https .
Haga una copia de respaldo de /etc/pf.conf
.
cp /etc/pf.conf /etc/pf.conf.bak
Edite /etc/pf.conf
como se muestra.
set skip on lo
block in
pass out
pass in on egress inet proto tcp to port {ssh, www, https} \
flags S/SA keep state
Probar y activar las reglas del firewall.
doas pfctl -nf /etc/pf.conf
doas pfctl -f /etc/pf.conf
Copia de seguridad de su /etc/mail/smtpd.conf
archivo.
cp /etc/mail/smtpd.conf /etc/mail/smtpd.conf.bak
Edite /etc/mail/smtpd.conf
como se muestra a continuación.
Notas: * La definición de tabla para secretos contiene el nombre de usuario y la contraseña para la retransmisión de correo. * La acción de salida busca el nombre de usuario y contraseña bajo la etiqueta prestashop
de /etc/mail/secrets
y transmite el correo electrónico a través de su servidor de correo electrónico.
table aliases file:/etc/mail/aliases
table secrets file:/etc/mail/secrets
listen on lo0
action "local_mail" mbox alias <aliases>
action "outbound" relay host smtp+tls://[email protected]:587 \
tls no-verify auth <secrets>
match from local for local action "local_mail"
match from local for any action "outbound"
Crear /etc/mail/secrets
Reemplace la dirección de correo electrónico y la contraseña con las credenciales que utiliza para su servidor de correo electrónico.
echo "prestashop [email protected]:password" > /etc/mail/secrets
Establecer permisos para asegurar /etc/mail/secrets
chmod 0600 /etc/secrets
Pruebe el archivo de configuración para detectar errores y reinicie el demonio smtpd.
smtpd -n
rcctl restart smtpd
Configure el proceso PHP-FPM para escuchar en un socket TCP en lugar de un socket de dominio UNIX.
Realice el siguiente cambio a continuación para el /etc/php-fpm.conf
archivo.
...
; If using a TCP port, never expose this to a public network.
;listen = /var/www/run/php-fpm.sock
listen = 127.0.0.1:9000
Realice algunos cambios adicionales en el entorno PHP en /etc/php-7.3.ini
. Este nombre de archivo puede cambiar ligeramente si la versión es más reciente que la 7.3. Estos cambios:
Configure PHP para enviar correos electrónicos a través de sendmail.
; Default Value: not set
;chroot = /var/www
...
; Maximum allowed size for uploaded files.
; <http://php.net/upload-max-filesize>
upload_max_filesize = 6M
...
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; <http://php.net/sendmail-path>
;sendmail_path =
sendmail_path = /usr/sbin/sendmail -t -i
...
; Whether to allow the treatment of URLs (like <http://> or <ftp://)> as files.
; <http://php.net/allow-url-fopen>
allow_url_fopen = On
...
; Maximum size of POST data that PHP will accept.
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.
; <http://php.net/post-max-size>
post_max_size = 12M
Habilita los complementos de PHP.
cp /etc/php-7.3.sample/* /etc/php-7.3/.
Habilite e inicie el demonio PHP-FPM. El nombre del demonio puede ser ligeramente diferente si la versión es más nueva.
rcctl enable php73_fpm
rcctl start php73_fpm
MariaDB proporciona el backend de la base de datos para PrestaShop. Debido a que MariaDB necesita más archivos abiertos de los que permite la clase predeterminada, cree una clase especial en /etc/login.conf
.
Al final del archivo, agregue las siguientes líneas:
mysqld:\
:openfiles-cur=1024:\
:openfiles-max=2048:\
:tc=daemon:
Instala MariaDB.
doas su
mysql_install_db
rcctl enable mysqld
rcctl start mysqld
Configure la seguridad de MariaDB.
mysql_secure_installation
Crea la base de datos PrestaShop. Utiliza una contraseña segura.
mysql -u root
CREATE DATABASE prestashop;
GRANT ALL PRIVILEGES ON prestashop.* TO 'prestashop'@'localhost' IDENTIFIED BY 'password123';
FLUSH PRIVILEGES;
EXIT
Apoyo /etc/apache2/httpd2.conf
cp /etc/apache2/httpd2.conf /etc/apache2/httpd2.conf.bak
Realice los siguientes cambios en /etc/apache2/httpd2.conf
, #
para habilitar y deshabilitar los módulos.
Listen 443
...
LoadModule mpm_event_module /usr/local/lib/apache2/mod_mpm_event.so
#LoadModule mpm_prefork_module /usr/local/lib/apache2/mod_mpm_prefork.so
LoadModule proxy_module /usr/local/lib/apache2/mod_proxy.so
LoadModule proxy_fcgi_module /usr/local/lib/apache2/mod_proxy_fcgi.so
LoadModule ssl_module /usr/local/lib/apache2/mod_ssl.so
LoadModule rewrite_module /usr/local/lib/apache2/mod_rewrite.so
...
ServerAdmin [email protected]
ServerName 192.0.2.1:80
Se /etc/apache2/httpd2.conf
producen varios cambios más en la parte inferior del archivo. Eliminar #
de las declaraciones de inclusión indicadas.
Agregue las líneas de alojamiento virtual al final.
# Server-pool management (MPM specific)
Include /etc/apache2/extra/httpd-mpm.conf
...
# Virtual Hosts
IncludeOptional /etc/apache2/sites/*.conf
Crea el /etc/apache2/sites
directorio.
mkdir /etc/apache2/sites
Crea /etc/apache2/sites/example.conf
con la siguiente información:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
ServerAdmin [email protected]
DocumentRoot "/var/www/htdocs/prestashop"
<Directory "/var/www/htdocs/prestashop">
Options -Indexes +Multiviews +FollowSymLinks
AllowOverride All
<Limit GET POST OPTIONS>
</Limit>
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:443>
ServerName example.com
ServerAlias www.example.com
ServerAdmin [email protected]
DocumentRoot "/var/www/htdocs/prestashop"
<Directory "/var/www/htdocs/prestashop">
Options -Indexes +Multiviews +FollowSymLinks
AllowOverride All
<Limit GET POST OPTIONS>
</Limit>
Require all granted
</Directory>
SSLEngine On
SSLCertificateFile "/etc/ssl/example.com.crt"
SSLCertificateKeyFile "/etc/ssl/private/example.com.key"
SSLCipherSuite HIGH:!aNULL
</VirtualHost>
Configure el módulo proxy de Apache agregando lo siguiente a /etc/apache2/sites/example.conf
<IfModule proxy_module>
<IfModule dir_module>
DirectoryIndex index.php
</IfModule>
<FilesMatch "\.php$">
SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>
</IfModule>
Pruebe la configuración, luego habilite e inicie Apache.
apachectl configtest
rcctl enable apache2
rcctl start apache2
Asegúrese de que Apache esté escuchando en los puertos 80 y 443.
netstat -ln -finet
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp 0 0 *.443 *.* LISTEN
tcp 0 0 127.0.0.1.25 *.* LISTEN
tcp 0 0 *.22 *.* LISTEN
tcp 0 0 *.80 *.* LISTEN
tcp 0 0 127.0.0.1.3306 *.* LISTEN
tcp 0 0 127.0.0.1.9000 *.* LISTEN
Navegue a su sitio web en http://www.example.com
. Se iniciará el asistente de instalación de PrestaShop.
Una vez que complete la instalación, tome nota del frente de la tienda y los enlaces administrativos y elimine el directorio /var/www/htdocs/prestashop/install
.
Habilitar SSL.
Cambia tu contraseña administrativa.
Copia de seguridad de su tienda y su base de datos:
cd /var/www/htdocs
doas tar cvfz /home/auser/prestashop.tar.gz prestashop/
doas mysqldump -u prestashop -p prestashop | gzip -4 > /home/auser/prestashop.sql.tar.gz
doas chown auser:auser /home/auser/prestashop*
Elimine el acceso doas para su cuenta de usuario recreando el doas.conf
archivo.
echo 'permit keepenv :wheel' > /etc/doas.conf
Introducción Cualquier servicio que esté conectado a Internet es un objetivo potencial para ataques de fuerza bruta o acceso injustificado. Hay herramientas como fail2ba
Introduction A FAMP stack, which is comparable to a LAMP stack on Linux, is a collection of open-source software that is typically installed together t
Este tutorial le mostrará cómo configurar OpenBSD 5.6 con un disco completamente encriptado en su Vultr VPS. Una nota sobre la parte de cifrado: la mayoría de los centros de datos alrededor de
Usar un usuario sudo para acceder a un servidor y ejecutar comandos a nivel raíz es una práctica muy común entre Linux y Unix Systems Administrator. El uso de un sud
¿Usando un sistema diferente? osTicket es un sistema de tickets de soporte al cliente de código abierto. El código fuente de osTicket está alojado públicamente en Github. En este tutorial
Using a Different System? Osclass is an open source project that allows you to easily create a classified site without any technical knowledge. Its sourc
Using a Different System? Wiki.js is a free and open source, modern wiki app built on Node.js, MongoDB, Git and Markdown. Wiki.js source code is publicl
Using a Different System? Lychee 3.1 Photo Album is a simple and flexible, free and open source photo-management tool which runs on a VPS server. It install
Using a Different System? Fork is an open source CMS written in PHP. Forks source code is hosted on GitHub. This guide will show you how to install Fork CM
Fuera de la caja, los servidores Vultr FreeBSD no están configurados para incluir espacio de intercambio. Si su intención es una instancia de nube desechable, probablemente no necesite
El sistema operativo FreeBSD utiliza UFS (Sistema de archivos Unix) para su sistema de archivos de particiones raíz; también conocido como freebsd-ufs en caso de una actualización
Using a Different System? Selfoss RSS Reader is a free and open source self-hosted web-based multipurpose, live stream, mashup, news feed (RSS/Atom) reade
Using a Different System? Matomo (formerly Piwik) is an open source analytics platform, an open alternative to Google Analytics. Matomo source is hosted o
Using a Different System? TLS 1.3 is a version of the Transport Layer Security (TLS) protocol that was published in 2018 as a proposed standard in RFC 8446
Using a Different System? Introduction Craft CMS is an open source CMS written in PHP. Craft CMS source code is hosted on GitHub. This guide will show yo
¿Usando un sistema diferente? Backdrop CMS 1.8.0 es un sistema de administración de contenido (CMS) simple y flexible, amigable para dispositivos móviles, gratuito y de código abierto que nos permite
¿Usando un sistema diferente? ImpressPages CMS 5.0 es un sistema de gestión de contenido (CMS) simple y efectivo, gratuito y de código abierto, fácil de usar y basado en MVC
Using a Different System? NodeBB is a Node.js based forum software. It utilizes web sockets for instant interactions and real-time notifications. The NodeB
Using a Different System? ESpeak can generate text-to-speech (TTS) audio files. These can be useful for many reasons, such as creating your own Turin
¿Usando un sistema diferente? TaskWarrior es una herramienta de gestión de tiempo de código abierto que es una mejora en la aplicación Todo.txt y sus clones. Debido a th
ZPanel, un panel de control de alojamiento web popular, se bifurcó en 2014 a un nuevo proyecto llamado Sentora. Aprende a instalar Sentora en tu servidor con este tutorial.
Aprende cómo instalar Vtiger CRM, una aplicación de gestión de relaciones con el cliente, en CentOS 7 para aumentar tus ventas y mejorar el servicio al cliente.
Esta guía completa le mostrará cómo configurar un servidor Counter-Strike 1.6 en Linux, optimizando el rendimiento y la seguridad para el mejor juego. Aprende los pasos más recientes aquí.
Los ataques de ransomware van en aumento, pero ¿puede la IA ayudar a lidiar con el último virus informático? ¿Es la IA la respuesta? Lea aquí, sepa que la IA es una bendición o una perdición
ReactOS, un sistema operativo de código abierto y gratuito, está aquí con la última versión. ¿Puede satisfacer las necesidades de los usuarios de Windows de hoy en día y acabar con Microsoft? Averigüemos más sobre este estilo antiguo, pero una experiencia de sistema operativo más nueva.
Whatsapp finalmente lanzó la aplicación de escritorio para usuarios de Mac y Windows. Ahora puede acceder a Whatsapp desde Windows o Mac fácilmente. Disponible para Windows 8+ y Mac OS 10.9+
Lea esto para saber cómo la Inteligencia Artificial se está volviendo popular entre las empresas de pequeña escala y cómo está aumentando las probabilidades de hacerlas crecer y dar ventaja a sus competidores.
Recientemente, Apple lanzó macOS Catalina 10.15.4, una actualización complementaria para solucionar problemas, pero parece que la actualización está causando más problemas que conducen al bloqueo de las máquinas Mac. Lee este artículo para obtener más información
13 Herramientas comerciales de extracción de datos de Big Data
Nuestra computadora almacena todos los datos de una manera organizada conocida como sistema de archivos de diario. Es un método eficiente que permite a la computadora buscar y mostrar archivos tan pronto como presiona buscar.