Servidor en Dimensis 2020
1.1. Introducción
[+]Servidor virtual en dimensis para la FJI/Precarios. Iniciado por Lorena seguiend los pasos relatados en Servidor en Dimensis 2014, y con ayuda de Xavier (dp).
- Dominio (IP): 62.171.180.88
- usuario: root
- contraseña: (pedir a Lorena - guardada en archivo keepass de la comissión)
- S.O: Ubuntu 18.04 (64 bits)
- RAM: 8Gb
- Cores: 4
- Disco: 200Gb SSD
1.2. Configuración inicial: HECHO
[+]En la primera conexión por ssh como root al servidor hay que hacer un apt-get update
para refrescar la lista de paquetes instalables.
Se añade el usuario lorena y se le da permisos de sudo. A partir de aquí se hacen todos los pasos desde el usuario lorena.
1.2.1. Locale: HECHO
>>sudo apt-get install language-pack-ca-base language-pack-es-base >>export LANGUAGE=es_ES.UTF-8 >>export LANG=es_ES.UTF-8 >>export LC_ALL=es_ES.UTF-8 -bash: warning: setlocale: LC_ALL: cannot change locale (es_ES.UTF-8) >>sudo locale-gen es_ES.UTF-8 Generating locales (this might take a while)... es_ES.UTF-8... done Generation complete. >>sudo dpkg-reconfigure locales
Aquí se eligieron Todas las configuraciones regionales y en la configuración regional predeterminada para el entorno del sistema:
empieza en en_US.UTF-8 y acabó en es_VE.UTF-8.
1.2.2. Ubuntu Install para Tiki
Seguidos estos pasos, en general (con alguna pequeña variante)
https://doc.tiki.org/Ubuntu+Install (info de version ubuntu 18.04)
1.2.3. Programas extra instalados
sudo apt install mc net-tools htop fail2ban lftp sendemail munin
1.2.4. Redirecciones de correo
Usando Postfix, y retocando los archivos a mano.
1.2.4.1. Configuración del servidor postifx a mano
Para el correo electrónico, usamos postfix
con una configuración mínima y simple. Con respecto a la configuración por defecto en Ubuntu, podemos modificar dos ficheros:
-
/etc/postfix/main.cf
, al que se han añadido las líneas:
virtual_alias_domains = precarios.org virtual_alias_maps = hash:/etc/postfix/virtual -
/etc/postfix/virtual
, en el que se indican las nuevas direcciones de correo (p.e., presidente(at)precarios.org) y separado por un espacio, el correo al que se redirigen los mensajes que llegan a él (en ese caso, quiensea(at)gmail.com). - El archivo virtual está en formato legible por humanos, pero hace falta convertirlo en un formato adecuado para que lo use postfix. Eso se hace ejecutando
sudo postmap /etc/postfix/virtual
No es necesario arrancar de nuevo el serviciopostfix
.
Copia del contenido del archivo /etc/postfix/virtual:
...
1.2.4.2. Arreglar problema postfix (que hacía falta en ubuntu 16.04)
De: http://www.zenbien.com/helo-command-rejected-needfully-qualified-hostname-avec-postfix
Hecho
Buscar el archivo
locate main.cf
Que suele estar por ejemplo en:
/etc/postfix/main.cf
Editarlo
sudo nano /etc/postfix/main.cf
Añadir este valor:
myhostname = mail.precarios.org
Al poner este nombre de dominio válido desaparece el error de envio de correo en algunos servidores.
1.2.5. fail2ban
Añadido con:
sudo su apt install -y fail2ban systemctl start fail2ban systemctl enable fail2ban cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local nano /etc/fail2ban/jail.local systemctl restart fail2ban exit
Contenido cambiado del fail.local (buscar y cambiar valores por estos si hace falta):
# "bantime" is the number of seconds that a host is banned. bantime = 1000m # A host is banned if it has generated "maxretry" during the last "findtime" # seconds. findtime = 10m # "maxretry" is the number of failures before a host get banned. maxretry = 5 # Destination email address used solely for the interpolations in # jail.{conf,local,d/*} configuration files. destemail = web@precarios.org
1.2.6. Backups
Se siguie el mismo sistema que desde 2015 (aprox) si no antes. Se hace un backup diario con el script
/home/xavi/scripts/backup_webs.sh
que deja una copia temporal localmente, y la envia por sftp a un servidor externo de backups contratado por Xavier de Pedro (usuario xavi aquí).
1.2.7. Monitoreo
Con munin-node local, monitoreado con munin (master) desde un servidor de Xavier de Pedro.
sudo apt-get install munin-node munin-plugins-extra libcache-perl libcache-cache-perl cd /etc/munin/plugins && ln -s /usr/share/munin/plugins/mysql_ mysql_ && ln -s /usr/share/munin/plugins/mysql_bytes mysql_bytes && ln -s /usr/share/munin/plugins/mysql_innodb mysql_innodb && ln -s /usr/share/munin/plugins/mysql_isam_space_ mysql_isam_space_ && ln -s /usr/share/munin/plugins/mysql_queries mysql_queries && ln -s /usr/share/munin/plugins/mysql_slowqueries mysql_slowqueries && ln -s /usr/share/munin/plugins/mysql_threads mysql_threads && ln -s /usr/share/munin/plugins/apache_accesses apache_accesses && ln -s /usr/share/munin/plugins/apache_processes apache_processes && ln -s /usr/share/munin/plugins/apache_volume apache_volume && ln -s /usr/share/munin/plugins/amavis amavis sudo nano /etc/munin/munin-node.conf sudo service munin-node restart sudo apt-get install libwww-perl liblwp-useragent-determined-perl libipc-sharelite-perl logtail ls /etc/apache2/mods-enabled sudo nano /etc/apache2/mods-enabled/status.conf sudo service apache2 restart