5 Alternativas a la Terminal de GNU/Linux

13:00 0 Comments A+ a-


 Aunque para muchos usuarios probablemente resulte reconfortante saber que el uso del terminal puede ser en gran medida, si no enteramente, evitado gracias al desarrollo actual de las distribuciones Linux, todavía queda entre nosotros una  comunidad de amantes de la “fuerza bruta” de la línea de comandos.

Terminator

Las pestañas son una gran ventaja, pero ¿qué sucede si querés ver varios procesos a la vez? Por ejemplo, puede que tengas que manipular algunos archivos de configuración y, al mismo tiempo, tengas que navegar por su sistema de archivos o ver una página del manual.

Terminator, al ser un emulador que permite abrir varias instancias en forma de “azulejo” es especialmente útil si tenés una generosa cantidad de espacio en pantalla y pasás una cantidad significativa de tiempo usando el terminal. Vas a poder dividir la ventana principal en tantos “azulejos” como puedas necesitar. Por lo tanto, es muy probable que nunca abras más de una instancia de Terminator a la vez.




Tilda

Tilda es un emulador del terminal configurable al estilo “Quake”, lo que significa que se desliza hacia abajo desde la parte superior de tu escritorio cuando se presiona una tecla configurable por el usuario (por defecto, F1).

En pocas palabras, el punto fuerte de Tilda es que se mantiene oculto a la vista hasta que se necesite, momento en el que aparece convenientemente sin necesidad de buscar a través de los menús para iniciar la aplicación. Es especialmente útil para tareas rápidas como instalar o quitar aplicaciones, editar un archivo, etc.

Sin embargo, lo mismo se puede decir de cualquiera de los emuladores estilo “Quake” mencionados aquí. Lo que diferencia a Tilda es el conjunto de preferencias de usuario que permiten la flexibilidad necesaria para realizar tareas más complejas.




Guake

Guake es similar en funcionalidad a Tilda, pero es menos atractivo visualmente  y es un poco menos configurable. Dicho esto, también tiene algunas características que Tilda no (como un atajo de teclado para cambiar las fichas, a la que muchos fans de Yakuake estarán acostumbrados).




Stjerm

Sjterm es un emulador del terminal al estilo “Quake” no muy conocido, tal vez  porque es configurable sólo a través de la línea de comandos o desde un archivo de texto.

Dicho esto, el stjerm ofrece opciones comparables a las de Guake y Tilda. También es muy ligero, tiene la posibilidad de abrir varias pestañas, e incluye una opción para cambiar a pantalla completa.




Yakuake

Para aquellos que utilizan KDE o que no les importa usar aplicaciones de KDE, Yakuake es una gran opción.

A pesar de ser nativo de KDE, se integra muy bien en GNOME y corre ligero en un netbook muy modesto. En términos de funcionalidades hay algunas cosas que pulir pero se siente tan maduro como cualquiera de las aplicaciones de esta lista, aunque tiene la ventaja de que actualmente se está desarrollando de manera más activa.


Niveles de la Deep Web

15:51 1 Comments A+ a-

Internet es mucho mas allá de lo que tenemos a simple vista, o los sitios y contenidos a los que estamos acostumbrados, y una muestra de ello es lo que popularmente se denomina como la Deep Web, Invisible Web, Dark Web, Hidden Web, Internet profunda o Internet invisible.
La Deep Web o Internet Profunda en términos generales es todo aquello que no esta indexado en los motores de búsqueda tradicionales como son Google, Bing, Yahoo, etc. Lo anterior debido a que dichos sitios y contenidos tienen ciertas restricciones para ser encontrados, principalmente porque la mayoría de ellos son usados para la realización de acciones normalmente fuera de lo legal, son de uso privado o porque sencillamente presentan métodos de acceso a la información imposibles para los motores de búsqueda.
El tamaño exacto de la Deep web es desconocido, pero se estima que puede llegar a ser hasta 500 veces mayor al de la Internet superficial, incluso hasta se presume que con los buscadores solo se puede acceder a un 5% del total de Internet, lo que nos deja un inmenso margen de información por descubrir.
Para que se hagan una idea de lo que pueden encontrar en la Deep Web y sus niveles de profundidad, les comparto una infografía elaborada por el Heraldo.


Como pueden observar existen niveles tan profundos en la Internet que para acceder a ellos es necesario utilizar herramientas especializadas como TOR, y otros que sencillamente solo pueden ser accedidos por entes gubernamentales o hackers muy avanzados.
Para acceder a la Deep Web es necesario ingresar con el enlace directo al contenido que nos dirigimos o mediante herramientas especializados para ello ya que mucho contenido esta encriptado. Lo cierto es que muchos de los que dicen haber buceado en la Internet profunda aseguran haber visto cosas muy desagradables por los tipos de fotos y vídeos que allí se comparten, además de que pueden terminar siendo hackeados, infectados o hasta metidos en problemas judiciales. Así que piénsenlo dos veces antes de ingresar a buscar algo allí, especialmente en los niveles mas profundos.

Medidas de Seguridad y "Hardening" en servidores SSH

15:07 0 Comments A+ a-


Seguramente muchos de vosotros conocéis y controláis el protocolo SSH y seguramente, una de vuestras implementaciones preferidas es OpenSSH, sin embargo, en muchas ocasiones olvidamos o desconocemos que se trata de una herramienta que si bien puede facilitar muchísimo las tareas de un administrador de sistemas, también puede ser una herramienta que en las manos de un hacker, puede llevar no solo a comprometer una máquina, sino también todo el segmento de red. Tener plena conciencia de este hecho, es el primer paso para evitar este tipo de problemas, por este motivo es importante conocer las medidas de seguridad que se deben implementar en un servidor SSH, principalmente cuando este se expone a entornos tan "agresivos" como Internet.

Medidas de seguridad en SSH
Para fortalecer la seguridad de un servicio SSH, existen ciertas medidas que deben implementarse con el fin de evitar (o al menos dificultar) ataques contra la infraestructura del tipo MITM entre otros, algunas de estas medidas se indican a continuación, aunque pueden implementarse muchas otras en función a necesidades especificas, estas son unas medidas básicas y de una “casi” obligatoriedad.
En primer lugar, para implementar casi todas las medidas de seguridad que se mencionan a continuación, se debe conocer el fichero de configuración del servidor SSH, que normalmente se encuentra ubicado en "/etc/ssh/sshd_config". Estamos hablando, evidentemente de servidores Linux o algunas otras distribuciones basadas en Unix, sin embargo las directivas que se incluyen en este fichero, son propias del servidor SSH y funcionan igual en cualquiera de la plataformas soportadas por OpenSSH.

No permitir acceso remoto al usuario Root
No se debería permitir el acceso remoto al usuario root, normalmente debería permitirse el acceso a usuarios que tengan cuentas con privilegios limitados, la razón principal de esto, es debido a que, si el servicio SSH es vulnerable a alguna "0 day" o se implementa una mala política de contraseñas, un atacante puede ganar acceso al servidor y del mismo modo que ocurre con otros servicios como Apache, es conveniente que se garantice solamente los privilegios mínimos al proceso. Tambien anotar, que otra muy buena alternativa es implementar una "jaula" tambien conocida como "chroot jail". Para evitar que el usuario "root" pueda acceder de forma remota, se aplica la siguiente directiva al fichero de configuración:

PermitRootLogin no

Permitir acceso remoto solamente a un listado determinado de usuarios
Siguiendo este mismo orden de ideas, también es posible habilitar solamente aquellos usuarios que utilizaran el servicio, definiendo los nombres de las cuentas que tienen permisos realizar una conexión con el servidor SSH. Del mismo modo también se puede declarar de forma explicita quienes no pueden acceder al servidor SSH aunque cuenten con credenciales de acceso validas:

AllowUsers Adastra
DenyUsers Bernardino Templar


Tiempo de gracia para establecer la conexión
Una medida de seguridad importante consiste en definir el número de segundos máximo que tardará el usuario en ingresar sus credenciales, si realmente es quien dice ser, normalmente no debería tardar mucho, para definir este “tiempo de gracia” la directiva en el fichero sshd_config es:

LoginGraceTime 30
Esto definirá un valor de 30 segundos para ingresar usuario/clave.

Paridad entre usuarios y direcciones IP permitidas
Difinir los usuarios, maquinas y cuentas que pueden conectarse al servicio SSH, es una buena medida en entornos donde se utilizan direcciones IP estaticas, donde se sabe, que un usuario determinado se conecta desde una dirección IP concreta.

AllowUsers adastra@192.168.1.35

Con esto, se denegará la conexión cuando no proceda de la dirección IP indicada, aunque el usuario cuente con las credenciales de acceso correctas.


Número máximo de intentos de conexión.
Definir un número bajo de intentos de autenticación, reduce el riesgo y evidentemente el éxito, de ataques por fuerza bruta.
MaxAuthTries 2
Se definen 2 intentos de autenticación máximos.

No permitir passwords vacíos.
Creo que no necesita muchas explicaciones, el titulo lo dice todo.
PermitEmptyPasswords no

Definir un número máximo de usuarios conectados a la maquina.
En ocasiones resulta interesante limitar el número de usuarios conectados a una máquina para evitar saturar el servidor, para ello esta directiva es útil

MaxStartups 10
Permite 10 clientes concurrentes.

Cambiar puerto por defecto.
En algunas ocasiones resulta conveniente cambiar el puerto por defecto (22) por cualquier otro para dificultar las cosas un poco a un atacante, la directiva es:

Port 3334

Cabe anotar que esta opción también es soportada en el fichero de configuración del cliente y en dicho caso, el puerto por el que se intentarán establecer todas las conexiones a servicios SSH será al puerto especificado en el fichero de configuración, a menos que se especifique de forma explicita un puerto distinto por medio de la opción “-p”
Ahora bien, como se ha indicado anteriormente, el fichero de configuración del servidor se encuentra ubicado en /etc/ssh/sshd_config y el fichero de configuración del cliente se encuentra ubicado en /etc/ssh/ssh_config sin embargo, si el cliente tiene el fichero ssh_config ubicado en el directorio ~/.ssh/config ese será el que utilice el cliente de OpenSSH.

No permitir la creación de túneles SSH
Esta medida de seguridad es importante, ya que uno de los vectores de ataque más exitosos para comprometer la red interna desde un segmento de red externo como internet, es por medio del uso de túneles SSH, con los cuales no solamente se puede acceder a máquinas inaccesibles desde el exterior, sino que también, es posible saltarse medidas de seguridad importantes como Firewalls o algún IDS. La directiva para evitar el uso de esta característica en SSH, es:

AllowTcpForwarding no

Autenticación por medio de claves publica/privada
Hasta este punto se ha venido hablando de autenticación por medio de una cuenta de usuario existente en el sistema, sin embargo OpenSSH soporta la autenticación por medio del uso de pares de claves privada/publica, el servidor SSH debe contener la clave publica, mientras que el cliente debe contener la clave privada para realizar la autenticación con el servicio. Si el procedimiento de instalación de las claves en cada uno de los puntos (cliente-servidor) se ha realizado de forma correcta, la autenticación al servicio SSH no será contra un usuario existente en el sistema donde se ejecuta el servicio, sino que será contra la contraseña que se ha empleado para la generación de las claves. Este mecanismo de autenticación es el más robusto y desde luego, el más recomendado para servidores que se encuentran expuestos en internet.
El proceso de generación de las claves publica/privada se detalla a continuación:

Debe existir el directorio .ssh en el directorio personal del usuario que ejecuta el cliente SSH, si no existe, crearlo
>mkdir -p ~/.ssh ; chmod 700 ~/.ssh ;
posteriormente es necesario crear las claves con el uso del comando ssh-keygen.

>ssh-keygen -t rsa

De este modo se crea una clave RSA utilizada para el mecanismo de autenticación.

Ahora es necesario transferir la clave al servicio ssh, para conseguir esto de forma segura se utiliza el comando ssh-copy-id Este comando creará (si no existe) el fichero authorized_keys conteniendo las claves privadas que pueden ser admitidas por el servidor, de este modo, cuando se intente ejecutar una conexión con un servidor SSH, lo primero que se intentará hacer es buscar dicho fichero en el directorio personal de usuario y si este existe, se intentará realizar la conexión utilizando dicha clave, si se intenta realizar la conexión con usuario distinto del que se ha especificado en el comando ssh-copy-id la autenticación se realizará por login y password en la maquina remota.

ssh-copy-id root@192.168.1.33
The authenticity of host ’192.168.1.33 (192.168.1.33)’ can’t be established.RSA key fingerprint is ac:ad:22:07:7c:11:b4:49:ee:3f:32:95:5b:5b:d4:99.Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘localhost’ (RSA) to the list of known hosts.jdaanial@localhost’s password:Now try logging into the machine, with “ssh ‘root@192.168.1.33′”, and check in:.ssh/authorized_keysto make sure we haven’t added extra keys that you weren’t expecting.
ssh root@192.168.1.33
Enter passphrase for key ‘/root/.ssh/id_rsa’:

Como puede apreciarse desde la maquina donde se encuentra el servicio SSH (192.168.1.33) no se ha tenido que realizar ningún tipo de acción, todo se ha ejecutado desde el lado del cliente, este se encarga de generar las claves y de importarlas al servidor, evidentemente no cualquier usuario puede realizar este tipo de acciones, solamente aquellos que tengan las credenciales de acceso correspondientes en el servidor y privilegios de root.

Consideraciones al momento de utilizar claves publica/privada
Tal como se ha indicado en párrafos anteriores, es necesario tomar ciertas medidas de seguridad con el fin de endurecer un servicio SSH, una de estas medidas sin lugar a dudas es el uso de un mecanismo de clave publica/privada que se ha indicado anteriormente, sin embargo este mecanismo por si solo no garantiza la seguridad del servicio, se deben habilitar algunas opciones adicionales en el fichero de configuración del servidor para que realmente funcione como se espera, estas son:

PasswordAuthentication no

En el caso de que se permita el acceso por clave publica y privada, cabe preguntarse ¿realmente es necesario permitir otro mecanismo de autenticación diferente? En el caso de que la opción PasswordAuthentication no sea establecida a “no” de forma explicita, será posible acceder al servidor por medio de una cuenta de usuario existente en el sistema aunque se indique al servidor SSH que el mecanismo de autenticación será por medio de clave privada, por ejemplo

ssh root@192.168.1.33
Enter passphrase for key ‘/root/.ssh/id_rsa’:
Enter passphrase for key ‘/root/.ssh/id_rsa’:
Enter passphrase for key ‘/root/.ssh/id_rsa’:
root@192.168.1.33′s password:

En el comando anterior, el servidor SSH solicita la clave privada para realizar la autenticación con el servicio, sin embargo como puede apreciarse, después de tres intentos de autenticación fallidos el servicio solicita la clave correspondiente al usuario root del sistema, en lugar de terminar la conexión de forma automática que será posiblemente lo mas adecuado.

Estas son solamente algunas medidas de seguridad que se pueden implementar en un servidor SSH para evitar que sea un objetivo fácil para un atacante, sin embargo lo más importante para intentar garantizar la seguridad de un servidor SSH, es hacer uso del sentido común y definir unas políticas de acceso  adecuadas dependiendo de las necesidades particulares de cada cual. Esto no siempre es fácil, pero dedicar tiempo a hacerlo, realmente es un trabajo que merece la pena y que puede evitar un gran dolor de cabeza a un administrador de sistemas.

11 consejos de Bill Gates que no aprenderás en la escuela

0:30 1 Comments A+ a-

Bill Gates nos cuenta toda su experiencia y nos deja consejos para utilizar a lo largo de toda la vida.



Bill Gates, creador de Microsoft y dueño de la mayor fortuna personal del mundo, dictó en una conferencia en una escuela secundaria dirigida a padres y estudiantes sobre 11 cosas que los hijos no aprenden en el colegio.

Estas ideas de Bill Gates, hablan de cómo la "política educativa de vida fácil para los niños" ha originado una generación sin concepto de la realidad, y cómo esta política ha llevado a las personas a fallar en sus vidas después de la escuela. Enfatizó en los “padres que consienten a sus hijos y les dan lo que piden, aún cuando no lo merecen”.

Regla 1

La vida no es fácil, acostúmbrate a ello.

Regla 2

El mundo no está preocupado por tu autoestima. El mundo espera que hagas algo útil por él antes de sentirte bien contigo mismo.

Regla 3

No ganarás $ 20.000  al mes nada más por salir de la escuela. No serás vicepresidente de una empresa con coche y teléfono a tu disposición, hasta que con tu esfuerzo hayas conseguido comprar tu propio coche y teléfono.

Regla 4

Si crees que tu profesor es duro, espera a tener un jefe. Ese sí que no tendrá vocación de enseñanza ni la paciencia requerida.

Regla 5

Vender papel usado o trabajar los días festivos no es ser lo último en la escala social. Tus abuelos tenían una palabra diferente para eso: lo llamaban oportunidad.

Regla 6

Si te equivocas, no le eches la culpa a tus padres o a la mala suerte. Por lo tanto no llores por tus errores, aprende de ellos.

Regla 7

Antes de nacer tú, tus padres no eran tan críticos como ahora. Ellos se volvieron así por pagar tus cuentas, lavar tus ropas y oírte decir que son “ridículos”. Por tanto, antes de salvar el planeta para la próxima generación, queriendo remediar los errores de la generación de tus padres, comienza limpiando las cosas de tu propia vida, empezando por tu habitación.

Regla 8

La escuela puede haber eliminado la distinción entre excelentes, buenos y regulares, pero la vida no es así. En muchas escuelas hoy no repites el curso, hacen que tus tareas sean cada vez más fáciles y tienes las oportunidades que necesites hasta aprobar. Esto no se parece en nada a la vida real. Si fallas, estás despedido. Así que
acierta a la primera.

Regla 9

La vida no está dividida en bimestres. Tú no tendrás largas vacaciones de verano y no encontrarás quien te ayude a cumplir con tus tareas, ni jefes que se interesen en ayudarte para que te encuentres a ti mismo. Todo esto y mucho más, tendrás que hacerlo en tu tiempo libre.

Regla 10

La televisión NO es la vida real. En la vida real, las personas tienen que dejar los juegos, el bar, los bailes o los amigos, para irse a trabajar.

Regla 11

Sé amable con los compañeros estudiosos (aquellos estudiantes que tú y muchos otros juzgan que son "nerds"). Existen muchas probabilidades de que termines trabajando PARA uno de ellos.

Una PC para una mesa muy chica

0:00 0 Comments A+ a-

Probamos la microcomputadora A01A de Banghó, con Windows 8.1, un modelo ideal para ser utilizado en espacios reducidos y que permite ser acoplado junto a pantallas de TV.



¿Puede tener éxito un género de computadoras que mide un poco más de 10 x 10 x 5 cm con Windows 8.1 y hay que agregarle teclado, mouse y pantalla? En principio, no tendríamos por qué dudarlo: entra en cualquier lugar, pesa muy poco e, incluso, puede colgarse detrás de un display. Lo que sí tiene es una característica de origen que para algunos puede ser una desventaja, y es que no está pensada su actualización a través de los años o ponerle más partes en su interior.

En la caja del modelo que testeamos, perteneciente a la serie A01A de esta familia de PC de Banghó, está sólo el pequeño equipo con el cable de alimentación, el adaptador de corriente y un soporte para colocarlo en una pared o detrás de una pantalla.

En su interior hay un chip Intel Celeron 847 a 1,10 GHz, motherboard DCP847SKE, disco de 450 GB, RAM de 4 GB y de sistema operativo, el Windows 8.1. Tiene conectividad inalámbrica y Bluetooth. En el gabinete tiene en uno de sus lados de puertos USB 2.0, dos salidas HDMI, puerto de red y una pequeña ranura para llave de seguridad Kensington. En otra cara cuenta con otro puerto USB 2.0 y en la cara superior, el botón de inicio.

Si le conectamos un sistema de teclado y mouse conjunto, todavía tendremos dos puertos USB libres, que pueden ser para agregarle un disco rígido externo, por ejemplo. Por esto, a priori, no debería tener ningún problema para una lista de periféricos igual a la de cualquier desktop.

Instalación
Cuando prendimos el equipo por primera vez tuvimos que hacer la instalación del Windows 8.1, que viene precargado en el disco. Este proceso fue rápido y en 5 minutos ya podía comenzar a usarse la mini PC, aunque requirió otros minutos más para configurar la conexión a Internet inalámbrica. Luego hubo que instalar las actualizaciones de los programas que utiliza un teclado con mousepad. Fue lo que más tardó, unos 5 minutos.

Conectando un cable HDMI a una pantalla digital, nada hacía pensar que lo que se veía era producto de una CPU del tamaño de una caja de medio kilo de bombones. Al final, un Windows es igual a otro.

Le corrimos varias sesiones de browsers, programas de tratamiento de imágenes y reproducción de video, y el desempeño fue el esperado para una máquina con 4 GB de RAM.

¿Que pasó con Underc0de?

9:23 5 Comments A+ a-


Hola a todos!

Queremos comunicarles a todos los usuarios que el foro permanecerá cerrado debido a problemas con el servidor. El foro recibía mas visitas de lo que el servidor podía soportar y es por ello que el foro se saturaba seguido, a eso hay que sumarle los ataques diarios. El servidor que necesitamos es muy caro y no hay fondos para pagarlo.

Por otro lado, montaremos nuevamente la web y mantendremos actualizado el blog constantemente.

Respecto a las dudas, dejaremos un canal de IRC, en el cual siempre hay gente conectada dispuesta a colaborar. Recuerden ser pacientes y no pretender que la pregunta sea respondida al instante.

Server: irc.freenode.net
Canal: #underc0de

Para aquel que no tenga cliente de IRC, les dejo este que es vía web: ENTRAR

A demás estamos por Skype: underc0de.org y también en el grupo de Facebook

Queremos darle las gracias por el apoyo de todos aquellos que se han preocupado. Esperamos poder levantar pronto el foro!

Estamos a la espera de nuevos sponsors, si alguno está interesado o conoce a alguien que pueda colaborar para volver a levantar el foro, es bienvenido!

Saludos a todos!
Underc0de Team