Jaulas SFTP

Jail FTPBuscando la forma de configurar un servidor SFTP (Secure FTP) para la transferencia de ficheros segura, me he encontrado que el propio OpenSSH que viene en la mayoría de versiones, ya proporciona el servicio de servidor sftp.

Mirando la configuración de OpenSSH vemos como efectivamente, se define el servicio sftp:

# cat /etc/ssh/sshd_config
Subsystem sftp /usr/libexec/openssh/sftp-server

Así pues, por defecto, ya se dispone de un método para transferencia de ficheros sobre SSH gracias a OpenSSH.

Sin embargo, este método permite a un usuario, conectarse por SFTP y poder navegar por cualquier directorio del sistema al que tenga acceso, que por defecto, son la mayoría de ellos. Si se quiere «enjaular» al usuario en un directorio concreto, para que pueda trabajar únicamente con los ficheros y directorios de un directorio determinado, la cosa se complica.

Continuar leyendo «Jaulas SFTP»

Sustitución múltiple

Durante las últimas semanas, me he visto con la necesidad de cambiar una misma línea en cientos de archivos diferentes. Para evitar cambiarlo uno por uno, he buscado por Internet hasta encontrar el comando adecuado, el cual se asemeja mucho al comando de sustitución que tiene ‘vi’:

perl -p -i -e ‘s/DocumentRoot \/usr\/local\/www\/data-dist\//DocumentRoot \/var\/www\//g’ *

En este ejemplo, se buscaría en todos los archivos del directorio actual (*), por la cadena «DocumentRoot /usr/local/www/data-dist» y se sustituiría por «DocumentRoot /var/www».

El comando parece mucho más engorroso, por la necesidad de escapar las «/» que contiene la cadena de búsqueda. En realidad, la sentencia de búsqueda sería la siguiente:

perl -p -i -e ‘s/cadena a buscar/nueva cadena/g’ nombre_ficheros_donde_buscar

Con esto, ya tendríamos la base para realizar sustituciones en múltiples archivos, desde la terminal de nuestra distribución Linux preferida.

 

Fuentes:

http://enavas.blogspot.com/2008/10/reemplazar-texto-en-todos-los-archivos.html
http://es.w3support.net/index.php?db=so&id=1398558

Creación de una AMI personalizada

cloud computingAmazon, entre muchos otros, ofrece un servicio de cloud computing, en el que podemos crear máquinas a partir de imágenes de sistemas operativos preconfigurados compartidos en la red de Amazon. Estas imágenes se conocen como AMIs (Amazon Machine Image).

Sin embargo, se puede dar la ocasión en la que necesitemos instalar una máquina con un determinado sistema, que no se encuentre entre las diversas AMIs disponibles. En esas ocasiones, deberemos seguir las instrucciones de Amazon para la creación de una AMI personalizada.

Continuar leyendo «Creación de una AMI personalizada»

Mysql resetear password de root

Espero no tener que encontrarme nunca en esta situación, pero por si las moscas, me apunto el proceso para resetear el password de root para un mysql sobre linux, cuando no se dispone de la contraseña de root. Los pasos, los he sacado de aquí y de aquí.

  1. Detener el servicio mysql: killall mysqld
  2. Ejecutar mysql en modo seguro, sin cargar las tablas de usuarios: mysqld_safe –skip-grant-tables
  3. Conectar con el mysql que acabamos de arrancar: mysql –user=root mysql
  4. Ejecutar el cambio de contraseña (en este paso, he usado un password fácil como paso intermedio): update user set Password=PASSWORD(‘new-password’) where user=’root’;
  5. Recargar las credenciales y salir: flush privileges; exit;
  6. Detener el servicio mysql: /etc/init.d/mysqld stop
  7. Iniciarlo: /etc/init.d/mysqld start
  8. Comprobar que podemos acceder con el password indicado en el punto 4: mysql -u root -p
  9. Salir del mysql: exit;
  10. Ejecutar mysqladmin para cambiar el password definitivamente: mysqladmin -u root password ‘NEWPASSWORD’ -p
  11. Comprobar de nuevo que el acceo con el nuevo password es correcto: mysql -u root -p
  12. Apuntar el password en un lugar seguro 😀

 

Un poco de iptables

iptablesSeguramente sea buena idea configurar el firewall iptables de cada máquina, desde cero, para una vez limpio, ir introduciendo reglas que permitan o denieguen determinadas acciones. De esta manera, se tendrá un control total sobre la configuración del firewall, que se habrá rellenado únicamente con las reglas que se le hayan introducido.

Una primera tarea, por lo tanto, sería limpiar las reglas del firewall que vienen por defecto, y a partir de ahí, empezar a crear las nuestras, sabiendo que podría ser una buena política la de denegar cualquier paquete, por defecto.

Continuar leyendo «Un poco de iptables»