sábado, 7 de enero de 2017

Habilitar ssh en Fedora 25 dentro de una red local



El uso de SSH en Fedora difiere en algunas configuraciones, por ejemplo, Selinux es muy estricto en los bloqueos de puertos, y en muchas ocasiones es necesario añadir el puerto a la lista de permitidos en firewall.

1.- Instalar openssh y la interfaz gráfica de firewall en caso de no tenerlo previamente.

sudo dnf install openssh-server firewall-config
Iniciar el servicio:

sudo service sshd start
2.- A partir de iniciar el servicio, ya es posible conectarse, para hacerlo solo basta usar la siguiente instrucción desde consola:

ssh linuxitos@192.168.1.66
O bien, hacerlo desde nautilus:

En la configuración por defecto, el usuario root, está permitido para inicio de sesión, esto es una vulnerabilidad, por lo tanto se procede a deshabilitarlo:

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bk_factory

Buscar la línea que diga PermitRootLogin  yes y cambiarla a PermitRootLogin no

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config
Quedando de la siguiente manera:

# deshabilitando el inicio del usuario root
PermitRootLogin no

Es necesario reiniciar el servicio de sshd

sudo service sshd restart

Y de esta manera, cuando se intente iniciar sesión con el usuario root, mostrará el siguiente mensaje:



Si por alguna razón, no funciona ssh, entonces es necesario abrir la aplicación de firewall y habilitar ssh en firewall.

Al abrir la aplicación de firewall, seleccionar el modo permanente, luego ir a workstation, suponiendo que utilicen esa versión, buscar ssh y habilitarlo.


Al abrir la aplicación de firewall, seleccionar el modo ejecución, luego ir a workstation, suponiendo que utilicen esa versión, buscar ssh y habilitarlo.


De este modo, ya debería funcionar. Espero que sea de utilidad.

viernes, 6 de enero de 2017

Habilitar open ssh en Ubuntu en una red local



En algunas ocasiones es necesario acceder a los archivos de otra PC de manera local de dos distros Linux diferentes, ya sea mediante la terminal o usando una interfaz gráfica.

Secure Shell (SSH) o más recientemente OpenSSH, permiten esta funcionalidad sin hacer muchas configuraciones. En lo personal me gusta configurarla para utilizarla con Nautilus:


De esta manera, es simple y muy fácil acceder a los archivos de manera remota en la misma red. Por ejemplo, al administrar un servidor, los cuales usualmente no se les instala una interfaz gráfica, como debian, centos o redhat, entonces resulta útil administrarlo desde otro punto de la misma red local. Sin necesidad de desplazarse hasta el cuarto de red del servidor.

En servidores debian se realiza de la siguiente manera:

1.- Instalar OpenSSH


sudo apt-get install openssh-server
2.- Respaldar archivos originales: por seguridad y como una buena práctica es necesario respaldar la configuración por defecto, por si llegara a pasar algo fuera de lo normal.


sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.factory-defaults

sudo chmod a-w /etc/ssh/sshd_config.factory-defaults
3.- Editar sshd_config: este archivo se configura para fungir como servidor de ssh. Por lo tanto, se editan los usuarios y contraseñas, únicamente a los que se les permitirá conectarse a ssh.

Abrir sshd_config con su el editor de su preferencia:
sudo gedit /etc/ssh/sshd_config

4.- Añadir al final del archivo el nombre del usuario a permitir la conexión:

quedando de la siguiente manera:

# usuarios permitidos
AllowUsers linuxitos admin

# usuarios no permitidos
DenyUsers root viky

5.- Iniciar o reiniciar servicio de ssh


sudo start ssh

sudo restart ssh


Incluso se pueden asignar horarios de inicio de sesión, etc.


Como, ya mencioné, esta es una configuración básica y rápida para ser utilizado dentro de una red local. Si se desea configurar para salida a internet, entonces es necesario utilizar dns, o salida mediante una IP pública.

Más información:


jueves, 29 de diciembre de 2016

Remarkable : un editor para archivos marckdown


Marckdown

Markdown es un lenguaje de marcado ligero creado por John Gruber que trata de conseguir la máxima legibilidad y facilidad de publicación tanto en su forma de entrada como de salida, inspirándose en muchas convenciones existentes para marcar mensajes de correo electrónico usando texto plano. Se distribuye bajo licencia BSD y se distribuye como plugin (o al menos está disponible) en diferentes sistemas de gestión de contenidos (CMS). Markdown convierte el texto marcado en documentos XHTML utlizando html2text creado por Aaron Swartz. Markdown fue implementado originariamente en Perl por Gruber, pero desde entonces ha sido traducido a multitud de lenguajes de programación, incluyendo PHP, Python, Ruby, Java y Common Lisp.

Remarkable

Es un editor de marcado poderoso disponible para Linux. Está completamente equipado y personalizable. Puede descargar la versión de Linux de forma gratuita (o donar si lo desea). Los instaladores fáciles están disponibles para los sistemas Debian, Ubuntu, Fedora, SUSE y Arch.

Descargas: https://remarkableapp.github.io/linux/download.html

En Fedora, descargas el instalador y doble clic para instalar, o si lo prefieres, abrir la terminal y ejecutar el siguiente comando:

sudo rpm -ivh remarkable-1.87-1.rpm
Y listo, ya lo pueden buscar en el cajón de aplicaciones.

Aquí dejo una imagen gif del programa.


miércoles, 28 de diciembre de 2016

Mostrar asteriscos al escribir contraseña en la Terminal


Los que usamos la terminal en cualquier distro linux, nos habremos dado cuenta, que al escribir la contraseña, el cursor sigue en la misma posición, es decir, no muestra nada mientras la tecleamos.

Esto, es irrelevante, es más, es incluso mejor si no la muestra, así si alguien ve lo que estamos tecleando, no sabría de cuántos caracteres está formado la contraseña, pero si queremos que muestre un * mientras tecleamos la contraseña, entonces hacer la siguiente modificación.

Abrir la terminal y ejecutar el siguiente comando:
Reemplazar nano por el editor de texto de su preferencia.
sudo nano /etc/sudoers

Una vez que se abra el archivo, ir a al línea que comienza por:
Defaults    env_reset

Y al final agregarle, lo siguiente:
Defaults    env_reset,pwfeedback

Guardar el archivo con Ctrl+X y presionar Y.

Ahora, al teclear la contraseña, mostrará lo siguiente:




Vuelvo a mencionar, esto es por simple estética, personalización o curiosidad por probarlo. No es que se importante u obligatorio, es opcional.

viernes, 16 de diciembre de 2016

SavemyPassword 1.1.3 - PHP-MySQL



SaveMyPassword es un sitio web que he desarrollado como ejemplo completo, en el uso de MySQL y PHP. Este sitio es para guardar nombres de usuario y contraseñas por cada usuaro.

La idea principal, es ejemplificar el uso de base de datos, uso de clases en php. En entre éstas características se encuentran:
- Uso de clases
- Uso de mysqli
- Compatible con php7
- Uso md5 encryptado
- Y muchas otras cosas.

El sitio en línea lo pueden probar aquí. http://savemypasswd.webcindario.com

¿Cómo utilizar el sitio local con Xampp?

Cualquiera que ya haya utilizado Xampp como servidor de php, sabrá lo fácil que es levantarlo.

Paso 1: Instalar XAMPP, omitiré el proceso de instalación para todos los SO, pero aquí les dejo cómo instalarlo en Fedora 25. https://linuxgx.blogspot.mx/2016/05/instalar-y-desinstalar-xamp-5521-en.html
Link de descarga de XAMPP: XAMPP descarga

Paso 2: Descargar el repositorio de Github: LinkDescarga

Paso 3: Mover la carpeta extraída de savemypassword a la ruta htdocs que se encuentra en la ruta de instalación de xampp, en linux a veces es necesario asignar permisos de lectura y escritura a la carpeta savemypasword, en caso de que no funcione el sitio.

Paso 4: Crear la base de datos desde phpMyAdmin, ir a http://localhost/phpmyadmin/

Dar clic en la opción nueva:

El nombre de la BD se llamará savemypassword, una vez asignado el nombre, clic en crear.

Una vez creada la BD, seleccionarla e ir la pestaña SQL. Una vez ahí, copiar y pegar las siguientes instrucciones sql para crear la base de datos.

use savemypassword;

create table usuarios(
 iduser int auto_increment,
 cuentauser varchar(80),
 passwd varchar(200),
 typeuser int,
 fraseuser varchar(200),
 activated int,
 nomuser varchar(90),
 apuser varchar(90),
 primary key(iduser, cuentauser)
);

create table passwords(
 iduser int,
 nomcuenta varchar(90),
 passcuenta varchar(200),
 descripcuenta varchar(200),
 activated int,
 foreign key (iduser) references usuarios(iduser),
 primary key(iduser,nomcuenta)
);

Y clic en continuar:

5.- Una vez creada la base de datos, ir la carpeta savemypassword que está en htdocs y buscar dentro de la carpeta includes el archivo dbconfig.php y modificar el nombre de usuario, contraseña y la ip del servidor.

6.- Modificado dicho archivo, ir a http://localhost/savemypassword/ y probar el sitio.

Y eso sería todo, dejo algunas capturas: