Pulsando el reloj con el botón derecho buscamos la Timezone correcta:
En nuestro caso sería «Europe/Madrid».
5. Cambiar el idioma del sistema operativo:
Si ejecutamos:
locale
Nos muestra la configuración del lenguaje actual:
Lo que tendremos que hacer es:
sudo dpkg-reconfigure locales
y buscar el adecuado para nuestro país:
Una vez reiniciado el sistema, Kali nos ofrece la posibilidad de renombrar las principales carpetas al castellano:
6. Cambiar la distribución de nuestro teclado. La distribución por defecto es en inglés y las teclas de puntuación, entre otras, no están correctamente mapeadas:
Para ello, en el botón de inicio, buscamos teclado:
En la pestaña distribución, podemos añadir el español y ponerlo en primer lugar, por delante del Inglés o bien podemos borrar el inglés:
Previamente, tendremos que desmarcar la opción predeterminada o no será posible añadir nuevas distribuciones de idiomas:
7. Actualizar la base de datos de metasploit para que, cuando vayamos a utilizarla, esté ya preparada:
Oracle tiene intención de apostar fuertemente por la Nube y por ello nos ofrece «gratuitamente» la creación y el uso de 2 VPS con unas prestaciones mas que suficientes para implantar algunos servicios en la nube.
Hay muchos tutoriales en Youtube donde explican cómo crear estos VPS de forma sencilla. En concreto, Apuntes IT tiene unos muy bien explicados.
En este post, lo único que añadiré o modificaré ligeramente son los comandos para abrir los puertos desde la máquina VPS de Oracle ya que el autor de los tutoriales utiliza IPTABLES y creo, bajo mi punto de vista, que hay opciones mas sencillas.
UFW
Lo primero que haré será acceder via ssh a nuestro VPS y desde allí ejecutar los siguientes comandos:
sudo apt remove netfilter-persistent
Quitamos el cortafuegos basado en IPTABLES que incorporan por defecto las máquinas virtuales.
apt install ufw
Instalamos UFW que es mucho mas fácil de configurar.
Excel es una herramienta potentísima, eso es un hecho.
Cuando tienes una hoja que se nutre de una base de datos y que se actualiza periódicamente cada pocos minutos, viene muy bien que la propia hoja de cálculo nos avise de cualquier cambio que determine una acción a ejecutar.
Para solucionar esto, vamos a programar una macro que detecte los cambios en un rango (tabla) y que nos notifique vía correo electrónico. Esta macro presupone que tenemos instalado y configurado Outlook.
Para añadir nuestra macro, pulsaremos con el botón derecho sobre el nombre de nuestra hoja:
Botón derecho sobre «Hoja1»
A continuación copiamos el código de abajo.
Dim xRg As Range
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Set xRg = Intersect(Range("F5"), Target)
If xRg Is Nothing Then Exit Sub
If IsNumeric(Target.Value) And Target.Value > 0 Then
Call Mail_small_Text_Outlook
End If
End Sub
Sub Mail_small_Text_Outlook()
Dim xOutApp As Object
Dim xOutMail As Object
Dim xMailBody As String
Set xOutApp = CreateObject("Outlook.Application")
Set xOutMail = xOutApp.CreateItem(0)
' Select cell A5, *first line of data*.
Range("A5").Select
xMailBody = "Linea1" & vbNewLine & vbNewLine & _
"Linea2" & vbNewLine
Do Until IsEmpty(ActiveCell)
' Insert your code here.
xMailBody = xMailBody & vbNewLine & _
ActiveCell.Offset(0, 0).Value & "-" & _
ActiveCell.Offset(0, 1).Value & "-" & _
ActiveCell.Offset(0, 2).Value
' Step down 1 row from present location.
ActiveCell.Offset(1, 0).Select
Loop
On Error Resume Next
With xOutMail
.To = "[email protected]"
.CC = ""
.BCC = ""
.Subject = "Asunto del mensaje"
.Body = xMailBody
.Send 'or use .Display
End With
On Error GoTo 0
Set xOutMail = Nothing
Set xOutApp = Nothing
End Sub
La tabla tipo es la siguiente:
Tabla que cambia
El funcionamiento es muy sencillo.
Cuando los datos de la tabla se actualizan, el script comprueba que la cantidad de la casilla F5 tenga un valor mayor que 0.
En este caso envía un email a la dirección de correo especificada con los datos de la tabla.
Ya tenemos el entorno preparado y los datos salvados en la nube pero necesitamos un mecanismo que nos permita recuperar de forma rápida dichos datos.
Propongo dos formas:
Montaje de la carpeta de Google Drive encriptada como unidad de nuestro ordenador.
Recuperación de los datos a través de un servidor http que nos ofrezca de forma transparente el acceso a nuestra nube.
Montar volumen cifrado en claro
Para montar un volumen cifrado necesitamos crear en nuestro equipo local una carpeta donde veremos el contenido de nuestra carpeta de la nube ya sin cifrar. Nos puede servir el siguiente script.
Donde miGDrive_encriptado es el nombre del repositorio encriptado que creamos en Rclone (2/3) y /Users/miguel/transito es una carpeta en nuestro equipo local. Recordar que hay que dar los permisos de ejecución a nuestro script.
$ chmod +x montar_almacenamiento_encriptado.sh
El resultado del ejecutar el script lo podemos ver en el explorador de archivos de nuestro equipo:
Vista de la carpeta montada en nuestro equipoMisma carpeta en la nube de Google
Como podemos ver, el script de montaje nos trae a nuestro equipo la nube de Google sin encriptar de tal forma que podemos recuperar cualquier fichero que se nos antoje.
Cuando cerremos la terminal o terminemos el comando de montaje «montar_encrypted_storage_mac.sh» con Ctrl+C se desmontará la carpeta de nuestro equipo local.
Recuperar datos a través del navegador
Rclone nos permite de una forma sencilla recuperar los datos de nuestra nube también a través de un servidor http (entre otros métodos).
Para ello montaremos un script con el siguiente contenido:
Donde «miGDrive_encriptado» es el nombre del repositorio encriptado en la nube y «–addr :9090» es el puerto en que se montará el servidor http:
Si navegamos ahora tendremos:
Ahora podemos hacer uso del navegador estándar para descargar nuestros datos.
Conclusión
Como podemos observar Rclone es una herramienta extraordinaria, con múltiples de posibilidades. En nuestro caso la hemos usado para solventar una escenario muy particular pero las opciones son infinitas.
Si te ha resultado mínimamente útil esta serie de post, por favor, comparte y comenta. Estaré encantado en responder.
Ahora que ya tenemos el Id y la clave es conveniente recordar nuestro objetivo:
Configurar una unidad en la nube de Google Drive cifrada de extremo a extremo usando Rclone.
Cuando utilizas una nube pública, teóricamente solo tu y tu proveedor (Google en este caso) tienen acceso a tus datos. Cuando la nube pública es gestionada por una entidad superior o educacional, también el administrador de dicha entidad puede tener acceso a tus datos.
Cuando algo está cifrado extremo a extremo, nadie más que tú puede ver los datos. Es un nivel completamente diferente de protección y privacidad, incluso el servicio que almacena tus archivos no sabe nada sobre ellos porque el descifrado solo tiene lugar en sus dispositivos.
¿Qué es rclone?
Rclone se promociona como un rsync para el almacenamiento en la nube. Te permite sincronizar archivos entre su computadora y los proveedores de almacenamiento en la nube o incluso entre varios proveedores de nube que utilizan tu computadora como proxy.
La sincronización de archivos no es lo único que hace rclone. También tiene un montón de funcionalidades que le permiten exponer y manipular los datos. Por ejemplo, puedes montar una unidad en la nube directamente en su sistema operativo y usarla como otra unidad. O puede exponer el contenido de la unidad en la nube mediante el protocolo WebDAV, FTP, HTTP o incluso DLNA.
Instalar Rclone
Utilizaremos la línea de comandos o shell de nuestro sistema. La forma mas sencilla en un sistema basado en linux como es Synology es:
$ curl https://rclone.org/install.sh | sudo bash
Esto instalará Rclone en el sistema.
Configurar el almacenamiento remoto
En mi caso configuraré un almacenamiento remoto en Rclone cuyo destino será la carpeta raíz del espacio Google Drive.
$ rclone config
Y seguimos los pasos para la configuración de Google Drive:
Ahora es el momento de indicar el ID y la clave que obtuvimos anteriormente. Véase el post de preparativos.
Ahora pegamos en el navegador la url que nos da la consola para dar a nuestro Rclone permisos para acceder a Google Drive. Nos dará un código el navegador que tenemos que pegar a continuación:
Una vez configurado nuestro GDrive podemos hacer una prueba de acceso.
$ rclone lsd miGDrive:
Si todo ha ido bien veremos el contenido de nuestro Google Drive.
Añadiendo capa de cifrado
Una vez que Rclone «conoce» nuestro Google Drive, vamos a crear dentro de él una carpeta cuyo contenido va a estar encriptado. De nuevo llamaremos a Rclone para crear una configuración de carpeta encriptada.
$ rclone config
Y damos por finalizada la configuración. Todo lo que subamos a «miGDrive_encriptado» irá a la carpeta «encriptado» de nuestro Google Drive y estará cifrado con nuestras claves.
Sincronización inicial
Ya lo tenemos todo preparado para comenzar a subir datos. Para ello crearemos un script de la forma:
Procederemos a la ejecución del script y podemos ver el proceso y el resultado:
En la configuración de miGDrive_encriptado podemos especificar también que nuestras carpetas estén encriptadas de tal forma que ofusquemos al máximo el contenido de nuestro drive.
Poseemos una NAS (Network Attachment Storage) en la oficina o en casa del cual necesitamos hacer copia de seguridad externa. Cada marca de NAS, Synology, QNap y otras cubren dicha necesidad a través de sus propios software de forma muy aceptable.
La solución que ahora expongo nos servirá para cualquier NAS, Servidor o PC doméstico y también para cualquier sistema operativo, Windows, Mac o Linux. La nube pública «casi» puede ser cualquiera de las conocidas: Amazon, Microsoft OneDrive, Google Drive y un largo etcétera.
Rclone es un programa de línea de comandos para administrar archivos en el almacenamiento en la nube. Es una alternativa rica en funciones a las interfaces de almacenamiento web de los proveedores en la nube. Más de 40 productos de almacenamiento en la nube admiten rclone, incluidos almacenes de objetos S3, servicios de almacenamiento de archivos para empresas y consumidores, así como protocolos de transferencia estándar.
Lo primero que tenemos que hacer es crear la API y la autenticación en Google Drive. Nuestro objetivo será obtener unas credenciales (ID de cliente Oauth y una clave secreta).
Para ello accedemos a console.developers.google.com con las credenciales de nuestra cuenta Google Drive y creamos un proyecto nuevo:
Una vez creado el proyecto, lo seleccionamos para habilitar la «API Y SERVICIOS«.
Buscamos ahora el producto «Google Drive API» en la lista de los múltiples servicios de Google
Y habilitamos:
Nos interesa crear credenciales para nuestra aplicación Rclone:
En el tipo de API, seleccionamos Google Drive API del desplegable.
Marcamos «Datos del usuario» y pulsamos siguiente:
La opción 2- Permisos es opcional y podemos «Guardar y Continuar«.
Ahora toca «ID de cliente de OAuth» donde seleccionaremos «App de escritorio».
Solo nos queda pulsar en listo y tendremos las dos claves que nos interesan ya creadas:
En este post mostraré cómo instalar WordPress en una Raspberry Pi con el servidor Nginx.
WordPress es un CMS gratuito y de código abierto basado en PHP y MySQL que también tiene muchas características y miles de complementos y plantillas o temas. Si desea crear un sitio web o tienda en línea, WordPress podría ser la forma más sencilla de hacerlo.
Instalaremos el servidor web Nginx, el servidor de bases de datos MariaDB y los módulos PHP.
Cómo instalar Nginx en Raspberry Pi OS
A través de la consola:
sudo apt update
sudo apt install nginx
Una vez instalado dispondremos de los siguientes comandos para su control:
Se requiere un servidor de bases de datos para que WordPress funcione. WordPress almacena su contenido en una base de datos, y MariaDB es probablemente el mejor servidor de bases de datos disponible para ejecutar WordPress.
If you've just installed MariaDB, and haven't set the root password yet, you should just press enter here.
Enter current password for root (enter for none): PRESS ENTER
Switch to unix_socket authentication [Y/n] n
Change the root password? [Y/n] n
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y
All done!
Podemos dejar el servidor MariaDB sin clave pero restringiendo su uso remoto. Para comprobar que todo ha funcionado correctamente ingresaremos a la consola de MariaDB sin clave de root:
sudo mysql -u root -p
Cómo instalar PHP-FPM
Los paquetes PHP se añaden a los repositorios de Raspberry Pi Os. Es posible que las versiones de los repositorios no sean las últimas. Si necesita instalar las últimas versiones, tendrá que agregar un repositorio PPA de terceros.
Tenemos que hacer algún cambio en la configuración de php.
sudo nano /etc/php/8.0/fpm/php.ini
Y al final del archivo insertamos:
file_uploads = On
allow_url_fopen = On
short_open_tag = On
memory_limit = 256M
cgi.fix_pathinfo = 0
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = Europe/Madrid
Cómo crear una base de datos de WordPress
En este punto, estamos listos para crear una base de datos de WordPress.
sudo mysql -u root -p
CREATE DATABASE wpdb;
CREATE USER 'wpdbuser'@'localhost' IDENTIFIED BY 'new_password_here';
GRANT ALL ON wpdb.* TO 'wpdbuser'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
Cómo descargar WordPress
Descargaremos ahora la última versión WordPress:
cd /tmp
wget https://wordpress.org/latest.tar.gz
tar -xvzf latest.tar.gz
sudo mv wordpress /var/www/wordpress
Ahora, configuremos Nginx para crear un nuevo bloque de servidor para usar con nuestro sitio web de WordPress. Para hacer esto crearemos un fichero como sitio disponible:
Después de todo esto, tendremos una instalación inicial de WordPress en:
http://192.168.0.15
Necesitará conocer los siguientes elementos antes de continuar. Utilice la información de conexión a la base de datos que creó anteriormente.
Nombre de la base de datos
Nombre de usuario de la base de datos
Contraseña de la base de datos
Host de base de datos
Prefijo de tabla (si desea ejecutar más de un WordPress en una sola base de datos)
El asistente utilizará la información de la base de datos para crear un archivo wp-config.php en la carpeta raíz de WordPress.
Después de eso, haga clic en Ejecutar el botón de instalación para que WordPress complete la configuración.
A continuación, cree el nombre del sitio de WordPress y la cuenta de administrador del backend, luego haga clic en Instalar WordPress.
Cuando hayas terminado, WordPress debería estar instalado y listo para usar.
Conclusión:
Esta publicación te mostró cómo instalar WordPress en Raspberry Pi Os aunque debería ser prácticamente idéntica en cualquier distribución basada en Debian.
Si encuentras algún problema no dudes en usar los comentarios para hacérmelo saber.
En este post trato de explicar de la forma mas rápida y concisa cómo poner en producción una aplicación en Django en un VPS basado en Linux.
Tómese este post a modo de chuleta con todos los pasos necesarios para el despliegue: desde la instalación de la aplicación partiendo de un repositorio github, la instalación de postgresql, nginx, supervisor, cortafuegos, gunicorn…
Si eres programador o administrador de sistemas sabrás que recibir notificaciones unificadas de los servicios que gestiones es siempre una labor muy repetitiva y rutinaria.
Pues bien en este post voy a describir la forma mas sencilla que he encontrado (de momento) para que puedas mandar notificaciones a tu propio bot de Telegram. Si nunca has creado un bot verás que es un proceso en extremo sencillo.