Configuraciones opcionales para servidores

De WikiSalud
Saltar a: navegación, buscar

Contenido

Resumen

Configuraciones opcionales para realizar en servidores

Introducción

Recopilación de configuraciones opcionales a realizar en servidores que lo requieran específicamente.
De ninguna forma es una guía avanzada, sino un cajón de sastre con ideas a usar. Los presentamos en forma de casos y solución sugerida.

Casos

Cliente de correo desde consola

  • Caso

Necesita enviar correos desde consola, normalmente como parte de una configuración de backup o de avisos de emergencia. Si bien existen soluciones más precisas usando el servidor MTA que su servidor seguramente ha instalado (Exim en Debian), es posible que la configuración se le haga demasiado complicado.

  • Solución propuesta

Mutt. Con el sera capaz de usar cualquier cuenta de correo, y enviar hacia cualquier servicio de correo.

  • Procedimiento
    • Instale mutt

aptitude install mutt

    • Cree el archivo de configuracion en el directorio home del usuario que ha de enviar correos
/root/.muttrc
# Datos de la cuenta
set from = "cuenta@dominio.gob.sv"
set realname = "Firewall"
# Credenciales para el servidor SmartHost
set smtp_authenticators = "LOGIN"
set smtp_url = "smtps://cuenta@dominio.gob.sv@mail.dominio.gob.sv:465/"
# Si su contraseña tiene caracteres especiales, escape con barra invertida
set smtp_pass = "Pa\$\$word"
    • Envíe un correo de prueba, servirá para aceptar los certificados del servidor de correo
mutt -nx -s "Primer envío con Mutt" cuenta@gmail.com
    • Se recomienda redirigir texto para automatizarlo.
echo "Contenido del servidor `hostname -f`" |mutt -nx -s "Desde servidor `hostname -f`" cuenta@gmail.com
    • Adjunte fichero con la opción -a
mutt -nx -s "Firewall: Reporte y Backup $fecha " alortiz@salud.gob.sv -a /root/fws/backup-$fecha.tgz <<MAFI
Esta es otra forma de agregar el contenido.
De hecho, puede automatizar operaciones de varios clientes (smbclient, ftp, etc) con este método
MAFI

Configurando idioma en Debian

  • Caso

Cuando se usa el instalador de red de Debian, existe una limitante a la hora de configurar el idioma, sobre todo cuando se hace una instalación miníma (Propia de servidores). Gran parte del software hoy en día se encarga por si mismo de las cuestiones de internacionalización, pero otros tendrán problemas al trabajar con caracteres propios del español: OpenLDAP tendrá problemas cuando ingrese contenido con carácteres especiales por medio de ficheros LDIF; Owncloud no podrá mostrar esos caracteres especiales, y dañará el nombre de los archivos.

  • Solución propuesta

Reconfigurar locales, el componente en Debian que se encarga de la configuración de idiomas; tzdata, que se encarga de la ubicación geográfica, útil para cuestiones de hora, y otros.

  • Procedimiento
    • Preconfigurar el idioma (Para otros países Latinoamericanos, sirváse cambiar la SV por la representación de su país)
export LANG=es_SV.UTF-8
    • Instalar locales
aptitude install locales-all
    • Reconfigure ahora las locales para compilar las que corresponden con su país

En el asistente que aparece, busque las locales que se corresponde. Si escoge más de una, cuide de seleccionar aquella que quiere por defecto.

dpkg-reconfigure locales
    • Configurar zona horario escogiéndola en el asistente que aparezca con el siguiente comando
dpkg-reconfigure tzdata

Configurar NTP

  • Caso

La configuración de hora es necesaria para el sistema. Necesita sincronizar varios servidores para tareas de sincronización, backup, etc.

  • Solución propuesta

Configurar NTP como cliente

  • Procedimiento
    • Instalar NTP
aptitude install ntp
    • Configuracion

En el fichero /etc/ntp.conf, configure la opción server con la dirección del servidor NTP de su organización (La solución ideal), o del que esta más cerca geográficamente a usted

...
server ntp.salud.gob.sv
...

Instalar JRE de Oracle en Debian

  • Caso

Su servidor necesita correr una aplicación Java a la que le basta el JRE de toda la vida, tal como Openfire. Como Debian ya no mantiene paquetes, y ya que las versiones más viejas son agujeros de seguridad ya superados, instalar Java 8 (última versión a la hora de escribir estas líneas, y con una proclamada compatibilidad hacia atrás con versiones anteriores) debe ser su procedimiento estándar

  • Solución propuesta

Instalar Java 8 con alternatives. Otras soluciones como JavaPackaging aún no soportan Java 8

  • Procedimiento
    • Previamente

Cree el directorio jvm

mkdir /usr/lib/jvm/
    • Obtenga el paquete Java

Obtenga el paquete del sitio de de Oracle para Java y escoga JRE, si bien Server JRE tienen un nombre parece tentador... Escoja el .tar.gz de acuerdo a la arquitectura de su servidor. Desempaque el paquete en el directorio jvm

tar -xzvf <paquete-java-8>.tar.gz -C /usr/lib/jvm/
cd /usr/lib/jvm
ln -s <paquete-java-8>/ jre_oracle

Cree un enlace simbólico del directorio recién creado a uno jre, lo cual facilitará la posterior actualización a una versión nueva

ln -s /usr/lib/jvm/{<directorio-java-recien-creado,jre}
    • Empacando los manuales
gzip `readlink -f  /usr/lib6464/jvm/jdk_oracle/man/man1/java.1 `
gzip `readlink -f  /usr/lib6464/jvm/jre_oracle_oracle/man/man1/rmid.1`
gzip `readlink -f  /usr/lib6464/jvm/jre_oracle_oracle/man/man1/javaws.1`
gzip `readlink -f  /usr/lib6464/jvm/jre_oracle_oracle/man/man1/jjs.1`
gzip `readlink -f  /usr/lib6464/jvm/jre_oracle_oracle/man/man1/servertool.1`
gzip `readlink -f  /usr/lib6464/jvm/jre_oracle_oracle/man/man1/tnameserv.1`
gzip `readlink -f  /usr/lib6464/jvm/jre_oracle_oracle/man/man1/orbd.1`
gzip `readlink -f  /usr/lib6464/jvm/jre_oracle_oracle/man/man1/unpack200.1`
gzip `readlink -f  /usr/lib6464/jvm/jre_oracle_oracle/man/man1/keytool.1`
gzip `readlink -f  /usr/lib6464/jvm/jre_oracle_oracle/man/man1/pack200.1`
gzip `readlink -f  /usr/lib6464/jvm/jre_oracle_oracle/man/man1/policytool.1`
gzip `readlink -f  /usr/lib6464/jvm/jre_oracle_oracle/man/man1/rmiregistry.1`
    • Configuración con update-alternatives

Asegurése que la ruta /usr/lib/jvm/jre existe. Luego, de eso, basta con la siguiente configuración de update-alternatives.

update-alternatives --install /usr/bin/java java /usr/lib64/jvm/jre_oracle/bin/java 1 \
--slave /usr/share/man/man1/java.1.gz java.1.gz /usr/lib64/jvm/jre_oracle/man/man1/java.1.gz \
--slave /usr/bin/jjs jjs /usr/lib64/jvm/jre_oracle/bin/jjs \
--slave /usr/share/man/man1/jjs.1.gz jjs.1.gz /usr/lib64/jvm/jre_oracle/man/man1/jjs.1.gz \
--slave /usr/bin/keytool keytool /usr/lib64/jvm/jre_oracle/bin/keytool \
--slave /usr/share/man/man1/keytool.1.gz keytool.1.gz /usr/lib64/jvm/jre_oracle/man/man1/keytool.1.gz \
--slave /usr/bin/orbd orbd /usr/lib64/jvm/jre_oracle/bin/orbd \
--slave /usr/share/man/man1/orbd.1.gz orbd.1.gz /usr/lib64/jvm/jre_oracle/man/man1/orbd.1.gz \
--slave /usr/bin/policytool policytool /usr/lib64/jvm/jre_oracle/bin/policytool \
--slave /usr/share/man/man1/policytool.1.gz policytool.1.gz /usr/lib64/jvm/jre_oracle/man/man1/policytool.1.gz \
--slave /usr/bin/rmid rmid /usr/lib64/jvm/jre_oracle/bin/rmid \
--slave /usr/share/man/man1/rmid.1.gz rmid.1.gz /usr/lib64/jvm/jre_oracle/man/man1/rmid.1.gz \
--slave /usr/bin/rmiregistry rmiregistry /usr/lib64/jvm/jre_oracle/bin/rmiregistry \
--slave /usr/share/man/man1/rmiregistry.1.gz rmiregistry.1.gz /usr/lib64/jvm/jre_oracle/man/man1/rmiregistry.1.gz \
--slave /usr/bin/servertool servertool /usr/lib64/jvm/jre_oracle/bin/servertool \
--slave /usr/share/man/man1/servertool.1.gz servertool.1.gz /usr/lib64/jvm/jre_oracle/man/man1/servertool.1.gz \
--slave /usr/bin/tnameserv tnameserv /usr/lib64/jvm/jre_oracle/bin/tnameserv \
--slave /usr/share/man/man1/tnameserv.1.gz tnameserv.1.gz /usr/lib64/jvm/jre_oracle/man/man1/tnameserv.1.gz


update-alternatives --install /usr/lib64/browser-plugins/javaplugin.so javaplugin /usr/lib64/jvm/jdk1.8.0_11/jre/lib/amd64/libnpjp2.so 1 \
--slave /usr/bin/javaws javaws /usr/lib64/jvm/jre_oracle/bin/javaws \
--slave /usr/share/man/man1/javaws.1.gz javaws.1.gz /usr/lib64/jvm/jre_oracle/man/man1/javaws.1.gz

Por último, crear el enlace simbólico jre

ln -s /usr/lib/jvm/jre /etc/alternatives/

Siendo servidor, y al ser la única versión de java disponible, quedará como predeterminada. Si ya tiene otra versión instalada, tendrá que escogerla con

update-alternatives --config java
    • Configuración con alternativa para entornos donde este instalado openjdk

En este caso (Más posible en entornos de escritorio, pero lo dejo como apunte), aparecen errores de la siguiente forma:

update-alternatives: error: la alternativa javaws no puede ser esclava de java: porque es una alternativa maestra

Entonces será necesario configurar cada una, teniendo como esclavo nada más que a su manual

update-alternatives --install /usr/bin/java java /usr/lib/jvm/jre/bin/java 1 \
--slave /usr/share/man/man1/java.1.gz java.1.gz /usr/lib/jvm/jre/man/man1/java.1.gz \
--slave /usr/bin/jjs jjs /usr/lib/jvm/jre/bin/jjs \
--slave /usr/share/man/man1/jjs.1.gz jjs.1.gz /usr/lib/jvm/jre/man/man1/jjs.1.gz \

update-alternatives --install /usr/bin/tnameserv tnameserv /usr/lib/jvm/jre/bin/tnameserv 1 \
--slave /usr/share/man/man1/tnameserv.1.gz tnameserv.1.gz /usr/lib/jvm/jre/man/man1/tnameserv.1.gz

update-alternatives --install /usr/bin/servertool servertool /usr/lib/jvm/jre/bin/servertool 1 \
--slave /usr/share/man/man1/servertool.1.gz servertool.1.gz /usr/lib/jvm/jre/man/man1/servertool.1.gz

update-alternatives --install /usr/bin/rmiregistry rmiregistry /usr/lib/jvm/jre/bin/rmiregistry 1 \
--slave /usr/share/man/man1/rmiregistry.1.gz rmiregistry.1.gz /usr/lib/jvm/jre/man/man1/rmiregistry.1.gz

update-alternatives --install /usr/bin/rmid rmid /usr/lib/jvm/jre/bin/rmid 1 \
--slave /usr/share/man/man1/rmid.1.gz rmid.1.gz /usr/lib/jvm/jre/man/man1/rmid.1.gz

update-alternatives --install /usr/bin/policytool policytool /usr/lib/jvm/jre/bin/policytool 1 \
--slave /usr/share/man/man1/policytool.1.gz policytool.1.gz /usr/lib/jvm/jre/man/man1/policytool.1.gz

update-alternatives --install /usr/bin/orbd orbd /usr/lib/jvm/jre/bin/orbd 1 \
--slave /usr/share/man/man1/orbd.1.gz orbd.1.gz /usr/lib/jvm/jre/man/man1/orbd.1.gz

update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/jre/bin/javaws 1 \
--slave /usr/share/man/man1/javaws.1.gz javaws.1.gz /usr/lib/jvm/jre/man/man1/javaws.1.gz

update-alternatives --install /usr/bin/keytool keytool /usr/lib/jvm/jre/bin/keytool 1 \
--slave /usr/share/man/man1/keytool.1.gz keytool.1.gz /usr/lib/jvm/jre/man/man1/keytool.1.gz

En ese caso, ya que tiene dos alternativas configuradas, tendrá que escoger esta. Nada más sencillo, si es que ha seguido las rutas propuestas:

update-alternatives --set java /usr/lib/jvm/jre/bin/java
update-alternatives --set tnameserv /usr/lib/jvm/jre/bin/tnameserv
update-alternatives --set servertool /usr/lib/jvm/jre/bin/servertool
update-alternatives --set rmiregistry /usr/lib/jvm/jre/bin/rmiregistry
update-alternatives --set rmid /usr/lib/jvm/jre/bin/rmid
update-alternatives --set policytool /usr/lib/jvm/jre/bin/policytool
update-alternatives --set orbd /usr/lib/jvm/jre/bin/orbd
update-alternatives --set javaws /usr/lib/jvm/jre/bin/javaws
update-alternatives --set keytool /usr/lib/jvm/jre/bin/keytool

Véase también

Es posible que necesite leer estos otros artículos

En la línea de documentación sobre el uso de consola, hallará útil los siguientes

Las siguientes son configuraciones avanzadas para administración de sistemas linux

Herramientas personales
Espacios de nombres

Variantes
Acciones
Navegación
Herramientas