Red/DocServidores

De Portfolio Academico
< Red

Documentacion vigente y obsoleta sobre los diferentes servicios y sistemas operativos probados.

FreeNAS

Apache

Se crea una jaula, se instala y tal, y los archivos estan aqui: /usr/local/www/apache24/data

VirtualBox

For 9.2.1.6 nightly dated 5/24/2014 and newer you can setup a virtualbox jail with only minimal configuration required! This will install Virtualbox 4.3.10. This is not "official" as it is still being tested, but should be reliable enough for you to be able to use it(with appropriate hardware) and should be able to migrate your VMs to the "official" jail if/when that happens.

Verify you are using the 9.2.1.6 nightly dated 5/24/2014 or something newer

I won't discuss how to do this. You should know what version you are using, especially if you are using nightlies.

Add and install the virtualbox template

Now go to the Jails button and click "Add Jails". Give your jail a name of your choosing. For type choose the template "VirtualBox-4.3.10". Also set an IP address of your choosing. Make sure VIMAGE is checked and verify that NAT and vanilla is unchecked. Enable autostart if you want your virtualbox jail to start at startup. Note that autostart may slow down your bootup sequence if you enable it. Click "OK" and wait for the template to download. It's almost 700MB so it can take a little while to download. Go get some coffee and come back. Don't get impatient and just let it work.

Tunables

If you plan to use bridged mode networking add the tunable to the WebGUI:

Variable: ng_ether_load Value: YES

Start the jail and use it!

If your jail isn't running yet, start the jail. Then go to http://the-ip-of-your-jail/ and you should have a login screen. The default is admin/admin. That's all there is to it!

Yes, this shiz "just works"!

https://forums.freenas.org/index.php?threads/virtualbox-in-a-jail-in-freenas.20185/

Windows

Principalmente referido a Windows XP.

AutoLogOn

El inicio automatico de sesion no esta habilitado en Windows, sin embargo se puede habilitar siguiendo estos pasos:

  • Haga clic en Inicio y, a continuación, en Ejecutar.
  • En el cuadro Abrir, escriba control userpasswords2 y haga clic en Aceptar.
    • Nota: cuando los usuarios intenten ver la información de ayuda en la ventana Cuentas de usuario de Windows XP Home Edition, dicha información no aparecerá. Además, es posible que reciban el mensaje de error siguiente:
      • No se puede hallar el archivo de Ayuda Unidad:\Windows\System32\users.hlp. Compruebe si existe en su disco. De lo contrario, necesitará instalarlo de nuevo.
  • Desactive la casilla de verificación Los usuarios deben escribir su nombre y contraseña para usar el equipo y haga clic en Aplicar.
  • En la ventana Iniciar sesión automáticamente, escriba la contraseña en el cuadro Contraseña y, a continuación, vuelva a escribirla #en el cuadro Confirmar contraseña.
  • Haga clic en Aceptar para cerrar la ventana Iniciar sesión automáticamente y, a continuación, haga clic en Aceptar para cerrar la ventana Cuentas de usuario.

SSH

Bitvise.


Debian

La mayoria de la documentacion utilizada en los servidores de Debian sirve tambien para Ubuntu. De no ser así, se indicará.

Montaje de discos duros

el montaje de los discos duros en el inicio se gestiona con /etc/fstab

UUID=122A8A9E3C6B98CE	/mnt/1TB-01/	ntfs-3g   defaults	0	0
UUID=6EDE21B7DE21788B	/mnt/1TB-02/	ntfs-3g   defaults	0	0
UUID=4109A8B87FC3FE65	/mnt/2TB/	ntfs-3g   defaults	0	0
#UUID=CC66515C665147FA	/mnt/3TB/	ntfs-3g   defaults	0	0
UUID=96FC740DFC73E641	/mnt/4TB/	ntfs-3g   defaults	0	0

Cambiar el home de un usuario

Hazlo en la creacion garrulo.

usermod -d /nuevohome/usuario usuario

FTP

El servicio ftp en esta maquina se lleva a cabo mediante el servidor Proftpd. Proftpd se puede instalar automáticamente mediante apt-get:

sudo apt-get install proftpd

Al instalar el paquete proftpd-ldap se iniciará el asistente de configuración de proftpd. Este asistente únicamente nos hace una pregunta que es si deseamos ejecutar el servidor desde inetd (solo se carga en memoria cuando existan peticiones) o como un servicio independiente (permanentemente en memoria). El funcionamiento como servicio independiente es más eficiente.

El servidor se basa en los usuarios de la maquina local, y proporciona acceso directo a la carpeta de usuario de cada uno.

FXP

FXP es un protocolo que permite la transferencia directa de archivos entre dos servidores FTP.

Para activarlo en proftpd, basta con editar el archivo /etc/proftpd/proftpd.conf, añadiendo “AllowForeignAddress on”.Fuente: ProFTPd Wiki

Reanudar descargas

Para activarlo en proftpd, basta con editar el archivo /etc/proftpd/proftpd.conf, añadiendo “AllowStoreRestart on”.Fuente: ProFTPd Wiki

Enjaular usuarios

Por seguridad, limitaremos a cada usuario ftp a su home. Para ello, editamos /etc/proftpd/proftpd.conf descomentando la linea:

DefaultRoot ~

Guacamole

Documentacion obsoleta.

Installing Guacamole is as simple as installing the guacamole-tomcat package, and then editing the /etc/guacamole/user-mapping.xml file to add some connections. The guacamole-tomcat package will install Tomcat and automatically create the necessary symbolic links to deploy Guacamole. If you don't want to use Tomcat, or you want to deploy Guacamole manually, you can install the guacamole package instead, and follow the deployment instructions provided in this chapter.

apt-get install guacamole-tomcat

If you install the guacamole-tomcat package, you will be prompted for whether you wish to restart Tomcat automatically. Tomcat must be restarted after Guacamole is installed or upgraded. If you don't want to do this, or you want to do this manually, choose "No" (the default). Choosing "Yes" will restart Tomcat for this and future installs of Guacamole.

Important

The Debian and Ubuntu packages will set up guacd such that it runs as its own reduced-privilege guacd user, for the sake of security. Similarly, the user-mapping.xml file will only be readable by users in the guacamole-web group, as it will potentially contain sensitive information like passwords in plain text.

The guacamole-tomcat package will automatically put the tomcat6 user in the guacamole-web group, but if you are installing Tomcat manually or using another servlet container, you must ensure your servlet container's user is a member of the guacamole-web group. If you do not do this, your servlet container will not be able to read user-mapping.xml, and all attempts to login to Guacamole will fail.

By default, VNC support will be installed as a dependency of the guacamole package. If you want SSH or RDP support, you will need to install libguac-client-ssh0 or libguac-client-rdp0 manually:

apt-get install libguac-client-ssh0 libguac-client-rdp0

Once installed, both Tomcat and guacd will start automatically and on boot.

Fuente


https://github.com/MysticRyuujin/guac-install

Icecast

Instalar icecast se reduce a instalar el paquete icecast2. Al instalarlo, graficamente nos requierirá las configuraciones.

Puede que no funcione bien ese configurador, asi que tambien se puede editar con nano /etc/icecast2/icecast.xml. Tambien puede ser que haya que hacer /etc/init.d/icecast2 start.

Para activar servidor seguro... https://mediarealm.com.au/articles/icecast-https-ssl-setup-lets-encrypt/

https://www.sascha-ende.de/development/general/886-icecast2-on-ubuntu-20-04-with-nginx-certbot-ssl-and-liquidsoap/

PPTP

Instalamos el paquete:

sudo apt-get install pptpd

Una vez finalizado el proceso se iniciará el servidor PPTP automáticamente, pero aún no está configurado, para lo cual ejecutaremos:

sudo nano /etc/pptpd.conf

Tras ejecutarlo aparecerá en la misma ventana del terminal el editor nano. Usando los cursores bajamos hasta el final del todo e insertamos:

localip 10.10.10.1
remoteip 10.10.10.100-200,10.10.10.245

Primera línea: Especificamos cuál será la dirección IP de nuestro servidor dentro de la VPN. P

Segunda línea: Especifica el rango de direcciones que usaremos para asignar a los clientes. En la parte anterior a la “,” (coma) hemos especificado un rango y detrás una dirección simple. Con esto hemos querido mostraros las dos posibles formas de especificar las direcciones de los clientes, es decir, que podéis especificar simplemente un rango.

Ahora vamos a añadir usuarios a nuestra VPN. Para hacerlo modificaremos el archivo chap-secrets:

sudo nano /etc/ppp/chap-secrets

Ejemplo de un archivo chap-secrets:

# Secrets for authentication using CHAP
# client        server  secret                  IP addresses
usuario         pptpd   contraseña              *
ipfija          pptpd   ipfijacon               10.10.3.5

Sólo queda configurar el cortafuegos de Ubuntu para que permita el acceso a las conexiones entrantes y redirija el tráfico:

sudo nano /etc/rc.local

Vamos hasta el final del fichero e insertamos ANTES de la última línea lo siguiente:

iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -o eth0 -j MASQUERADE

A tener en cuenta:

10.10.10.0/24 : Rango de direcciones que elegimos cuando estábamos configurando PPTPD.

eth0 : Nombre de la interfaz de red. En nuestro caso se trata de cable, si fuera WiFi recibiría el nombre de wlan0 .

Ahora vamos a proceder a activar el IP forwarding:

sudo nano /etc/sysctl.conf

Buscamos la línea net.ipv4.ip_forward=1 y le quitamos la #.

Fuente

SSH

Para instalarlo ejecuta el siguiente comando:

apt-get install openssh-server

VLC

VLC implementa por defecto una interfaz web, que esta desactivada. Para activarla, solo tenemos que seguir estos pasos:

  1. Entrar en las preferencias y seleccionar el modo de visualización Todo.
  2. Buscar el menú Interfaz y hacer click en la opción Web.

El servidor web se podrá en el puerto 8080.

VNC

Bajo escritorio GNOME, el paquete Vino nos provee de servidor VNC con configuracion grafica.

Al activarlo, es importante dejar sin marcar la opcion "Debe confirmar cada acceso a este equipo". Si no, la conexion se realizará y solo veremos una pantalla negra.

Otras opciones

Las movidas de la encriptacion

Las ultimas versiones de Vino añaden por defecto un tipo de encriptacion que pocos clientes de Windows soportan. Para desactivarlo, debería servir este comando:

gsettings set org.gnome.Vino require-encryption false

A mi no me ha funcionado.

VoIP

Pendiente de añadir la documentacion del manual.

Apuntes:

Web

En la instalacion de debian se presenta la opcion de instalarlo. Es un servidor apache 2.

Una vez instalado, las configuraciones se puede editar desde /etc/apache2/sites-available/default. El conenido se sube en /var/www.

Para poder ejecutar php, instalamos php:

aptitude install php5 php5-mysql libapache2-mod-php5

Fuente

Base de datos

Yo instalo mysql, con lo que sea que tenga configurado en el repositorio. En Debian 9 se instala con MariaDB, y sin securizar la base de datos. Hay que ejecutrar mysql_secure_installation para poder ponerle contraseña al root. https://dev.mysql.com/doc/refman/5.7/en/mysql-secure-installation.html

Para que no esté el login expuesto en todos los virtualhost, tenemos que localizar el archivo de configuracion del webserver de phpmyadmin, en este caso /etc/apache2/conf-enabled/phpmyadmin.conf y comentar la linea Alias del incio.

Alias /phpmyadmin /usr/share/phpmyadmin

Depues, iremos al host desde el que queramos acceder a phpmyadmin y le pondremos esa misma configuracion.

<VirtualHost *:80>
   ServerName onlyphpmyadmin.domain.com
   .
   .
   .
   Alias /phpmyadmin /usr/share/phpmyadmin
</VirtualHost>

LetsEncrypt

Para poder tener HTTPS, necesitamos certificados, que Lets Encrypt ya da gratis.

Las distribuciones de debian y otras ya incluyen el certbot por defecto.

Lo mas eficiente para que la instalacion de SSL no de dolores de cabeza es hacerlo de la siguiente manera:

  1. Configurar el host virtual para esa direccion. Lo haremos de forma normal, poniendo la carpeta donde irá el contenido, pero sin tener que meterlo todavia. Es recomendable recargar la configuracion de apache para ver que todo ha salido correctamente.
  2. Apuntar el dominio o subdominio a ese servidor. Este paso es necesario porque el certbot comprueba que el certificado que le estamos pidiendo es para un dominio valido instalado en ese servidor.
  3. Ejecutar el certbot. En el ultimo paso nos preguntará si queremos accesos con SSL y sin SSL, o sólo seguros. En mi caso, todos los accesos son seguros por defecto.

CGI-BIN

Yo metí mimetex para cargar latex en la wiki. Me lo bajé ya compilado y lo puse en /usr/lib/cgi-bin. Apache tiene que tener el modulo cgi para que esto funcione.

Para que Mediawiki sepa que lo puede usar, mediante la extension Math, hay que incorporarselo en el archivo Math.body.php

AutoLogOn

Valido para maquinas con escritorio Gnome 3

El inicio de sesion automatico se puede activar desde las preferencias del sistema. Sin embargo, si por cualquier motivo no podemos acceder a dichas preferencias, podemos activar este inicio de sesion mediante la terminal, editando el archivo /etc/gdm3/daemon.conf. En concreto, hay que editar el apartado daemon:

[daemon]
# Enabling automatic login
  AutomaticLoginEnable = true
  AutomaticLogin = usuario

# Enabling timed login
#  TimedLoginEnable = true
#  TimedLogin = user1
#  TimedLoginDelay = 10

# Reserving more VTs for test consoles (default is 7)
#  FirstVT = 9

Script Reinicio VNC

En ocasiones el servidor vnc se quedaba colgado. Para recuperarlo haciamos un script y lo ejecutabamos:

#!/bin/bash
pkill vino
export DISPLAY=:0.0
/usr/lib/vino/vino-server &

panel de estado

He instalado el PHP Server Monitor v3.4.5.

servidor SSO

he instalado gluu

https://gluu.org/docs/oxd/3.1.4/plugin/wordpress/

Webcam

Hubo un proyecto de montar una webcam de vigilancia. El proyecto se quedó en esto:

motion

/etc/motion/motion.conf

linea 413 localhost only -> no

primeras lineas: daemon: si

http://www.aboutdebian.com/webcam.htm

https://sites.google.com/site/dasiecinc/news-and-blogs/linux-tips/servidorwebcamenubunturapidoyfacil

Pruebas con irc

http://www.the-tech-tutorial.com/setting-up-an-basic-irc-server-on-ubuntu/

https://github.com/leedo/alice

Copias por SCP

SCP es un complemento de SSH que nos permite copiar archivos de forma rápida y segura.

La sintaxis es bien simple:

scp archivo usuario@servidor:ruta

Para copiar a la inversa, desde el computador remoto al tuyo, simplemente invertí el orden:

scp usuario@servidor:ruta/archivo ruta_local

O sea, por ejemplo, si quisiéramos mandar algo a la compu remota:

scp lista.txt earendil@earendil-desktop:~/miscosas

Este comando copia el archivo lista.txt de la compu que estoy usando a la carpeta ~/miscosas en mi compu remota. El dueño de este archivo será el usuario earendil (de mi compu de remota).

Para copiar carpetas completas, sólo hace falta agregar el parámetro -r:

scp -r ~/fotos earendil@earendil-desktop:~/miscosas

Este comando copia la carpeta fotos, alojada en el HOME de la compu que estoy usando, a la carpeta miscosas, que se encuentra en el HOME de mi compu remota.

Ahora, el mismo proceso a la inversa sería:

scp earendil@earendil-desktop:~/miscosas/fotos ~

Esto copiaría la carpeta ~/miscosas/fotos/ de la compu remota a la carpeta HOME de la compu que estoy usando.

Por último, es importante tener en cuenta que la ruta por defecto es tu carpeta de usuario. Si querés copiar algo hacia o desde ahí, podés omitir la ruta:

scp lista.txt earendil-desktop:

En este caso, como el usuario se repite en ambas máquinas no hace falta escribirlo. Además, estoy copiando de HOME a HOME, razón por la cual tampoco es necesario escribir la ruta completa de los archivos.

Ubuntu

Anotaciones

http://blog.desdelinux.net/como-auto-montar-particiones-al-inicio-la-forma-facil/

Con reciever pptp-linux

Conexion a VPN apt-get install network-manager-pptp network-manager-pptp-gnome pptp-linux funciona simultaneamente con las otras conexiones

Viritualizacion truquito pae settings -> system -> Processor

Multimaquina

Son los manuales que implican a mas de una maquina o sistema operativo.

Auto Apagado y Encendido

Con dos HP Vectra VL420 hubo un proyecto de realizar un apagado y encendido programado para reducir el consumo de energia. El encendido y apagado automaticamente de las maquinas se realizaba en base a un equipo con GNU/Linux constantemente encendido, en este caso el Servidor Ubuntu.

Apagado

Para el apagado de la maquina con Windows, se utilizan las tareas programadas y un archivo .bat.

Dicho archivo .bat contiene este comando: shutdown -s -t XX -f

Su estructura es la siguiente:

  • shutdown es el comando para apagar el ordenador
  • -s la orden de apagado
  • -t seguido de un número XX indica cuantos segundos ha de esperar.
  • -f hace que los programas cierren sin pedir confirmación.

La ejecucion de ese archivo esta programado para las 3 de la mañana.

Encendido

El encendido de la maquina se hace mediante Wake On Lan, dado que la maquina lo soporta, y la realiza el Servidor Ubuntu

Se necesita una libreria que realice el envio del paquete. Esta liberia se llama wakeonlan.

http://es.wikipedia.org/wiki/Cron_(Unix)

http://debianizado.blogspot.com.es/2007/01/wake-on-lan-arrancando-equipos-de-forma.html

http://support.microsoft.com/kb/315231/es

http://www.geoffke.be/nieuws/11/