Posted in Varios

warning: do not list domain example.com in BOTH mydestination and virtual_alias_domains

Al instalar virtualmin para usarlo como servidor web/mail entre otros, la configuración por defecto suele ser más que suficiente. Pero, si vemos el log de postfix, nos encontraremos un warning que nos indica que algo no está del todo bien:

warning: do not list domain example.com in BOTH mydestination and virtual_alias_domains

Aunque no es un error y el servidor de correo funcionará perfectamente a muchos nos gusta dejar un log limpio, sin errores ni warnings.

La solución está en cambiar el parámetro $myhostname dentro de mydestination en el archivo /etc/postfix/main.cf. Dicha modificación se quedaría tal que así:

mydestination = $myhostname, localhost.$mydomain, localhost
myorigin = $mydomain
mydomain = server.example.com
myhostname = $mydomain

Básicamente, en el parámetro mydomain hemos elegido un subdominio diferente al de myorigin. También hay que tener en cuenta que el archivo /etc/postfix/main.cf es mucho más completo. Sólamente hemos indicado cómo se quedarían los cambios realizados para que desaparezca el warning y el servidor siga funcionando correctamente.

Otras sugerencias encontradas en stackexchange y similares provocan que el servidor deje de recibir correos.

Posted in Varios

Reducir tamaño de contenedor lxc en proxmox con ZFS

Uno de los sistemas de ficheros a tener en cuenta a la hora de montar un servidor es ZFS. Yo lo tengo montado en mi servidor en casa o, como lo llaman en reddit, homelab. De hecho, tengo montado un RAID10 con Proxmox (4 x 1TiB) con el sistema de archivos ZFS, puesto que el raid que ofrece el servidor es un fakeRAID.

A la hora de crear contenedores no sabemos el espacio que vamos a necesitar antes de crear dichos contenedores. La recomendación general es crear un volumen de unos pocos gigas e ir agrandándolo según se vaya necesitando, pues disminiurlo no es tan trivial.

Primero, abrimos una sesión SSH hacia nuestro servidor donde estará instalado proxmox y ejecutar:

zfs list

Obtendremos los volúmenes de las máquinas virtuales y contenedores que tenemos en nuestro servidor.

En la interfaz web de nuestro servidor tenemos las máquinas y las ID, que serán importantes en este caso:

Vamos a la máquina 100 y vemos que tiene 200 gigas de disco duro:

Pongamos que queremos reducir el tamaño a 190 gigas. En la consola SSH que tenemos abierta de antes escribimos:

zfs set refquota=190G rpool/data/subvol-100-disk-0

Vemos en el nombre del disco el ID de la máquina, 100 en este caso. Ahora editaremos desde la misma consola el nuevo espacio que le hemos asignado:

vim /etc/pve/nodes/alfonsito/lxc/100.conf

Yo suelo utilizar el vim, pero queda a gusto de cada uno utilizar el editor que desee

Guardamos y salimos del archivo. Podremos comprobar en la interfaz de proxmox como el disco duro de la máquina tiene el tamaño que le hemos indicado.

Posted in linux, Varios

Acceso root al router Iskratel Innbox G69

Este router, poco conocido, es distribuido por una empresa de fibra local de mi ciudad. Pero viene batante capado.

A priori solamente podemos acceder con el usuario user y con la contraseña user (originales, ¿verdad?).

La configuración avanzada para el usuario con menos privilegio es bastante escasa.

La propia interfaz del router tiene oculto cuántos usuarios tiene este router; que son 3. En el apartado management nos vamos al subapartado de passwords. En la ventana principal (el bloque grande central) hacemos click derecho y le damos a inspeccionar elemento. Ahí veremos las tres cuentas con las que se puede acceder al router: admin, poweruser y user.

Ni que decir tiene que las combinaciones admin y admin y demás sucedáneas no funcionan.

Probamos con poweruser y poweruser como contraseña y podemos acceder sin problemas. Aquí ya hay más opciones que el usuario limitado.

Como estamos buscando acceso total, el usuario poweruser no nos vale del todo. ¿Y cómo accedemos como admin?

Primero, haciendo un escaneo de puertos, vemos que tiene abiertos tanto el 22 (SSH) como el 23 (telnet). Para acceso de administrador he usado el 22, aunque presumiblemente también se puede realizar por telnet.

Podemos acceder con PuTTY si utilizamos Windows o el comando ssh si estamos desde Linux:

ssh poweruser@192.168.1.1

En la ventana del PuTTY:

Desde Linux probablemente nos de el error:

Unable to negotiate with 192.168.1.1 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1

Desde Windows nos saltará una advertencia como la que se puede ver en la foto de abajo:

Solamente tenemos que pulsar o Yes para acceder a la pantalla de login
La pantalla donde introduciremos poweruser como usuario y como contraseña.

En el caso de Linux, podemos esquivar el error introduciendo:

ssh -o KexAlgorithms=diffie-hellman-group1-sha1 -c 3des-cbc poweruser@192.168.1.1

Una vez dentro tenemos lo siguiente:

prompt del router una vez estamos logueados

Si escribimos help podemos ver una lista de comandos disponibles:

Algunos de los comandos disponibles para el usuario poweruser

Si intentamos poner comandos que no aparecen en esa lista vemos que son comandos desconocidos o no permitidos.

El comando echo si está en la lista de comandos permitidos.

Pero, usando un poco de bash scripting, podemos ejecutar comandos:

Listado de archivos

Pero no podemos ejecutar el intérprete de comandos bash, pues se queda colgado:

Pero si ejecutamos dos comandos seguidos, el segundo lo acepta sin poner pegas:

Ejecución de dos comandos en la misma línea

Pues ya tenemos acceso completo al sistema como usuario root:

Podemos ver todos los archivos.

Ahora lo que nos interesa ver es si las contraseñas se guardan en el antiguo archivo passwd o en el «nuevo» shadow, ambos situados en /etc/:

Vemos que utiliza el archivo passwd, por lo que los usuarios y contraseñas estarán ahí. Las contraseñas estarán en MD5-Crypt.

Vemos el contenido del archivo:

cat /etc/passwd

Como hacer fuerza bruta a la contraseña del admin me llevaría demasiado tiempo, he copiado la contraseña del poweruser (es una que ya conocemos) y la he machacado encima de la del admin. He utilizado el editor vi para ello, ya que suele ir en la gran mayoría de compilaciones de buso

Escribimos exit dos veces; una para salir del bash y otra para salir del router.

Ahora accedemos al router con las credenciales admin/poweruser y vamos a cambiar la contraseña del administrador. Hacemos click en los siguientes sitios siguiendo la numeración.

En el 4 ponemos:

  • User Name: admin
  • Old Password: poweruser
  • New Password: el que elijamos
  • Confirm Password: lo repetimos para comprobar que lo hemos puesto bien.

Y ya tenemos acceso completo al router con la interfaz web. También decir que en SSH no nos podemos loguear como user, pero en telnet sí, por lo que la escalada se puede realizar desde cualquiera de los dos. También se puede utilizar otro comando aparte del comando echo, como por ejemplo el comando ping.

Posted in Varios

Tablas rainbow para Ophcrack

A estas alturas todo el mundo conocerá más o menos la herramienta Ophcrack. Esta herramienta permite desencriptar una contraseña de diferentes versiones de Windows. Las versiones abarcan desde XP hasta la más reciente Windows 10.

Si por alguna razón hemos olvidado nuestra contraseña de usuario de inicio de sesión en Windows, esta es nuestra herramienta perfecta para recuperarla, pues permite crear un boot cd para empezar la recuperación de la misma.

El CD de arranque está basado en una versión de linux denominada Slitaz. Al arrancar nos aparece una ventana con las cuentas de usuario del disco duro local, siempre que haya detectado alguna instalación de Windows.

Pues bien, para que eso funcione se necesitan unas tablas, denominadas rainbow. Aunque estas tablas se pueden descargar desde sourceforge, son varias gigas y la descarga es muuuuy lenta.

Por esta razón decidí ponerlas a disposición de la gente en torrent. Más concretamente las denominadas Vista Rainbow Tables.

  • Vista Free. Basado en un diccionario de 64mil palabras, 4mil sufijos, 64 prefijos y 4 reglas de alteración para un total de 238 passwords (274 mil millones).
  • Vista proba free. Para contraseñas de 5 a 10 caracteres. 239 contraseñas elegidas según el patrón de contraseña más probable y las secuencias más probables de caracteres (2nd modelo de Markov) en los patrones. Entrenado en las contraseñas en las contraseñas Rockyou.
  • Vista Special. Para contraseñas de 6 o menos caracteres.
  • Vista Num. Para contrasñas de 1 a 12.

Aunque instalarlas no tiene gran cosa, podéis ver los pasos aquí (en inglés). Cualquier problema con los enlaces magnet, sólo hay que ponerlo en los comentarios y lo intenteré solucionar.

Posted in Varios

Customizar nueva pestaña en Firefox

Cuando estamos usando Firefox, cada vez que abrimos una nueva pestaña, ya sea pulsando sobre el + que aparece en la parte de arriba o bien pulsando Ctrl + T nos aparece la nueva pestaña con un diseño por defecto, tal y como se puede apreciar en la siguiente imagen:

Nueva pestaña por defecto.

Aunque hay varias extensiones para customizar esta apariencia. A muchos usuarios no les gusta añadir extensiones, ya bien por desconfianza o por no sobrecargar el navegador y mermar su rendimiento.

La forma que voy a describir aquí es algo rudimentaria y orientada a usuarios que tengan cierto conocimiento de CSS. Para ello debemos crear un archivo llamado userContent.css dentro de una carpeta llamada chrome dentro de la carpeta del perfil de Firefox.

Para ello escribimos about:profiles en la barra de dirección. Después pulsamos el botón abrir carpeta del directorio raíz del perfil.

Abrimos la carpeta raíz de nuestro perfil.

Se abrirá una ventana del explorador de Windows en dicha carpeta. Pues bien, en esa carpeta creamos otra carpeta (valga la redundancia) llamada chrome. Es posible que dicha carpeta ya exista, por lo que no tendremos que crearla.

Creamos la carpeta chrome en caso de que no exista

Entramos en la carpeta chrome y creamos el archivo userContent.css con el siguiente contenido:

@namespace url(http://www.w3.org/1999/xhtml);
@-moz-document url(about:newtab) {
    body {
	background-image: url(background.jpg) !important;
	background-size: cover;
    }
}
Contenido del archivo userContent.css
Contenido de la carpeta chrome

En la carpeta, aparte del archivo css, podemos meter la imagen de fondo que queramos para la pestaña. Con la propierdad background-size indicamos el tamaño de la imagen y con el valor cover indicamos que se cubra el contenedor entero, en este caso la pestaña nueva. En W3Schools explican en detalle cada uno de los valores posibles de esta propiedad.

Con la propiedad background-image indicamos qué archivo queremos usar como fondo. Como siempre, en W3Schools tenemos todas las opciones de esta propiedad, tal como poner dos fondos simultáneos, usar gradientes, etc.

Ejemplo de pestaña customizada con un fondo

Existen muchas más posibilidades de customización usando el archivo userChrome.css, pero eso es ya tema de otro post.