Planeta Sysadmin

de sysadmins para sysadmins

September 16, 2019

RooTeando

Entrevista En Diferido 16: José Miguel Parrella

Comenzamos una nueva  entrevista a José Miguel Parrella, @bureado en Twitter, empleado en Microsoft donde trabaja con Azure y tecnologías OpenSource. 

Antes de todo, gracias por participar y apoyar este proyecto. La primera pregunta es una presentación por parte del entrevistado, para que los lectores te puedan conocer un poco.

 

Entrevista En Diferido:  ¿Te podrías presentar en unas líneas?

 

JMP:  Hola y gracias por invitarme. Mi nombre es José Miguel y ...

September 16, 2019 02:38 PM

September 13, 2019

soyadmin.com

Cambiar el /home de un Usuario

Para poder cambiar el directorio home de un usuario usaremos el comando usermod

# usermod -d /nuevohome/usuario usuario

Cambiar el /home y copiar el contenido del usuario:

# usermod -d -m /nuevohome/usuario usuario

Para más info podemos ver más del uso de esta herramienta

# man usermod

by Mauro at September 13, 2019 01:46 PM

Script Bash para limpieza de temporales

Bueno acá presentamos un script que sirve para limpieza de temporales directamente tomando como eje el directorio o partición /TMP

El script funciona rastreando y eliminando ciertos archivos temporales, se ejecuta mediante cron.

Vamos al script propiamente dicho, el cual en mi caso lo he creado dentro de la carpeta /etc/cron.hourly/ para que de esa manera se ejecute cada 1 hr automáticamente.

Creamos el archivo, ejemplo:

# vi scriptlimpia.sh
#!/bin/bash

# Nos movemos a /tmp
cd /tmp
ls | grep 'pTh*' | xargs rm -fv

# Limpia restos de Gallery2
ls | grep '[0-9].inc*' | xargs rm -fv

# Limpia archvos de sesiones PHP
ls | grep 'sess_*' | xargs rm -fv

# Limpia uploads fallidos de vBulletin
ls | grep 'vbupload*' | xargs rm -fv

# Limpia upload de archivos php fallidos
ls | grep 'php*' | xargs rm -fv

# Limpia conversiones fallidas de ImageMagick .
ls | grep 'magick*' | xargs rm -fv

Se puede probar el script ejecutándolo mediante:

# bash /etc/cron.hourly/scriptlimpia.sh

Espero que es sirva!

by Mauro at September 13, 2019 01:37 AM

September 12, 2019

soyadmin.com

Ver tiempo de ejecución de servicios o procesos

Puede que en algún momento necesitemos saber o conocer cuánto tiempo lleva abierto o en ejecución un proceso o servicio

Con el comando etime (elapsed time) podemos ver el tiempo de ejecución que lleva un servicio. Este comando por si solo no hace nada pero concatenado con PS nos puede devolver el tiempo de un servicio, sabiendo previamente el PID de dicho servicio.

# ps -p PID -o etime=
# ps -p 2586 -o etime=
02:25

by Mauro at September 12, 2019 02:05 PM

Sobre bits

Primeros pasos con PowerCLI para vCloud Director

Hasta hoy cuando en este blog he hablado de PowerCLI siempre lo he hecho referente a su interacción con VMware vSphere (ESXi + vCenter), pero ni mucho menos PowerCLI se limita a ejecutar acciones únicamente contra esta plataforma. En la entrada de hoy exploraremos el uso de PowerCLI para vCloud Director, una herramienta que acostumbro a usar y que si sois usuarios o administradores de la plataforma seguro os ayuda a gestionar mejor vuestras infraestructuras.

Primeros pasos con PowerCLI para vCloud Director

¿Qué es vCloud Director?

Si bien a VMware se la conoce especialmente por vSphere, ésta tiene una gran cantidad de productos la mar de interesantes en el mercado (muchas apoyadas en vSpere).

vCloud Director es una plataforma de VMware con la que se ofrecen las características necesarias para crear un servicio de Cloud, ya sea para que un proveedor de servicios ofrezca un servicio de Cloud público como para que un cliente final ofrezca un servicio de Cloud privado para su empresa, encima de una plataforma tan conocida como VMware vSphere.

Los cmdlets de PowerCLI para vCloud Director

Cuando instalamos PowerCLI en nuestra máquina con el módulo VMware.PowerCLI instalamos todos estos módulos:

  • Windows TerminalVMware.DeployAutomation
  • VMware.ImageBuilder
  • VMware.PowerCLI
  • VMware.Vim
  • VMware.VimAutomation.Cis.Core
  • VMware.VimAutomation.Cloud
  • VMware.VimAutomation.Common
  • VMware.VimAutomation.Core
  • VMware.VimAutomation.Hcx
  • VMware.VimAutomation.HorizonView
  • VMware.VimAutomation.License
  • VMware.VimAutomation.Nsxt
  • VMware.VimAutomation.Sdk
  • VMware.VimAutomation.Security
  • VMware.VimAutomation.Srm
  • VMware.VimAutomation.Storage
  • VMware.VimAutomation.StorageUtility
  • VMware.VimAutomation.Vds
  • VMware.VimAutomation.Vmc
  • VMware.VimAutomation.vROps
  • VMware.VumAutomation

Para interactuar con vCloud Director utilizaremos el módulo VMware.VimAutomation.Cloud, cuyos cmdlets podemos listar, como siempre, con Get-Command:

Get-Command -Module VMware.VimAutomation.Cloud

Utilizando PowerCLI para vCloud Director como usuario

Cuando interactuamos con PowerCLI para vCloud Director en modo usuario podremos realizar tareas relacionadas con la administración de nuestras máquinas virtuales, vApps, Edge Gateways…

Lo primero que deberemos hacer será conectarnos a nuestra organización. Para ello utilizaremos el cmdlet Connect-CIServer, que tiene un uso muy similar al mítico Connect-VIServer:

# Conectamos a la infraestructura
Connect-CIServer -Server vcloud.sobrebits.com -Org sobrebits_Org

# Cuando hemos acabado las respectivas acciones desconectamos
Disconnect-CIServer -Server vcloud.sobrebits.com -Confirm:$false

Lo importante aquí es tener en cuenta que será necesario especificar siempre el parámetro -Org para entrar en modo usuario.

Ahora que ya tenemos conexión contra nuestra organización podemos realizar toda clase de operativa directamente desde nuestra consola favorita. Veamos algunos de los cmdlets más interesantes:

  • Trabajar con nuestras vApps y VMs:
# Listar, crear, parar o eliminar vApps
Get-CIVApp
New-CIVApp
Stop-CIVApp
Remove-CIVApp

# Listar, crear, parar o eliminar VMs 
Get-CIVM
New-CIVM
Stop-CIVM
Remove-CIVM
  • Interactuar con catálogos, plantillas y medios:
# Listar catálogos
Get-Catalog

# Listar, crear o eliminar plantillas de vApp
Get-CIVAppTemplate
New-CIVAppTemplate
Remove-CIVAppTemplate

# Listar archivos de medios
Get-Media
  • Interactuar con nuestros firewalls virtuales y redes:
# Listar nuestros Edge Gateways
Get-EdgeGateway

# Listar, crear, modificar o eliminar Org Networks
Get-OrgVdcNetwork
New-OrgVdcNetwork
Set-OrgVdcNetwork
Remove-OrgVdcNetwork

Utilizándolo como administrador

Cuando utilizamos vCloud Director como administrador encontramos dos diferencias básicas respecto a la interacción como usuario:

  • Tenemos visibilidad sobre todos los recursos de la plataforma: Esto quiere decir que si, por ejemplo, utilizamos Get-CIVApp en este modo podremos listar las vApps de todas las organizaciones de la infraestructura.
  • Podremos interactuar contra elementos de la infraestructura que no son visibles para el usuario.

Aquí van algunas de las cosas interesantes que podemos hacer:

# Listar los detalles del Provider VDC
Get-ProviderVDC

# Listar y añadir Datastores
Get-CIDatastore
Add-CIDatastore

# Hacer búsquedas avanzadas sobre la infraestructura
Search-Cloud
Get-CIView

Conclusión

Muchas de las cosas que hemos visto sobre PowerCLI en el blog pueden ser traducidas a PowerCLI para vCloud Director, espero que con esta entrada introductoria y con lo visto en anteriores entradas os ayude a llevar también la automatización a ésta plataforma. Os recomiendo que tanto si sois usuarios como administradores de la misma le deis una oportunidad.

¡Nos leemos en la próxima!

La entrada Primeros pasos con PowerCLI para vCloud Director aparece primero en Sobrebits.

by Marc Meseguer at September 12, 2019 12:05 PM

September 11, 2019

soyadmin.com

Terminal: Cambiar el directorio de Mysql (por ejemplo de /var/lib/ a /hd2)

Muchas veces, la mayoría de ellas por cuestiones de espacio, es necesario mover el directorio de base de datos a una carpeta distinta.
Esto también puede ser aplicable a un disco totalmente nuevo. Según lei por ahi tener mysql operando en un disco distinto al resto de aplicaciones y donde no conviva con servicios, mejora considerablemente la performance. De esta manera poseemos configurado los servers de host en nuestra empresa.

1) A modo preventivo y como seguridad lo primero sería hacer un respaldo de todas las bases de datos:

# mysqldump --all-databases | gzip > /home/respaldogeneral.sql.gz

2) Para evitar problemas de reinicio del servicio, si usamos algún panel de control debemos estopear el servicio de Mysql y evitar que este se reactive automáticamente (por ejemplo si tenemos WHM ingresamos en Service Manager y vamos a estopear el chequeo de Mysql)

También lo paramos via SSH

# service mysql stop

3) Ahora vamos en si crear el nuevo directorio para mysql, y moveremos el contenido:

# mkdir /hd2/mysql
# mv /var/lib/mysql /hd2/mysql
# chown -R mysql:mysql /hd2/mysql/mysql
# ln -s /hd2/mysql/mysql /var/lib/mysql

4) Por último hay que verificar el archivo de configuración de mysql:

# vi /etc/my.cnf

Buscamos en una de las primeras filas
datadir=/var/lib/mysql
Y lo reemplazamos por el nuevo directorio:
datadir=/hd2/mysql

5) Iniciamos y chequeamos el funcionamiento de Mysql y de los sites.-
Volvemos a activar el monitor de Mysql en en nuestro panel de control.

# service mysql start

by Mauro at September 11, 2019 10:28 PM

Actualizar la Zona Horaria en CentOS

Para ver la zona horaria en nuestro server, lo hacemos mediante el comando date:

# date +%Z
CET

Para cambiar la zona horaria de nuestro server lo que vamos a hacer es:
1) Verificar si tzdata se encuentra instalado y actualizado

# yum install tzdata

2) Actualizamos la zona horaria, editando el archivo Localtime# cp /usr/share/zoneinfo/UTC /etc/localtime

# date +%Z
UTC

by Mauro at September 11, 2019 02:25 PM

September 10, 2019

soyadmin.com

Ficheros de logs en Plesk Linux

En este post comentaremos la ubicación de los logs más utilizados de un Server Linux, funcionando con Plesk como Panel de Control

Logs de Instalación de Plesk:

/tmp/autoinstaller3.log

Logs de la actualización del panel de control Plesk y otras aplicaciones:

/tmp/psa-'nombre-aplicacion'...log

Errores y logs de accesos a Plesk:

/usr/local/psa/admin/logs/httpsd_access_log
/var/log/sw-cp-server/error_log

Logs de la migración de Plesk:

/usr/local/psa/PMM/logs/migration.log

Logs de WachDog:

/usr/local/psa/var/modules/watchdog/log/monit.log

Logs del servidor apache en Plesk:

/var/log/httpd/access_log
/var/log/httpd/error_log

Logs de Apache Suexec en Plesk:

/var/log/httpd/suexec_log

Logs de accesos y errores de una página web:

/var/www/vhosts/domain.tld/statistics/logs/access_log
/var/www/vhosts/domain.tld/statistics/logs/error_log

Logs de MySQL en Plesk:

/var/lib/mysql/server.hostname.err (definido /etc/my.cnf)

Logs de Named (Bind) en Plesk:

/var/log/messages

Los del mail (Qmail y Postfix) en Plesk:

/usr/local/psa/var/log/maillog

Logs FTP en Plesk:

/var/log/plesk/xferlog

Logs del servidor en Plesk:

/var/log/messages

Logs de Horde Webmail:

/var/log/psa-horde/psa-horde.log

Logs del Cronjob:

/var/log/cron

Logs SSH:

/var/log/secure

Logs de Mailman:

/var/log/mailman/

Logs de Tomcat:

/var/log/tomcat5/catalina.out

Logs de Backup Plesk:

/usr/local/psa/PMM/sessions/

by Mauro at September 10, 2019 08:21 PM

Solución a: MySQL failing to start with message “Can’t find file: ‘./mysql/plugin.frm’ (errno: 23)”

Hace unos días tuvimos un problema con el servicio de mysql, el cual le costaba reiniciar.

Mysql devolvía el siguiente log:

131224 06:04:53 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
/usr/libexec/mysqld: Can't find file: './mysql/plugin.frm' (errno: 23)
131224 6:04:53 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
/usr/libexec/mysqld: Can't create/write to file '/tmp/ibqcFQMW' (Errcode: 23)
131224 6:04:53 InnoDB: Error: unable to create temporary file; errno: 23
131224 6:04:53 [ERROR] Plugin 'InnoDB' init function returned error.
131224 6:04:53 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
131224 6:04:53 [ERROR] Can't create IP socket: Too many open files in system
131224 6:04:53 [ERROR] Aborting131224 6:04:53 [Note] /usr/libexec/mysqld: Shutdown complete131224 06:04:53 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended

El error parece indicar que no se encuentra el archivo «./mysql/plugin.frm» pero esto no es correcto dado que al final del mensaje del error se registra un:

‘[ERROR] Can’t create IP socket: Too many open files in system‘.

Este error final y causante de la falla indica que el servidor esta con problemas para atender dicha petición:

# perror 23
OS error code 23: Too many open files in system

Para incrementar este valor y así lograr levantar el Mysql debemos hacer:

# vi /etc/sysctl.conf
Buscamos fs.file-max = 65536 y lo incrementamos por ejemplo a 200000
Guardamos la edición del archivo y ejecutamos:
# sysctl -p para aplicar la configuración modificada.
Ahora si podremos reiniciar el servicio de mysql normalmente.

PD: Es recomendable que luego de un reinicio del server completo volvamos el valor de fs.file-max a 65536

by Mauro at September 10, 2019 01:15 PM

September 09, 2019

RooTeando

Tomando Un Café 65: Charla con Carlos Castillo

Volvemos con una entrevista a Carlos Castillo, fotografo, podcaster y usuario de Apple, donde hablamos de hardware, sistemas y mas cosas. Un usuario de Linux y un usuario de Apple hablando sobre Apple .

Si quieres apoyarme  de forma económica para mis podcast y canales, puedes realizarlo de diferentes formas:
PayPal   https://paypal.me/JoseAJimenez
Programa afiliado de Amazon  https://amzn.to/2Myjet8 , si compras a través de ese enlace,recibire una pequeña comisión ...

September 09, 2019 10:00 AM

September 06, 2019

soyadmin.com

CRIPTOGRAFÍA Y SEGURIDAD EN COMPUTADORES de Manuel López

Título: CRIPTOGRAFÍA Y SEGURIDAD EN COMPUTADORES
Autor: Manuel López
Páginas: 304 Páginas
Tamaño: 1.5 MB
Fomato: PDF

Contenido:

Hace ya diez años que publiqué la primera edición de Criptografía y Seguridad en Computadores. Muchas cosas han pasado desde entonces, pero hay dos que no han cambiado: la constante actualización de la obra, y la excelente acogida dispensada por los lectores.

Esta cuarta edición es probablemente la más ambiciosa de todas las ampliaciones que he llevado a cabo sobre el libro, por lo que temo que completarla me llevará bastante más tiempo que las anteriores. Por ello he decidido ir liberando las versiones intermedias que vaya generando, con un doble propósito: por un lado, permitir que el material llegue cuanto antes a los lectores, y por otro ir recogiendo comentarios y sugerencias, para poder hacer la obra más útil y completa.

Fuente: Openlibra

by Mauro at September 06, 2019 09:49 PM

Windows: Exportar la configuración y conexiones de PuTTy

PuTTY es un emulador de terminal, un programa que permite conectar con máquinas remotas y ejecutar programas a distancia. PuTTY se conecta como cliente a múltiples protocolos, como SSH, Telnet o Rlogin.

La ventana principal de PuTTY es la de configuración, que contiene un completo árbol de opciones. Las básicas están en el primer apartado, Session: introduce allí la dirección del servidor, el puerto y el tipo de conexión. Luego, haz clic en Open para establecer la conexión.

Una de las caracteríscas o funciones que posee PuTTy es la posibilidad de recordar o mantener un registro de las conexiones realizadas, donde sólo con un click estaríamos ingresando a nuestra conexión remota.

Para aquellos que poseemos muchisimos servidores o conexiones, el hecho de tener que reingresar todas las conexiones debido a que cambiamos de pc o formateamos, es un dolor de cabeza para muchos.(Como casi lo fue para mi)

Por suerte blogueando por ahi, encontré una manera sencilla de realizar un backup y restore de la configuración de puTTy.

1) Debemos ingresar a nuestro registro
Vamos a Inicio – Ejecutar
Escribimos regedit y le damos aceptar.

2) Una vez dentro del registro de Windows, vamos a buscar la cadena de puTTy

HKEY_CURRENT_USER
Software
SimonTatham
Putty

Allí hacemos click derecho en dicho registro y lo exportamos, lo cual nos generará un archivo .reg.

Este archivo .reg es el que restauraremos en la nueva PC. Teniendo ya instalado PuTTy simplemente le hacemos doble clic para que restaure.

by Mauro at September 06, 2019 09:44 PM

Dale a Gimp la apariencia de Photoshop

Con este interesante Tweak podremos darle un tuneo a nuestro Gimp, no solo en apariencia similar a Photoshop, sino también en íconos, atajos del teclado y ubicación de paneles. Funciona bajo cualquier distro Linux y rama, comprobado.

Algunos dirán que con la opción de ventana unificada (como yo lo uso) es suficiente, pero para algunos nostálgicos o bien para animar a saltar la brecha les sirve y mucho este tweak con el cual dejarán a su Gimp totalmente sabor Photoshop.

Este tuneo fue realizado por Martin Owens y es muy fácil de usar, simplemente realizamos un par de cambios rápidos y ya tendremos nuestro Gimp muy parecido a esto (directamente desde mi Xubuntu con GIMP 2.9)

La verdad sorprendente el cambio, todos los íconos y los paneles, hermoso incluso para mi que no uso ni usé nunca Photoshop.-

Vamos a Instalarlo en GIMP 2.8:

1) Descargamos el zip con el contenido desde DevianArt

2) Hacemos un respaldo de la configuración actual:
Se puede usar nuestro gestor de archivos (RECORDAR QUE LOS DIRECTORIOS ESTÁN OCULTOS) o bien desde la terminal con: (reemplazar USER por el usuario de esa PC)

mv /home/USER/.gimp-2.8 /home/USER/.gimp-2.8-backup

3) Descomprimimos el contenido del Zip dentro de nuestro /home, veremos que nos crea una nueva carpeta llamada .gimp-2.8 y con eso estaría completo.

Vamos a instalarlo en GIMP 2.9:

1) Descargamos el zip con el contenido desde DevianArt

2) Hacemos un respaldo de la configuración actual:
Se puede usar nuestro gestor de archivos (RECORDAR QUE LOS DIRECTORIOS ESTÁN OCULTOS) o bien desde la terminal con: (reemplazar USER por el usuario de esa PC)

mv /home/USER/.config/GIMP/2.9 /home/USER/.config/GIMP/2.9.backup

3) Descomprimimos el contenido del Zip dentro de /home/.config/GIMP/, nos creará un directorio llamado .gimp-2.8 que deberemos renombrar luego a 2.9 con eso ya estaría.

Deshacer los cambios:

GIMP 2.8 (reemplazar USER por el usuario de esa PC)

rm -r /home/USER/.gimp-2.8
mv /home/USER/.gimp-2.8-backup /home/USER/.gimp-2.8

GIMP 2.9 (reemplazar USER por el usuario de esa PC)

rm -r /home/USER/.config/GIMP/2.9
mv /home/USER/.config/GIMP/2.9-backup /home/USER/.config/GIMP/2.9

Fuente

by Mauro at September 06, 2019 12:20 PM

September 05, 2019

soyadmin.com

Solución al error «The root filesystem on /dev/sda1 needs a manual fsck» «initramfs» al iniciar Ubuntu y Linux Mint

Luego de una actualización de Ubuntu mi PC empezó a dar un error que no permitía iniciar el sistema.

El error indicaba:

"The root filesystem on /dev/sda1 needs a manual fsck"

(initramfs)

Este tipo de errores se da cuando queda corrupto un archivo de sistema, el cual probablemente fue modificado por la actualización previa. (Valla uno a saber)

SOLUCIÓN:

Para solucionar este problema booteamos nuestro equipo con un Live CD o Live USB, abrimos una terminal y realizamos un chequeo de la partición informada en el error con fsck

# sudo fsck /dev/sda1

Este proceso puede demorar un tiempo en finalizar, cuando termine podremos ingresar sin problemas a nuestra PC.

by Mauro at September 05, 2019 01:41 PM

Sobre bits

Parar VMs con PowerCLI de forma masiva y programada

Con PowerCLI se pueden hacer multitud de cosas contra una infraestructura vSphere. Yo partifcularmente disfruto especialmente con las que me ayudan a lograr que la infraestructura se mantenga controlada a lo largo de los meses puesto que, como he dicho muchas veces por aquí, conseguirlo se vuelve cada vez más difícil según vas sumando manos que la administren u operen con ella. En anteriores entradas hemos visto, por ejemplo, cómo controlar las VMs sin VMware Tools o con snapshots antiguos, y en la entrada de hoy veremos cómo parar VMs con PowerCLI que se supone que no deberían estar corriendo de forma perpetua.

Parar VMs con PowerCLI

¿Por qué parar VMs con PowerCLI?

Existen varios motivos por los que querríamos automatizar la parada de VMs con PowerCLI:

  • Asegurarnos de que VMs no productivas no consuman los recursos de las que sí lo son.
  • Parar VMs que no se utilizan durante todas las franjas horarias.
  • Controlar el gasto de nuestra infraestructura de pago por uso generado por nuestras máquinas de test.

En nuestro caso fue la última de las opciones la que nos hizo implementar esta medida, puesto que tenemos una carpeta de vSphere de test donde muy frecuentemente las máquinas quedaban encendidas después de su último uso durante semanas o meses, incurriendo en costes de licenciamiento en nuestra infraestructura absolutamente innecesarios.

Cmdlets implicados

Realizar esta automatización nos llevará muy pocas líneas de código. Para parar las máquinas virtuales nos valdremos de dos cmdlets de PowerCLI:

  • Shutdown-VMGuest: Para parar máquinas virtuales con VMware Tools «de forma amigable».
  • Stop-VM: Para parar máquinas virtuales sin VMware Tools, en este caso de forma un poco más «agresiva».

Manos a la obra

Ya podemos empezar a construir el script. Primero definiremos un área de configuración:

#### Configuración ####
# Conexión a vCenter
$VcenterIp = "192.168.168.168"
$VcenterCreds = Import-Clixml -Path "$PSScriptRoot\Credenciales\VMware.xml"
# Carpetas con VMs de pruebas
$VmFolders = 'Test','Pruebas'

Nada que no hayamos hecho varias veces en entradas del blog, pero vamos a repasarlo:

  • Líneas 3-4: Definimos los parámetros de conexión a vCenter, IP del servidor y las credenciales tal como vimos en entradas anteriores.
  • 6: Definimos las distintas carpetas de vSphere que querremos parar.

Y ahora podemos pasar a la acción:

#### Cuerpo ####
# Conectamos al vCenter
Connect-VIServer -Server $VcenterIp -Credential $VcenterCreds -WarningAction SilentlyContinue | Out-Null

# Recorremos las carpetas
ForEach ($VmFolder in $VmFolders) {
    # Obtenemos las VMs encendidas
    $VMs = Get-Folder $VmFolder | Get-VM | Where-Object PowerState -eq 'PoweredOn'
    # Recorremos las VMs
    ForEach ($VM in $VMs) {
        # Obtenemos el estado de las tools
        $VmTools = $VM.ExtensionData.config.tools.toolsVersion

        # Apagamos forzosamente si no hay tools o amigablemente si sí que hay
        If ($VmTools -eq 0) {
            $VM | Stop-VM -Confirm:$false
        }
        Else {
            $VM | Shutdown-VMGuest -Confirm:$false
        }
    }
}

# Desconectamos del vCenter
Disconnect-VIServer -Confirm:$false

Aquí ya tenemos algo más que explicar:

  • Línea 3: Conectamos a la infraestructura vSphere con los datos de la sección de configuración.
  • 6-22: Recorremos las carpetas de VMs definidas en la sección de configuración.
    • 8: Obtenemos todas las VMs encendidas de la carpeta.
    • 10-20: Recorremos las VMs una a una.
  • 25: Desconectamos de la infraestructura.

Como siempre, programaremos la ejecución del script de PowerShell como habitualmente y lo ajustaremos a la periodicidad con la que queremos que se apaguen las VMs, en el caso de las VMs de test nosotros las apagamos cada noche.

Conclusión

A partir del script que os propongo podéis realizar las modificaciones que a vosotros os vengan bien, apagando VMs concretas y no carpetas, apagando todas las VMs de un servidor… Como siempre el límite es nuestra imaginación.

Espero que el script os sea de ayuda. ¡Hasta la próxima!

La entrada Parar VMs con PowerCLI de forma masiva y programada aparece primero en Sobrebits.

by Marc Meseguer at September 05, 2019 01:04 PM

September 03, 2019

soyadmin.com

Solución a: Ubuntu actualiza extremadamente lento (mirrors)

Luego de instalar Ubuntu 19 noté que la actualización del sistema era extremadamente lenta, a tal punto que no descargaba ni 10kb/s era eterna, demorando horas/días en finalizar.

En este caso la solución fue cambiar los mirrors, en mi caso el mirror de mi país no era el más veloz. Esto sirve para Ubuntu y todas sus derivadas

1) Vamos a «Actualización de Software» y damos a «Configuración»

2) Elegimos «Software de Ubuntu» y debemos cambiar el Mirror de descarga en «Descargar desde» en mi caso el servidor de Argentina no era el más rápido (vaya uno a saber porque)

Hacemos click en el desplegable y luego en «Otros«

3) En este caso haremos un escaneo de los mirrors para dejar que el sistema detecte y elija el mirror que mejor responde, hacemos click en «Seleccionar el mejor servidor»

4) Hará un escaneo y buscará los mejores servidores de descarga.

5) Veremos que detecta y marca el mejor servidor, una vez que lo marca damos a «Elegir servidor»

6) Nos pedirá autenticación y por último cuando damos a cerrar nos pedirá que demos a «Recargar» para actualizar la información.

Este último paso suele demorar varios minutos.

Ahora si, la actualización descargará a valores más aceptables.

by Mauro at September 03, 2019 11:07 PM

September 02, 2019

soyadmin.com

Como abrir 2 cuentas de Skype en Linux

En este post enserñaremos a abrir 2 cuentas de skype en la misma PC, utlizando skypeforlinux.

El procedimiento es sencillo, abrimos una terminal y colocamos:

# skypeforlinux --secondary --datapath=/home/user/.Skype/profile2/

De esa manera se abrirá pararelamente una nueva ventana de Skype pidiendo datos.

by Mauro at September 02, 2019 08:03 PM

August 30, 2019

RooTeando

Tomando Un Café 64: Mis canales de Telegram,documentación en Linux, Sampler y mi última compra

En este audio hablaré sobre la nueva periodicidad para dos de mis canales Un Día Una Aplicación y Un Python Al Dia, una herramienta que monitoriza comandos de Shell llamado Sampler, también hablo sobre mi última compra unos auriculares bluetooth redmi airdots . Por último hablaré sobre la documentación en Linux ¿Es buena o mala? 


Recomendación veraniega.

Podcast sobre Filosofía: La filosofía no sirve para nada
Feed https://www.ivoox.com/podcast-filosofia-no-sirve-para-nada_fg_f1703682_filtro_1.xml

Canal de ...

August 30, 2019 03:00 PM

soyadmin.com

Solución a: Teamviewer «No está listo. Compruebe su conexión» en Linux

Reinstale mi PC y luego de instalar Teamviewer me percaté que nunca conectaba, chequeando internet estaba todo ok pero teamviewer como que no recibía Internet…

El error era este:

Empecé a chequear lo básico, que el firewall no estuviera bloqueando, etc y descubrí que no era un tema de internet o bloqueos, sino que el Demonio de Teamviewer no estaba funcionando o activo.

¿Cómo se soluciona?

Para solucionarlo es necesario reiniciar/activar el demonio de teamviewer.

Debian / Ubuntu / Mint derivadas

# sudo teamviewer daemon stop
# sudo teamviewer daemon start

Arch, Manjaro y derivadas…

# systemctl enable teamviewerd
# systemctl start teamviewerd

En cualquier distro lo mejor es reiniciar luego de tirar los comandos y teamviewer puede demorar 1 minuto aproximadamente en conectar la primera vez.

by Mauro at August 30, 2019 12:32 PM

August 29, 2019

www.rootzilopochtli.com

Markdownéalo

Desde hace mucho tiempo he visto en github y gitlab archivos con la extensión “.md” y creí que era un documento exclusivamente orientado para desarrolladores…hace un par de semanas…markdown se convirtió en la herramienta más importante de mi trabajo.

Markdown o md ha facilitado mi vida debido a que si añado algunos símbolos en mis notas, con la ayuda de una extensión de mi navegador un programa OpenSource (como pandoc) puedo “transformarlo” en una gama bastante amplia de formatos como pdf o mails.

Solo como un pequeño recordatorio, tal como Wikipedia nos lo menciona, Markdown es un lenguaje de marcado ligero con sintaxis de texto plano. Lo que realmente significa es que con el uso de algunos símbolos puedes crear un documento con varios formatos más amigables.

Confía en mi, una vez que aprendes a usar Markdown, cualquier actividad para tomar notas se convertirá, en alguna forma, más fácil y mejor que antes…

¿Cómo funciona?

De hecho puedes aprender las siguientes 8 reglas o tomar un pequeño curso en Tutorial Markdown

  1. Crea un archivo con la extensión “md”: “ejemplo.md”, puedes usar cualquier editor de texto (inclusive Microsoft Word, pero recuerda guardarlo como un archivo md)

2. Escribe lo que sea que quieras escribir como usualmente lo haces:

3. Añade al título un “# ” antes del texto # Este es un título, los subtítulos tienen ## Subtítulo, y un tercer subtítulo ### Tercer Subtítulo y así sucesivamente (nótese que hay un espacio entre los númerales “#” y antes de la primera palabra)

4. Si quieres poner un texto en bold solo pon el texto entre dos asteríscos **Esto es bold**

5. Para ítalica escribe _quiero ver esto en itálica_

6. Para insertar un link como este Markdown Tutorial solo escribe [Markdown Tutorial](https://www.markdowntutorial.com/)

7. Las citas textuales son escritas con “> ” antes del texto que quieres compartir. (Aquí hay otro espacio entre el signo de Mayor-que)

8. Ahora estás listo para escribir en Markdown, pero me temo que hay muchas más funciones que encontrarás conforme utilizas MD, si tienes 15 minutos puedes invertirlos en este tutorial de Markdown

¿Ahora qué sigue? ¿Cuál es el punto de aprender esto?

De hecho, con estas reglas simples ahora puedes escribir lo que quieras y transformarlo en casi cualquier formato que puedas utilizar. Te comparto un texto simple y cómo puedes utilizarlo en diferentes formatos, recueda que solo necesitamos escribir en .md una vez y, después…¡a conquistar el mundo!

  1. Tomar notas simples con Turtl

2. PDF

3. Mail

by Xico Islas at August 29, 2019 05:24 PM

August 26, 2019

soyadmin.com

Solución a: FTP «ECONNREFUSED – Connection refused by server» y «[ERROR] Unable to start a standalone server: [Address already in use]» con cPanel (centOS, RHEL)

Los FTP de uno de los servidores empezaron a fallar, buscando conexión el error que devolvía el filezilla era este:

Estado:    Falló intento de conexión con "ECONNREFUSED - Connection refused by server".

Al tratarse de algo masivo lo primero que trate de buscar es un posible bloqueo por parte del firewall o las IPTABLES del puerto 21 (responsable del FTP). Descartando esto ya vi que el problema me haría renegar, y así fue.

Me voy al Log y veia esto:

# grep pure-ftpd /var/log/messages

Jan 27 19:44:38 servername pure-ftpd: ([email protected]?) [ERROR] Unable to start a standalone server: [Address already in use]

Y ahi empezó la odisea, para salir del paso lo primero que hice fue pasar del pure-ftp al pro-ftp y así reestablecer el servicio a los clientes, esto lo haces desde el WHM en Home » Service Configuration » FTP Server Selection, esto mientras buscaba información y leia logs para ver que habia pasado con mi FTP muerto.

Cuando intentaba reiniciar el servicio mediante WHM este me daba estos errores:

Waiting for “ftpserver” to restart …………………………………………………………………………waiting for “ftpserver” to initialize ………finished.

Service Status:
pure-ftpd (/usr/sbin/pure-ftpd -O clf:/var/log/xferlog --daemonize -A -c50 -B -C8 -D -E -fftp -H -I15 -lextauth:/var/run/ftpd.sock -L10000:8 -m4 -s -S21 -U133:022 -u100 -i -Oxferlog:/usr/local/apache/domlogs/ftpxferlog -o -k99 -Z -Y1 -JHIGH:MEDIUM:+TLSv1:!SSLv2:+SSLv3) running as root with PID 645701 (process table check method)
pure-authd (/usr/sbin/pure-authd -s /var/run/ftpd.sock -r /usr/local/cpanel/bin/pureauth) running as root with PID 645706 (pidfile check method)

The service “ftpserver” failed to send the expected response to host “127.0.0.1” and port “21” because an error: Timed out while trying to connect.

Startup Log:
Starting pure-config.pl: Running: /usr/sbin/pure-ftpd -O clf:/var/log/xferlog --daemonize -A -c50 -B -C8 -D -E -fftp -H -I15 -lextauth:/var/run/ftpd.sock -L10000:8 -m4 -s -S21 -U133:022 -u100 -i -Oxferlog:/usr/local/apache/domlogs/ftpxferlog -o -k99 -Z -Y1 -JHIGH:MEDIUM:+TLSv1:!SSLv2:+SSLv3
[  OK  ]
Starting pure-authd:

Log Messages:
Jan 27 22:28:14 soyadmin proftpd[604688]: xxxxxxxx
Jan 27 22:27:51 soyadmin proftpd[604425]: xxxxxxxxxx
Jan 27 22:27:06 soyadmin proftpd[602374]: xxxxxxxxxxx
Jan 27 22:26:32 soyadmin proftpd[602316]: xxxxxxxxxxxxxxxxx
Jan 27 19:25:40 soyadmin proftpd[600550]: xxxxxxxx

ftpserver has failed. Please contact your system administrator if the service does not automagically recover

Finalmente encontré la solución luego de probar mil configuraciones y posibles parches.

Solución:

En la configuración del pure-ftp editamos:

# vi /etc/pure-ftpd.conf
Comentamos la linea
# CallUploadScript yes

Volvemos a colocar el pure-ftpd como motor FTP dentro del cPanel, en Home » Service Configuration » FTP Server Selection y ya veremos que con esa simple modificación queda todo listo y funcionando.

by Mauro at August 26, 2019 02:00 PM

August 23, 2019

soyadmin.com

Exim: Los comandos más útiles para gestión y control

Exim es uno de los servidores de correo más utlizados en la actualidad, su performance y seguridad lo hacen el más elegidos de la actualidad.

En este post te enseñaremos varios comandos para poder resolver problemas o detectar spam y gestionar nuestro servidor de correo, un recuento muy util que cualquier sysadmin debería tener.

Verificar la cantidad de correos en cola de un dominio

# exim -bp | grep 'dominio.com'

Ver la cantidad de correos en cola

# exim -bpc

Listar el número de correos en estado «Frozen»

# exim -bpr | grep frozen | wc -l

Eliminar los correos en estado «Frozen»

# exim -bpr | grep frozen | awk {'print $3'} | xargs exim -Mrm

Eliminar un correo sin enviar un correo de error al remitente

# exim -Mrm ID

Eliminar un correo enviando un correo de error al remitente

# exim -Mg ID

Forzar el envío de un correo en concreto

# exim -M ID

Escanear el log de exim y listar la cantidad de correos enviados por cada cuenta de email del servidor

# cat /var/log/exim_mainlog | grep "A\=dovecot_login" | awk -F"A=dovecot_login:" {'print $2'} | cut -f1 -d' ' | sort | uniq -c | sort -n | awk {'print $1, " correos enviados por " , $2'}

Escanear el log de exim y listar la cantidad de correos enviados por un dominio

# grep dominio.com /var/log/exim_mainlog | grep dovecot_login | awk -F"dovecot_login:" '{print $2}' | awk '{print $1}' | sort | uniq -c | sort -n

Detectar correos enviados por phpmail

# find ./ -name \*.php -exec grep -l "mail(" {} \;

Ver la cabecera de un correo

# exim -Mvh ID

Eliminar los todos los correos que hay en cola

# exim -bp | awk '/^ *[0-9]+[mhd]/{print "exim -Mrm " $3}' | bash

Eliminar correos de una dirección de correo que están en cola

# for i in $(exim -bp|grep [email protected]|grep -|grep @|awk {'print $3'});do exim -Mrm $i;done

Ver el cuerpo de un correo

# exim -Mvb ID

Ver el log de un correo

# exim -Mvl ID

Forzar el envio de la cola de correo

# exim -qf

Cuántos correos hay en la cola, listado por cuenta de correo

# exim -bp|awk 'NF>1{print $4}' | sort | uniq -c |sort -nk1

Cuántos correos hay en la cola, listado por dominio

# exim -bp | /usr/sbin/exiqsumm

Explorar el log de exim buscando cuentas atacadas por fuerza bruta

# awk -F"ffff:" '/FAILED/ {IP[$NF]++;}END{ for ( host in IP ) print IP[host]" "host}' /var/log/maillog | awk '{ if ( $1 > 99 ) print $0}' | sort -nk1 | sed 's#]##' > IPS; for IP in `awk '{print $2}' IPS`; do echo -n $(grep $IP IPS); echo -n " - Failed users: "; grep $IP /var/log/maillog | awk -F"user=" '/FAILED/ {print $2}' | cut -d, -f1 | sort | uniq | wc -l; done

Ver la cantidad de conexiones IMAP por usuario

# ps -ef |grep imap | awk '{print $1}' | sort | uniq -c | sort -g -k 1 | tail

by Mauro at August 23, 2019 03:05 PM

August 21, 2019

soyadmin.com

Como recibir un email cada vez que el usuario Root loguea a nuestro server

Hace unos días enseñábamos a controlar los accesos erroneos al usuario Root, y así poder identificar que IP’s están atacando al ssh.

Hoy explicaremos, para ustedes que quieren aun más seguridad en sus servidores, como hacer que el server nos envíe un email cada vez que el usuario root logra una conexión exitosa al SSH Shell de nuestros servidores.

1) Lo que deberemos hacer es editar el archivo .bash_profile

# vi /root/.bash_profile

2) Normalmente el archivo .bash_profile, se encuentra protegido para edición, tal como comentábamos aqui, es sencillo desproteger el acceso para permitirnos la edición del mismo:

# chattr -i /root/.bash_profile

3) Agregamos al final del archivo esta línea:

echo ‘OJO Alguien se ha conectado Mediante Root el :’ `date` `who` | mail -s “Ojo acceso Root” [email protected]

Donde:
«Date» nos mostrará fecha y hora del acceso
«Who», entre muchas cosas nos indicará el IP del que ha logrado acceder.
«mail -s» enviará un correo con el asunto y la dirección de email ingresada

En resumen, los pasos son los siguientes:

# chattr -i /root/.bash_profile
# vi /root/.bash_profile
echo ‘OJO Alguien se ha conectado Mediante Root el :’ `date` `who` | mail -s “Ojo acceso Root” [email protected]
# chattr +i /root/.bash_profile

by Mauro at August 21, 2019 09:28 PM

August 20, 2019

Tuxjm el sitio de jmedina

Bootstrap mega menu on hover

Bootstrap mega menu on hover ” is the keyword for which many people search when creating a mega menu. It is simply understood that the menu is created with bootstrap and its submenu items appear on hover instead of click effect. Usually, click effect is just applied on mobile because there is no way to hover on mobile devices. Conversely, hover effect is popularly applied on desktop since it reduces user operations.

Bootstrap mega menu on hover

If you are interested in our previous article “ bootstrap mega menu full width ”, the example in this article will be similar to the previous one. You are able to create the hover effect by using css or js. Regarding CSS, you can use this syntax :hover, for instance,

<li class=”menu”><a href=”#”>Menu</a><ul class=”sub-menu”><li><a href=””>Sub menu</a></li></ul></li>

If the submenu is hidden by default and appears on hover, you can use the following css: Menu:hover .sub-menu {display:block}

Besides using css, you can also use js by detecting mouse hover events. Here we have two more methods to deal with the submenu appearance. The first way is when hovering on a menu item, a class will be added and when hovering over the menu item, this class will be removed. In addition, CSS is in use as well to show and hide submenus.

$(“menu”).hover(function(){
$(this).addClass(“active”);
}, function(){
$(this).removeClass(“active”);
});

.menu .sub-menu {display:none}

.menu.active  .sub-menu {display:block}

The second technique is when hovering on a menu item, some attributes of js such as .show() will be applied.

For example,

$(“menu”).hover(function(){
$(“ sub-menu”).show();
}, function(){
$(“ sub-menu”).hide();
});

Now, we will come back to our primary task related to creating a “ bootstrap mega menu on hover ”. An integral tool in this article, as well as the previous one, is a bootstrap plugin.You can download this plugin here. We will not spend more time on integrating this plugin because there are various articles as well as detailed guidance on this taskon its homepage. In this article, we will introduce to you about how to use attributes ofcss and js so you will have options applied to different cases. You can download the file we share below. The whole code snippet is put in index.html file, please open this file and check.

đây là một đoạn code đơn giản, bạn có thể copy  cho vào dự án của bạn

This is just a simple code snippet, you can copy and paste in your project.

<!DOCTYPE html>
<html>
<head>
<link rel=”stylesheet” href=”https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css”>
<style>
* {
box-sizing: border-box;
}

body {
margin: 0;
}

.navbar {
overflow: hidden;
background-color: #333;
font-family: Arial, Helvetica, sans-serif;
}

.navbar a {
float: left;
font-size: 16px;
color: white;
text-align: center;
padding: 14px 16px;
text-decoration: none;
}

.dropdown {
float: left;
overflow: hidden;
}

.dropdown .dropbtn {
font-size: 16px;
border: none;
outline: none;
color: white;
padding: 14px 16px;
background-color: inherit;
font: inherit;
margin: 0;
}

.navbar a:hover, .dropdown:hover .dropbtn {
background-color: red;
}

.dropdown-content {
display: none;
position: absolute;
background-color: #f9f9f9;
width: 100%;
left: 0;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
z-index: 1;
}

.dropdown-content .header {
background: red;
padding: 16px;
color: white;
}

.dropdown:hover .dropdown-content {
display: block;
}

/* Create three equal columns that floats next to each other */
.column {
float: left;
width: 33.33%;
padding: 10px;
background-color: #ccc;
height: 250px;
}

.column a {
float: none;
color: black;
padding: 16px;
text-decoration: none;
display: block;
text-align: left;
}

.column a:hover {
background-color: #ddd;
}

/* Clear floats after the columns */
.row:after {
content: “”;
display: table;
clear: both;
}

/* Responsive layout – makes the three columns stack on top of each other instead of next to each other */
@media screen and (max-width: 600px) {
.column {
width: 100%;
height: auto;
}
}
</style>
</head>
<body>

<div class=”navbar”>
<a href=”#home”>Home</a>
<a href=”#news”>News</a>
<div class=”dropdown”>
<button class=”dropbtn”>Dropdown
<i class=”fa fa-caret-down”></i>
</button>
<div class=”dropdown-content”>
<div class=”header”>
<h2>Mega Menu</h2>
</div>
<div class=”row”>
<div class=”column”>
<h3>Category 1</h3>
<a href=”#”>Link 1</a>
<a href=”#”>Link 2</a>
<a href=”#”>Link 3</a>
</div>
<div class=”column”>
<h3>Category 2</h3>
<a href=”#”>Link 1</a>
<a href=”#”>Link 2</a>
<a href=”#”>Link 3</a>
</div>
<div class=”column”>
<h3>Category 3</h3>
<a href=”#”>Link 1</a>
<a href=”#”>Link 2</a>
<a href=”#”>Link 3</a>
</div>
</div>
</div>
</div>
</div>

<div style=”padding:16px”>
<h3>Responsive Mega Menu (Full-width dropdown in navbar)</h3>
<p>Hover over the “Dropdown” link to see the mega menu.</p>
<p>Resize the browser window to see the responsive effect.</p>
</div>

</body>
</html>

This code can be used for your projects but not your customers who have no experience in html. For these clients, you should create a plugin that allows them to configure such as editing images, text content, etc. If you are using Prestashop source code, I suggest that you should use PrestaShop Mega Menu module. When using this module, you can create different menu types such as dropdown, html, image, or products. There is no problem if you are not skillful in code. The only thing you need to do is combining your creativity and the plugin’s configurations to build up your own menu. If you encounter any problem when using the module, the support team is always willing to help you using the plugin in the most satisfying way.

 

 

 

The post Bootstrap mega menu on hover appeared first on Tuxjm el sitio de jmedina.

by admin_tuxjm at August 20, 2019 09:43 AM

August 19, 2019

RooTeando

Tomando Un Café 63: Errores en cursos

Volvemos del modo vacaciones con un audio sobre errores cometidos y vistos en cursos, he elaborado la siguiente  lista de diez  errores.

1  Cambio de Chip, un formador es un formador y tiene unas cualidades y caracteristicas.
2- Perfil y requisitos de los alumnos.
3- Centrarse en el alumno.
4- No dar suficiente información al alumno.
5- Poca preparación.
6- Improvisación.
7- Cada formato para su contenido.
8- Comunicación con el formador.
9- Falta de ...

August 19, 2019 05:30 PM

August 16, 2019

soyadmin.com

Activar o Desactivar SELinux en CentOS y RHEL

Hace unos días explicábamos de que se trata SELinux, hoy la idea es verificar nuestros servidores para buscar si SELinux está o no activo y en caso de necesitarlo activar/desactivarlo.

Hay algunos Sysadmins que tienen sus propios sistemas de seguridad y prefieren que SELinux esté desactivado, o en sistemas especiales es necesario que esté off para que haya una compatibilidad.

Lo primero es ver en que estado se encuentra SELinux

# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   enforcing
Mode from config file:          enforcing
Policy version:                 23
Policy from config file:        targeted

Para activar o desactivarlo solo basta en «tocar» la configuración de SELinux

# vi /etc/selinux/config
SELINUX=disable o enable (según lo necesitemos)

También es posible cambiar el estado de SELinux temporalmente a «enforcing» o «permissive» utilizando el comando «setenforce»
Enforcing: Es el modo activo, si algo sucede en el sistema que viola una de las reglas o políticas de SELinux, la bloqueará y registrará en los logs.
Permissive: Este modo no bloqueará ni negará nada, por mas que haya violaciones a SELinux lo único que hará es registrarlo en los logs, permitiendo todo.

Para poner a SELinux en estado «permissive» (mostrar advertencias en lugar de aplicar políticas):

# setenforce 0

Para poner a SELinux en estado «enforcing» (aplicar políticas):

# setenforce 1

Esto es ideal para realizar pruebas, poner a SELinux temporalmente activado o desactivado. Es temporal porque si reiniciamos nuestro sistema SELinux volverá a la configuración que poseíamos antes de usar e modo «enforcing» o «permissive«.

by Mauro at August 16, 2019 03:14 PM

August 12, 2019

soyadmin.com

Solución a: “/dev/null is not a character device” al reiniciar SSH

Este error resultó ser muy común en varios servidores, con la gravedad de que deja de estar operativo el servicio SSH, el archivo /dev/null cambia y pasa a ser un archivo de caracteres incorrectos y Linux no puede interpretarlo.

Error:

# /etc/init.d/sshd restart
Restarting Secure Shell server: sshd failed!
/dev/null is not a character device!.

Solución:

Eliminamos el archivo /dev/null
# rm -f /dev/null
Volvemos a crearlo
# mknod /dev/null c 1 3

Finalmente reiniciamos el servicio de SSH y guala! arreglado el problemita.

# /etc/init.d/sshd restart
Stopping sshd:              [  OK  ]
Starting sshd:              [  OK  ]

by Mauro at August 12, 2019 12:39 PM

August 09, 2019

soyadmin.com

ATAQUES A APLICACIONES WEB de UOC

Título: ATAQUE A APLICACIONES WEB
Autor:
UOC (Universidad Abierta de Catalunia)
Páginas: 74 Páginas
Tamaño: 2.4 MB
Fomato: PDF

Contenido:

En este manual de seguridad informática publicado por la UOC dentro de su línea de cursos homónima encontramos los diversos aspectos a tener en cuenta en el ámbito de las aplicaciones web.

Algunos de los epígrafes aquí tratados son los siguientes:

Ataques de inyección de scripts
Ataques de inyección de código
Ataques de Path Tansversal
Ataques de inyección de ficheros
Google Hacking
Seguridad por ocultación

FUENTE: Openlibra

by Mauro at August 09, 2019 12:52 PM

August 06, 2019

soyadmin.com

Los mejores Docks para Linux

Un dock es un complemento para nuestro escritorio, también podría ser una barra de herramientas donde se colocan los lanzadores de nuestros programas preferidos, favoritos o los que usamos con más frecuencia.

Los docks fueron «tomados» de Mac y se hicieron muy populares en las distribuciones Linux, ya que brindan animaciones, sombras, transparencias y muchas opciones para mejorar la visual y poder iniciar nuestras aplicaciones frecuentes.

En este post te presentamos alguno de los mejores Docks disponibles para Linux.

Simdock

Simdock es un dock sencillo y muy fácil de instalar/usar. Es muy liviano y atractivo, pero de lo que carece Simdock es de la posibilidad de configurarlo.

Si lo que requieres es sencillez y facilidad, es para ti.

# sudo add-apt-repository ppa:onli/simdock
# sudo apt-get update
# sudo apt-get install simdock

Docky

Docky es uno de los mejores docks, muy atractivo y fácil de utilizar. Con muchas opciones de configuración. No solo puede colocar lanzadores de aplicaciones, sino que docky permite utilizar docklets para mostrar información de nuestro sistema, la hora, el clima, etc.

Docky viene en la mayoría de los repositorios Linux

# sudo apt-get install docky

Avant Window Navigator

Avant Window Navigator, es uno de los docks más atractivos y utilizados. Es extremadamente fácil de configurar y muy intuitivo. Permite agregar lanzadores del software que deseemos y también agregar útiles applets los cuales permitirán por ejemplo controlar el uso de CPU, la hora, etc.

Awn está disponible en casi todos los repositorios de las principales distribuciones Linux

# sudo apt-get install awn

Plank

Plank es uno de los docks más utilizados, muy fácil de configurar y con muchas opciones para facilitarnos el uso.

Es muy elegante y nos dará un atractivo a nuestro escritorio, Plank hace lo que promete, un excelente lanzador de aplicaciones con las opciones justas y al alcance de cualquier usuario.

# sudo apt install plank

DockBarX

DockBarX es un dock muy flexible y atractivo. Nos permite tener una barra de herramientas perfectamente funcional y con varias opciones de configuración

# sudo add-apt-repository ppa:xuzhen666/dockbarx
# sudo apt-get update
# sudo apt-get install dockbarx

Cairo Dock

Cairo es uno de los docks más avanzados, con una configuración extremadamente detallada y muuuchos applets para darle una funcionalidad extra a nuestro Dock

Ofrece la posiblidad de utilizar themes y sus efectos son impresionantes. Ofrece la posibilidad de modificar cada una de las características y agregar información mediante applets.

# sudo add-apt-repository ppa:cairo-dock-team/ppa
# sudo apt-get update
# sudo apt-get install cairo-dock cairo-dock-plug-ins

Usas dock en tu escritorio? cual? contanos linuxero!

by Mauro at August 06, 2019 09:25 PM

August 05, 2019

soyadmin.com

Como comprobar que cantidad de RAM tenemos en nuestro equipo? 4 maneras sencillas desde nuestra consola

Detallamos 4 Comandos para verificar la memoria RAM instalada en nuestra PC, simple desde nuestra consola.

1) Con vmstat obtenemos un resumen de nuestra ram, detalla la cantidad el uso y mucha más información

# vmstat -s
      8149780 K memoria total
      2804540 K memoria usada
      3315720 K memoria activa
      1860160 K memoria inactiva
      2641200 K memoria libre
       137952 K memoria de búfer
      2566088 K caché de intercambio
      4999164 K total de intercambio
            0 K intercambio usado
      4999164 K intercambio libre
       354930 tics de CPU de usuario no-«nice»
         1352 tics de CPU del usuario «nice»
       108402 tics de CPU del sistema
      4946231 tics de CPU de inactividad
         4129 tics de CPU de espera E/S
            0 tics de CPU de IRQ
        12378 tics de CPU de softirq
            0 tics de CPU robados
      1747322 páginas en entrada
      1934465 páginas en salida
            0 páginas intercambiadas
            0 páginas cambiadas
     16600528 interrupciones
     43502133 cambios de contexto de CPU
   1565032161 tiempo de arranque
        10249 bifurcaciones

2) TOP, con el comando TOP podemos también verificar la cantidad de RAM que posee nuestro equipo

# top

top - 18:07:23 up  1:58,  1 user,  load average: 0,19, 0,37, 0,54
Tareas: 251 total,   2 ejecutar,  181 hibernar,    0 detener,    0 zombie
%Cpu(s):  2,4 usuario,  1,2 sist,  0,0 adecuado, 96,3 inact,  0,0 en espera,  0,0 hardw int,  0,1 softw int,  0,0 robar tiempo
KiB Mem :  8149780 total,  2600096 libre,  2839576 usado,  2710108 búfer/caché
KiB Intercambio:  4999164 total,  4999164 libre,        0 usado.  5002212 dispon Mem

3) Verificando el archivo /proc/meminfo. Meminfo es un archivo de sistema que nos detalla toda la información de nuestra RAM

# cat /proc/meminfo |grep MemTotal
MemTotal:        8149780 kB

4) Con el comando free, el comando free también nos brinda información de nuestra RAM y SWAP.

# free -g
              total usado libre compartido búfer/caché disponible
Memoria:           7           2           2           0           2           4
Swap:             4           0           4

by Mauro at August 05, 2019 09:18 PM

Algoritmos y programación en Pascal

Título: Algoritmos y programación en Pascal
Páginas: 557 Páginas
Tamaño: 6.5 MB
Fomato: PDF

Contenido:

Este libro trata sobre métodos de resolución de problemas mediante el desarrollo de algoritmos y estructuras de datos, desde el principio y paso a paso, y su materialización en programas de computador.

Desde luego, no es el primer libro sobre este tema; de hecho, ha habido en los últimos quince años un gran aluvión de textos sobre algoritmos y sobre programación. La razón para ello ha sido sin lugar a dudas doble: por un lado, la difusión que estos temas han tenido y siguen teniendo, integrándose en los estudios más diversos; por otro, la evolución que está experimentando el desarrollo de algoritmos y programas, pasando de ser un arte (reinventado por cada programador a base de técnicas personales, estrechamente vinculadas con su lenguaje de programación) a una actividad más científica, metodológica y disciplinada.

Fuente: Openlibra

by Mauro at August 05, 2019 02:52 PM

Cambiando privilegios o permisos de un Usuario sobre una base de datos Mysql

Me encontré con un problemita en el que se me requería asignar/modificar permisos a un usuario ya creado en Mysql, esto mediante SSH. Existe una manera sencilla de hacerlo:

1) Conectamos al servidor de mysql

# mysql -uroot -p'CONTRASEÑA'

2) Listamos los usuarios

mysql> select user,password,host from mysql.user;

3) Verificamos que permisos tiene el usuario y luego Sigue limpiar los atributos o permisos que tiene dicho usuario

mysql> show grants for ‘usuario’@‘127.0.0.1’;
mysql> revoke all privileges on database.* from ‘usuario’@‘127.0.0.1’;

4) Asignamos los nuevos privilegios de usuario

mysql> grant SELECT,INSERT,UPDATE,DELETE ON ‘database’.* TO ‘usuario’@‘127.0.0.1’;

5) Finalizamos el proceso haciendo un flush para que tome los cambios

mysql> flush privileges;

by Mauro at August 05, 2019 01:16 PM

August 04, 2019

RooTeando

Entrevista En Diferido 15: David Ochobits

Hoy empezamos una nueva entrevista con David, administrador de sistemas y creador del blog https://www.ochobitshacenunbyte.com/

Antes de todo, gracias por participar y apoyar este proyecto. La primera pregunta es una presentación por parte del entrevistado, para que los lectores te puedan conocer un poco.

Entrevista En Diferido: ¿Te podrías presentar en unas líneas?

 

David: Me llamo David y soy ante todo padre de familia antes que otra cosa. Luego vendría ...

August 04, 2019 10:28 PM

Tomando Un Café 62: Recomendaciones y vacaciones

Nuevo audio donde hablo sobre mis proyectos ,canales y podcast , mi experiencia con el canal de entrevista y boletin. También dire algunas recomendaciones de podcast y canales de Telegram descubiertos hace poco. 

Recomendaciones de podcast

Web Reactiva https://www.danielprimo.io/podcast

Ruta Dev   https://www.ivoox.com/ruta-dev_sq_f1691243_1.html

Canales de Telegram

Ulinks   https://t.me/ulinks

Historia en cápsulas  https://t.me/capsulahistoria

Entre Developers  https://t.me/joinchat ...

August 04, 2019 10:24 PM

August 02, 2019

soyadmin.com

Ya es posible actualizar Linux Mint 19.2 «Tina»

El Foro de Linux Mint publicó hoy la manera de actualizar correctamente desde Linux Mint 19 y 19.1 hacia la última versión 19.2 «Tina»

1- Crear un Snapshot usando Timeshift como lo mostramos aca, esto para y por las dudas, ante cualquier problema tendremos manera de corregir nuestro sistema ante cualquier tipo de errore.

2- Preparamos nuestro sistema:

  • Desactivar el protector de pantalla
  • Instalamos cualquier actualización pendiente desde el gestor de actualizaciones.

3- Actualizamos

Vamos al editor de actualizaciones, hacemos click en Editar – Actualizar a Linux Mint 19.2 «Tina»

Seguimos las instrucciones:

El proceso demora muy poco y en unos 5 minutos está finalizada. Tendremos nuestro sistema listo y funcionando con Linux Mint 19.2

En caso de que no les aparezca la actualización, verificar que no existan actualizaciones pendientes en el gestor de actualizaciones. Reiniciar el equipo y reintentar.

También puede pasar que no esté aun en los espejos utilizados, cambie a los espejos predeterminados y reintente.

Fuente: https://blog.linuxmint.com/?p=3792

by Mauro at August 02, 2019 11:34 PM

Windows Server 2008 no arranca «Aplicando configuración de usuarios», “Applying user settings” o “Aplicando la configuración del equipo”

Luego de aplicar actualizaciónes de Microsoft, trabajar sobre el IIS y alguna cosilla más, tuve que reiniciar el server completo. Este no volvía, no tenía conexión de Terminal Server, ni estaban operativas las web’s que este contenía, solo respondiendo el Ping.

Al tratarse de un server de testeos, pude llegarme hasta el y ver que el mismo estaba pidiendo loguin normalmente, lo cual me indicaba que había un problema de servicios.
Al loguearme el serviodor quedo con esta pantalla: “Applying user settings” o «Aplicando configuración de Usuario»

Sin saber bien cual era el motivo, lo primero era levantar los servicios y webs que teníamos alojados allí, lo logré haciendo esto:

1) Al ver que no iniciaba jamaz sesión, me toco reiniciarlo manualmente para esta vez ingresar por medio de F8 al "Modo Seguro"
2) Abrimos el regedit (Ejecutar - regedit)
3) Vamos hacia HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP y generamos el valor Multi-string: DependOnService
4) Damos doble click en la entrada creada y colocamos CRYPTSVC en Value Data para luego Acpetar.
5) Reiniciamos normalmente el servidor para ver que todo esta solucionado.

by Mauro at August 02, 2019 10:28 PM

Sincronizar la hora de Windows Server contra un servidor NPT

Un servidor NPT es según la Wikipedia: «Network Time Protocol (NTP) es un protocolo de Internet para sincronizar los relojes de los sistemas informáticos a través del enrutamiento de paquetes en redes con latencia variable. NTP utiliza UDP como su capa de transporte, usando el puerto 123. Está diseñado para resistir los efectos de la latencia variable.»

En este tuto veremos como configurar la hora de un Windows Server 2008 contra un servidor NPT Linux internamente, sin necesidad de salida mediante internet.
Esto es muy útil para sincronizar la hora de todos los servidores nuestra empresa sin depender de un servicio externo.

Los pasos son pocos y sencillos:

1) Debemos asegurarnos que el puerto 123 este abierto en nuestro firewall

2) Mandaremos las peticiones NPT como cliente hacia el servidor (0x8) usando el server con IP: 192.168.1.10 como server NPT. Accedemos al CMD y ejecutamos:

C:\Users\serverwin>w32tm /config /manualpeerlist:192.168.1.10,0x8 /syncfromflags:MANUAL

3) Reiniciamos el servicio w32tm:

C:\Users\serverwin>net stop w32time

The Windows Time service is stopping.
The Windows Time service was stopped successfully.

C:\Users\serverwin>net start w32time
The Windows Time service is starting.
The Windows Time service was started successfully.

4) Por último se sincroniza la hora:

C:\Users\serverwin>w32tm /resync
Sending resync command to local computer
The command completed successfully.

PD:CMD se ingresa mediante INICIO – EJECUTAR – cmd (aceptar)

by Mauro at August 02, 2019 12:42 PM

July 31, 2019

soyadmin.com

¿Que es SELinux?

«SELinux (del inglés Security-Enhanced Linux, Linux con Seguridad Mejorada) es una característica de seguridad de Linux que provee una variedad de políticas de seguridad, incluyendo controles de acceso del estilo de los del Departamento de Defensa de Estados Unidos, a través del uso de módulos de Seguridad en el núcleo Linux. No es una distribución de Linux, sino un conjunto de modificaciones que puede ser aplicado a un sistema tipo Unix como Linux y BSD.» Esto nos indica la wikipedia.

Llevándolo a un plano mas entendible, SELinux es un mecanismo de seguridad que se implementa directamente en el Kernel basado en MAC (Control de acceso mandatorio).

Las ACL (Listas de control de acceso) o el sistema de permisos actual, proveen acceso discrecional, esto hace que usuarios y programas puedan llegar a tener permisos inseguros o escalar acceso a partes del sistema críticas. Los sisadmin no tienen manera de controlar a estos usuario o programas.

SELinux vendría a tapar estos baches en la seguridad de los sistemas tipo Unix, utilizando privilegios mínimos, en modo enforcing, todo es denegado. Solo una serie de políticas son definidas para dar solo acceso requerido para que un servicio o programa o usuario pueda trabajar correctamente.
Si alguno de estos intenta acceder o modificar algun recurso que no necesita, denega el acceso y guarda un log.

Se recomienda no cometer el error de desactivar SELinux

by Mauro at July 31, 2019 02:29 PM

July 30, 2019

soyadmin.com

5 Herramientas de Monitoreo para Linux que no deben faltar

El sysadmin prueba y comprueba todas las herramientas que puedan ayudarle y facilitarle la vida a la hora de monitorizar servers. Existen muchas variedades y gustos, acá dejaré un listado de las principales herramientas de monitorización y por supuesto para mi las primordiales.

El Top

Top nos permite una mirada rápida y detallada de nuestro sistema, el mismo muestra en tiempo real un listado de los procesos que se estan ejecutando.
En su resumen nos muestra muchisima información al respecto de cada proceso, indicando el uso de CPU, RAM, tiempo de ejecución, etc.
Top es un comando especial y realmente indispensable, la herramienta de inicio para cualquier administrador de sistemas.

Mas info: Sacándole jugo al TOP

IOTOP para ver el uso de disco

Iotop es una herramienta de monitoreo que nos permite conocer la entrada y salida de disco (I/O), detallando en columnas  que procesos estan escribiendo o leyendo en nuestro disco, esto realizandolo en tiempo real.

Más Info: Iotop: Herramienta para Monitoreo del Uso de Disco en Linux

Monitoreo de redes con IFTOP

Iftop es una herramienta de monitoreo de red la cual nos permite ver la actividad de una interfaz de red, mostrando comunicaciones, transferencia ya sea de una IP o de toda la interfaz de red.
Esto es altamente útil para identificar problemas de rendimiento y nos provee una visión contínua y en tiempo real de nuestra conección, nos sirve para ver si nuestro server esta bajo algún tipo de ataque (DOS) o algún proceso consumiendo nuestra red.

Más info: Monitorizando nuestra red con IFTOP

NMON, toda una suite de monitorización

Nmon (Nigel’s Monitor) es un sistema de monitorización desarrollado para AIX, el cual fue adaptado y funcionalizado para que pueda ser utilizado en Linux, convirtiéndose en una herramienta casi indispensable para todo sysadmin.
Nmon nos permite mostrar en pantalla diferentes indicadores del estado de nuestro sistema, ya sea en tiempo real o bien guardando los datos en un archivo para luego ser mostrado en modo de graficación.

Más info: Nmon, un sistema de monitorización que no puede faltarte en Centos 6 y 7

HTOP, el hermano mayor del TOP

Htop, se ha vuelto para mi una herramienta indispensable a la hora de monitoreo de mis servidores CentOS, por supuesto bajo gestión de SSH.
Htop a la diferencia de los demás programas que ya mostramos aquí en el blog en otras oportunidades (como son ApacheTop, MyTop) nos muestra los procesos, indicando el usuario y la ruta de acceso. Un TOP, mejorado al máximo.

Más info: Htop, excelente herramienta para monitoreo de servidores.

by Mauro at July 30, 2019 02:38 PM

July 27, 2019

Tuxjm el sitio de jmedina

Bootstrap mega menu full width in your website

Bootstrap mega menu full width has been a popular keyword searched by a huge number of users since it fully meets their demand. On the one hand, a mega menu plays an important role in helping customers find out their expected products with ease. On the other hand, bootstrap is a well-known framework of TW which is accountable for making websites responsive.

Building a “ bootstrap mega menu full width ” is not a difficult task. To begin with, you should define which components will be included in your mega menu. It will be just a monotonic menu with dropdowns or an attractive one with stunning images making your website livelier. The menu content can also be trending or featured products, through which primary products are easy to be found. As a result, your sales and revenues go up dramatically. After having a detailed plan, you can start building up your ideal menu using html and css.

Bootstrap mega menu full width

One small thing that you should notice is that being experienced in html and cssis required to create a menu. If you do not have technical knowledge about this field, there is a suggested mega menu file at the end of this article for you to download.

If you are working with open source codes such as WordPress, Prestashop, Shopify, there will exist an available menu. For instance, in Prestashop system, if you use the default theme menu, bootstrap will be applied to make the menu responsive. Then you just need to drag and drop to add your menu items in the administration interface. Nevertheless, we all understand that the default functions are never enough to satisfy your wishes and creativity. That’s why you need a powerful tool, combining with just a mouse and a keyboard to complete a wonderful menu without any technical knowledge. If your thought is the same as mine, I am happy to share with you the plugin which I have tried using and really enjoy. It is Prestashop Mega Menu module. Notably, after installing this module, you are kindly supported by a support team if any issue incurs.

<code class=”html”><div class=”navbar navbar-default navbar-static-top”>
<div class=”container”>
<div class=”navbar-header”>
<button type=”button” class=”navbar-toggle” data-toggle=”collapse” data-target=”.navbar-collapse”>
<span class=”icon-bar”></span>
<span class=”icon-bar”></span>
<span class=”icon-bar”></span>
</button>
</div>
<div class=”navbar-collapse collapse”>
<ul class=”nav navbar-nav”>
<li><a href=”#”>Home</a></li>
<li class=”dropdown menu-large””>
<a href=”#” class=”dropdown-toggle” data-toggle=”dropdown”> Product Listing <b class=”caret”></b> </a>
<ul class=”dropdown-menu megamenu row”>
<li>
<div class=”col-sm-6 col-md-3″>
<a href=”#” class=”thumbnail”>
<img src=”http://placehold.it/150×120″ />
</a>
</div>
<div class=”col-sm-6 col-md-3″>
<a href=”#” class=”thumbnail”>
<img src=”http://placehold.it/150×120″ />
</a>
</div>
<div class=”col-sm-6 col-md-3″>
<a href=”#” class=”thumbnail”>
<img src=”http://placehold.it/150×120″ />
</a>
</div>
<div class=”col-sm-6 col-md-3″>
<a href=”#” class=”thumbnail”>
<img src=”http://placehold.it/150×120″ />
</a>
</div>
</li>
</ul>
</li>

<li class=”dropdown menu-large”>
<a href=”#” class=”dropdown-toggle” data-toggle=”dropdown”>Categories <b class=”caret”></b></a>
<ul class=”dropdown-menu megamenu row”>
<li class=”col-sm-3″>
<ul>
<li class=”dropdown-header”>Glyphicons</li>
<li><a href=”#”>Available glyphs</a></li>
<li class=”disabled”><a href=”#”>How to use</a></li>
<li><a href=”#”>Examples</a></li>
<li class=”divider”></li>
<li class=”dropdown-header”>Dropdowns</li>
<li><a href=”#”>Example</a></li>
<li><a href=”#”>Aligninment options</a></li>
<li><a href=”#”>Headers</a></li>
<li><a href=”#”>Disabled menu items</a></li>
</ul>
</li>
<li class=”col-sm-3″>
<ul>
<li class=”dropdown-header”>Button groups</li>
<li><a href=”#”>Basic example</a></li>
<li><a href=”#”>Button toolbar</a></li>
<li><a href=”#”>Sizing</a></li>
<li><a href=”#”>Nesting</a></li>
<li><a href=”#”>Vertical variation</a></li>
<li class=”divider”></li>
<li class=”dropdown-header”>Button dropdowns</li>
<li><a href=”#”>Single button dropdowns</a></li>
</ul>
</li>
<li class=”col-sm-3″>
<ul>
<li class=”dropdown-header”>Input groups</li>
<li><a href=”#”>Basic example</a></li>
<li><a href=”#”>Sizing</a></li>
<li><a href=”#”>Checkboxes and radio addons</a></li>
<li class=”divider”></li>
<li class=”dropdown-header”>Navs</li>
<li><a href=”#”>Tabs</a></li>
<li><a href=”#”>Pills</a></li>
<li><a href=”#”>Justified</a></li>
</ul>
</li>
<li class=”col-sm-3″>
<ul>
<li class=”dropdown-header”>Navbar</li>
<li><a href=”#”>Default navbar</a></li>
<li><a href=”#”>Buttons</a></li>
<li><a href=”#”>Text</a></li>
<li><a href=”#”>Non-nav links</a></li>
<li><a href=”#”>Component alignment</a></li>
<li><a href=”#”>Fixed to top</a></li>
<li><a href=”#”>Fixed to bottom</a></li>
<li><a href=”#”>Static top</a></li>
<li><a href=”#”>Inverted navbar</a></li>
</ul>
</li>
</ul>

</li>
</ul>
</div>
</div>
</div><

code css

.navbar-default{
color: #fff;
background-color: #232323;
border-color: #aca1a2;
}
.navbar-default .navbar-nav > li > a{
color:#fff;
}
.navbar-default .navbar-nav > .dropdown > a .caret{
border-top-color: #fff;
border-bottom-color: #fff;
}
.navbar-default .navbar-brand{
color:#fff;
}
.menu-large {
position: static !important;
}
.megamenu{
padding: 20px 0px;
width:100%;
}
.megamenu> li > ul {
padding: 0;
margin: 0;
}
.megamenu> li > ul > li {
list-style: none;
}
.megamenu> li > ul > li > a {
display: block;
padding: 3px 20px;
clear: both;
font-weight: normal;
line-height: 1.428571429;
color: #333333;
white-space: normal;
}
.megamenu> li ul > li > a:hover,
.megamenu> li ul > li > a:focus {
text-decoration: none;
color: #262626;
background-color: #f5f5f5;
}
.megamenu.disabled > a,
.megamenu.disabled > a:hover,
.megamenu.disabled > a:focus {
color: #999999;
}
.megamenu.disabled > a:hover,
.megamenu.disabled > a:focus {
text-decoration: none;
background-color: transparent;
background-image: none;
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
cursor: not-allowed;
}
.megamenu.dropdown-header {
color: #428bca;
font-size: 18px;
}
@media (max-width: 768px) {
.megamenu{
margin-left: 0 ;
margin-right: 0 ;
}
.megamenu> li {
margin-bottom: 30px;
}
.megamenu> li:last-child {
margin-bottom: 0;
}
.megamenu.dropdown-header {
padding: 3px 15px !important;

}
.navbar-nav .open .dropdown-menu .dropdown-header{
color:#fff;
}
}

code jquery

// Use this if wants to open menu on honver not click,
jQuery(document).ready(function(){
$(“.dropdown”).hover(
function() { $(‘.dropdown-menu’, this).stop().fadeIn(“slow”);
},
function() { $(‘.dropdown-menu’, this).stop().fadeOut(“slow”);
});
});

Come back to the task creating a mega menu using html, you need to download bootstrap to your device then unzip this file. Next, copy and paste the following code snippet to file menu.html. After that, you open and run file index.html on the browser such as Chrome or Firefox. You will receive the result like the screenshot above. If you would like to add bootstrap mega menu full width code snippet to your website, just open your project and insert the given code. Remember to back up your project before adding new code snippets because the added css may have effects on your website interface. Please share this article if it is helpful. If you have any suggestion or better tactics, please leave a comment so we can improve this article and the next ones in the future. Thanks for reading!

The post Bootstrap mega menu full width in your website appeared first on Tuxjm el sitio de jmedina.

by admin_tuxjm at July 27, 2019 04:01 AM

July 24, 2019

soyadmin.com

CONSTRUCCIÓN DE SOFTWARE JAVA CON PATRONES DE DISEÑO de Javier Martínez

Título: CONSTRUCCIÓN DE SOFTWARE JAVA CON PATRONES DE DISEÑO
Autor:
Javier Martínez
Páginas: 728 Páginas
Tamaño: 3 MB
Fomato: PDF

Contenido:

Se trata de una aplicación, que de un modo didáctico, sirva para la comprensión y utilización de patrones de diseño de forma clara y correcta en la construcción de software.

El proyecto está dividido en dos partes fundamentales:

– Una introducción teórica a los patrones de diseño.
– Ejemplos de aplicaciones utilizando patrones de diseño.

El desarrollo del proyecto consiste en la utilización de patrones de diseño en la realización de programas, con un fin didáctico, explicando detalladamente los patrones utilizados, así como la implementación de dichos ejemplos en uno de los últimos lenguajes de programación que han aparecido y que mayor futuro tienen, debido a sus numerosas ventajas, el lenguaje Java.

by Mauro at July 24, 2019 09:31 PM

RooTeando

Entrevista En Diferido 14: Top

Hoy empezamos una nueva entrevista con Top, integrantes de varios grupos de Telegram relacionado con redes, ámbito donde trabaja.

Antes de todo, gracias por participar y apoyar este proyecto. La primera pregunta es una  presentación por parte del entrevistado, para que los lectores te puedan conocer un poco.

Entrevista En Diferido: ¿Te podrías presentar en unas líneas?

 

Top:  Ese vecino hijoputa al que le suena el despertador a eso de las 5.30 ...

July 24, 2019 09:10 PM

July 23, 2019

soyadmin.com

Monitorizando nuestra red con IFTOP

Iftop es una herramienta de monitoreo de red la cual nos permite ver la actividad de una interfaz de red, mostrando comunicaciones, transferencia ya sea de una IP o de toda la interfaz de red.

Esto es altamente útil para identificar problemas de rendimiento y nos provee una visión contínua y en tiempo real de nuestra conección, nos sirve para ver si nuestro server esta bajo algún tipo de ataque (DOS) o algún proceso consumiendo nuestra red.

Vamos a instalarlo:
CentOS 6 y 7:
– Instalamos primero el respositorio EPEL como lo explicamos en este post

– Pasamos a la instalación del IFTOP

# yum install iftop

Como lo ejecutamos?

# iftop

Algunos parámetros de ejemplo para anexar al comando:

-h            Imprime un sumario del uso.
-n            No muestra el hostname.
-N            No muestra el número de puerto.
-p            Cuenta el tráfico que no pasa por la placa de red especificada
-P            Visualizar el puerto.
-b            Sin las barras de tráfico.
-m limit      Ajustar la escala del ancho de banda en K M o G (Kb, Mb, Gb)
-B            Mostrar el ancho de banda en bytes en lugar de bite/seg
-i eth0       Elegir la placa a monitorizar.

by Mauro at July 23, 2019 12:46 PM

July 12, 2019

soyadmin.com

Htop, excelente herramienta para monitoreo de servidores.

Htop, se ha vuelto para mi una herramienta indispensable a la hora de monitoreo de mis servidores CentOS, por supuesto bajo gestión de SSH.

Htop a la diferencia de los demás programas que ya mostramos aquí en el blog en otras oportunidades (NMON IOTOP) nos muestra los procesos, indicando el usuario y la ruta de acceso. Un TOP, mejorado al máximo.

Otra cosa que nos indica es el consumo de CPU, memoria RAM y Swap, todo esto Graficado en colores, mostrando el estado del mismo.

Htop nos permite:
* Ver el conumo de cada procesador del server
* Hacer scroll vertical y horizontal.
* Nos da soporte para colores.
* Matar un proceso sin introducir el número de éste, tan sólo situarte sobre él y con una tecla matarlo.
* Permite ordenar las columnas como deseemos, por consumo, por proceso, por ID, por usuario
* Saber en algunos casos que IP es la que esta tocando o usando un proceso.

COMO SE INSTALA EN CENTOS 6 Y 7

Para instalar HTOP en Centos, lo primero que haremos es instalar los repositorios EPEL, acá explicábamos como instalarlo

Una vez que tenemos los repositorios EPEL, instalaremos HTOP con este comando:

# yum install htop

Una vez finalizada la instalación lo ejecutamos con:

# htop

by Mauro at July 12, 2019 10:22 PM

July 11, 2019

soyadmin.com

Ver y utilizar Particiones/Discos de Linux en Windows

Los que utilizamos alguna vez Linux sabemos que montar un disco o partición Windows es cuestión de 1 o 2 clicks y esto estaba realizado. Ahora el proceso inverso, es decir poder ver un disco o partición linux en windows es algo medio engorroso de realizar.

Me toco resolver este problema durante la muerte de uno de mis discos, en el cual tenia una instalación completa y en uso de Ubuntu con años de imágenes y archivos que recuperar.

La pc que utilice para respaldar los discos tenia un Windows 7 recién instalado pero al meter el disco linux este ni se mosqueo en reconocerlo o siquiera verlo.

Las herramientas que me salvaron las papas son:

Explore2fs: Esta es una utilidad que no requiere instalación, de código abierto y gratuita. Solo pesa 1MB y es una buena ayuda al momento de detectar particiones o discos linux. A tenerla en cuenta.

DiskInternals Linux Reader: Esta otra utilidad también gratuita, excelente soft que al instante vio todas las particiones y todos los discos que le metí al pc, de igual manera me permitió realizar una copia de los archivos y de la información que quería permitiéndome navegar dentro del disco dañado.

by Mauro at July 11, 2019 02:09 PM

July 10, 2019

RooTeando

Entrevista En Diferido 13: Rafa Ontivero

Hoy empezamos una nueva entrevista con Rafa Ontiveros, desarrollador de C++ y creador del podcast Leña al mono que  es de goma.

Antes de todo, gracias por participar y apoyar este proyecto. La primera pregunta es una presentación por parte del entrevistado, para que los lectores te puedan conocer un poco.

Entrevista En Diferido: ¿Te podrías presentar en unas líneas?

 

Rafa:  Si tuviera que hacerlo a nivel profesional, diría que soy un desarrollador ...

July 10, 2019 12:14 AM

July 09, 2019

RooTeando

Nuevo proyecto , nueva newletters

He empezado un nuevo proyecto, que es un newletters o boletín cuyo nombre es Escribiendo con un Café, ya lleva cuatro boletines.

  • Boletín 01: Empezamos un nuevo proyecto.
  • Boletín 02: Como Aprender y enseñar.
  • Boletín 03: Datos, datos, quiero mas datos.
  • Boletín 04: Quiero jugar en Linux ¿Se puede?.

Si te interesa suscribirte a Escribiendo con un Café.

 

July 09, 2019 11:33 PM

July 05, 2019

pablo.sarubbi.com.ar

Monitorear temperatura y humedad con Zabbix, Arduino y sensor DHT22

Seguimos experimentando el monitoreo de temperatura y humedad con el Arduino Uno y un sensor DHT22, ahora con unas modificaciones para que los datos los tome un Servidor o proxy Zabbix. Para ello fue necesario implementar un agente que escuche el puerto 10050 e interprete el protocolo que Zabbix entiende.

Según la documentación de la versión 3.4 se compone de un de 5 bytes, un de 8 bytes donde se establece el tamaño del comando o mensaje, y los datos en cuestión.

https://www.zabbix.com/documentation/3.4/manual/appendix/protocols/header_datalen

Las primeras líneas de nuestro código contienen el llamado a librerías conocidas por los proyectos anteriores, como son Ethernet.h y DHT.h, y la definición de las constantes, variables y parámetros que utilizaremos luego.

En la sección setup inicializamos sensor y servidor

y dentro del loop nos resta implementar las dos tareas que se ejecutan continuamente:
Por un lado leer el sensor (cada 3 segundos) y almacenar el valor en las variables humidity y temperature.
Y por otro lado, esperar un comando Zabbix, interpretarlo, y responder con el valor correspondiente.

La lectura del sensor ya la desarrollamos en anteriores, de la siguiente manera:

Para resolver la comunicación entre los agentes, esperamos un comando en formato Zabbix que ya sabemos estará formado por un byte 0x01, 8 bytes con el tamaño del comando, y finalmente el comando en sí.

Los comandos que vamos a identificar son los siguientes:

  • agent.ping
  • agent.hostname
  • agent.version
  • dht.temperature
  • dht.humidity

Las respuestas que implementaremos serán enviadas mediante la función zbx_print() que adaptará el mensaje al protocolo ya definido.

Podemos descargar la última versión del código completo publicado en Gitlab

Para verificar que los comandos funcionan correcamente podemos utilizar el comando zabbix_get

Los templates necesarios para que el Zabbix incorpore estos comandos se pueden descargar de los siguientes enlaces:

Monitoreo de últimos datos recibidos en Zabbix Server

Y agregamos un link para descarga del dashboard de Grafana que se observa en la siguiente imagen para mostrar los datos de mejor manera.

Dashboard de Grafana con origen de datos de Zabbix

by pablo at July 05, 2019 04:37 PM

July 04, 2019

soyadmin.com

Bloquear Rangos de IP, mediante CSF e IPTABLES

Existen varias maneras de bloquear o restringir acceso a nuestros servidores: ya sea bloqueando Ip’s, MACADDRESS de PC’s, o bien cerrando algunos puertos que no son necesarios.

Un procedimiento más en la securización o protección de nuestros servidores, es bloquear un rango de IP específico. Esto nos beneficia y ayuda a que en caso de tener un problema con algún crawler (buscador) o con atacantes chinos (proxies, etc) cortemos cualquier contacto o posibilidad de acción bloqueando todo el rango de IP.

Esta acción solo se lo pondrá un poco más difícil, dado que es medio imposible estar al 100% resguardado de dichos pequeños ataques.

[Tue Dec 03 18:47:52 2018] [error] [client 15.210.83.67] Script timed out before returning headers: index.php
[Tue Dec 03 18:47:52 2018] [error] [client 15.210.83.25] Script timed out before returning headers: index.php
[Tue Dec 03 18:47:52 2018] [error] [client 15.210.83.67] Script timed out before returning headers: index.php
[Tue Dec 03 18:47:52 2018] [error] [client 15.210.83.98] Script timed out before returning headers: index.php
[Tue Dec 03 18:47:53 2018] [error] [client 15.210.83.104] Script timed out before returning headers: index.php
[Tue Dec 03 18:47:55 2018] [error] [client 15.210.83.46] Script timed out before returning headers: index.php
[Tue Dec 03 18:47:56 2018] [error] [client 15.210.83.98] Script timed out before returning headers: index.php
[Tue Dec 03 18:47:56 2018] [error] [client 15.210.83.98] Script timed out before returning headers: index.php
[Tue Dec 03 18:47:56 2018] [error] [client 15.210.83.75] Script timed out before returning headers: index.php
[Tue Dec 03 18:47:56 2018] [error] [client 15.210.83.48] Script timed out before returning headers: index.php

Como vemos en este resumen, el rango de IP 15.210.83.x está teniendo una actividad sospechosa, lo cual luego de corroborar de que la ip es de un continente que no nos interesa que este urgando en el server, nos decidimos a bloquear el rango completo 15.210.83.–

Ahora pasaré a explicar como bloquear, utilizando IPTABLES y CSF

- Bloquear el primer rango sólamente
15.210.83.0/24 255 ips bloqueados
- Bloquear los dos primeros rangos
15.210.0.0/16 65536 ips bloqueados (corresponden al primer y segundo rango)
- Bloquear los tres primeros rangos
15.0.0.0/8 16777216 ips serían bloqueados (corresponden al primer rango, segundo rango y tercer rango

Para bloquear un rango deseado lo hacemos por ssh:

# iptables -A INPUT -s 15.210.83.0/24 -j DROP

by Mauro at July 04, 2019 03:19 PM

July 03, 2019

Ruben J Garcia

Step function to iterate S3

In this post I’m going to show you how to use a step function to iterate S3 buckets

AWS Step functions is a product that helps you coordinate multiple AWS services into serverless workflows

You can start an execution of a step function from AWS Cloudwatch Rules, AWS Lambda or AWS API Gateway for example

If you want to know more about Step functions check the AWS Documentation because this post only shows this use case

Step function to iterate S3 use case

Imagine that you have a S3 bucket and you want to do a job with Step Functions iterating over all the objects in the bucket. There is no iterate function in a step function workflow so you have to do it on your own

Populating the S3 bucket

We are going to create 20 empty files to upload them to S3. If you’re using a Unix like operating system you can use touch obj{1..20} to create the files

Now create a S3 bucket and upload all the files

Creating the State Machine

It’s time to create the State Machine in AWS Step Functions. Give it a name like IterateS3 for example. For now, we are going to keep the default definition

It’s time to create a new role for this State Machine. Give it a name, IterateS3Permissions for example and it will be created with the default NoPermissionsAccessPolicy

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Deny",
            "Action": "*",
            "Resource": "*"
        }
    ]
}

Your State machine is created. You can start an execution if you want but it won’t do nothing

Creating the Lambda Function

We have to create the Lambda function that do the real job, so let’s get started

Create a Lambda function from scratch. Give it the name IterateS3Function for example and choose Node.js 10.x runtime. Create a new execution role with basic Lambda permissions for the function. This is the function that the step function is going to use to iterate s3

We need to change the Lambda function role to give it permissions to list the bucket so we will add the next policy

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "1",
            "Effect": "Allow",
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::your-bucket-name"
        }
    ]
}

Now we can create the code that iterates the S3 bucket in the Lambda function

const AWS = require('aws-sdk')
const s3 = new AWS.S3()

exports.handler = async (event) => {
    const response = await s3.listObjectsV2({
        Bucket: process.env.S3_BUCKET,
        MaxKeys: process.env.MAX_KEYS,
        ContinuationToken: event.NextContinuationToken || null
    }).promise()
    return {
        Files: response.Contents,
        NextContinuationToken: response.NextContinuationToken || ""
    }
};

In lines from 5 to 9, we invoke the GET Bucket (List Objects) Version 2 method from the AWS API. This method returns all the objects in a bucket

You must set an environment variable called S3_BUCKET with your actual bucket name and another environment variable called MAX_KEYS with the maximum number of keys returned by the API Method

As you can see, we are returning the Files and the NextContinuationToken. The NextContinuationToken is an id used by AWS to know how to continue the iteration process of an API call

Updating the State Machine

We have the Lambda function but we need the Step Function. Let’s change the State machine definition as follows

{
    "StartAt": "Configure",
    "States": {
        "Configure": {
            "Type": "Pass",
            "Result": {
                "NextContinuationToken": ""
            },
            "ResultPath": "$.iterator",
            "Next": "Iterator"
        },
        "Iterator": {
            "Type": "Task",
            "Resource": "your-iterator-lambda-function-arn",
            "Parameters": {
                "NextContinuationToken.$": "$.iterator.NextContinuationToken"
            },
            "ResultPath": "$.iterator",
            "Next": "DoYourThing"
        },
        "DoYourThing": {
            "Type": "Task",
            "Resource": "your-lambda-function-to-get-your-thing-with-files-arn",
            "Next": "HasNextElements"
        },
        "HasNextElements": {
            "Type": "Choice",
            "Choices": [
                {
                    "Not": {
                        "Variable": "$.iterator.NextContinuationToken",
                        "StringEquals": ""
                    },
                    "Next": "Iterator"
                }
            ],
            "Default": "Done"
        },
        "Done": {
            "Type": "Pass",
            "End": true
        }
    }
}

In the State machine definition, we have the Configure task where we set the initial variables. Then we have the Iterator task which is responsible for invoking the lambda function to iterate the S3 bucket

The DoYourThing task is where your actual job is done with the files. Don’t forget to return the iterator object after you do your job, at least, the NextContinuationToken property or the next taks won’t work

The HasNextElements task evaluates the NextContinuationToken property and if it has a value it will return to the Iterator task. Otherwise, it will finish

We need to change the IAM Role of the State machine to give it permissions to execute the Lambda function. So, let’s do it removing the NoPermissionsAccessPolicy and adding a new one

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "1",
            "Effect": "Allow",
            "Action": "lambda:InvokeFunction",
            "Resource": "your-lambda-function-arn"
        }
    ]
}

Now you can execute your State machine and iterate through your S3 bucket

Conclusion

In conclusion, we can use this code to create loops inside a state machine. Anyway, AWS is always updating its services so let’s hope that they create a Loop Task or something like that

You can see another example of a Loop iteration in the official documentation

The post Step function to iterate S3 appeared first on Ruben J Garcia.

by Ruben Garcia at July 03, 2019 09:45 AM

debianhackers.net

Tres lecciones que aprender del caso Huawei

Creo que a estas alturas nadie es ajeno al caso Huawei. Es un ejemplo tan bueno de porqué debemos utilizar software libre que me voy a permitir reproducir aquí, en castellano, las tres lecciones que podemos aprender de todo esto según la FSFE (el original es de la Newsletter Digest de la FSFE, Vol 98, Issue 1).

  1. El software libre permite controlar la tecnología: cuanto más importante es la tecnología en nuestras vidas, más importante se torna el uso de software libre.
  • La Unión Europea confía en exceso en proveedores extranjeros de tecnología: la Unión Europea y sus estados miembros deberían invertir en el desarrollo de software libre y enfocarse en apoyar organizaciones y negocios locales que fomentan el uso de software libre.

  • El software libre otorga independencia económica a las empresas: la empresa que utiliza software propietario depende del proveedor de software y por tanto del gobierno del país que lo regula. La mejor estrategia para evitar esta dependencia es utilizar software libre en el mayor número de puntos de la cadena de suministro.

  • Podéis leer más aquí.

    by Debish at July 03, 2019 06:39 AM

    July 02, 2019

    soyadmin.com

    Como abrir o cerrar puertos utilizando Iptables

    Copadísimo estoy con iptables!!!!

    Hace unos días explicábamos la manera de verificar que puertos estaban abiertos, en uso y de que manera identificar aquellos puertos que nos resultaban sospechosos o que estaban abiertos sin necesidad.

    Ahora explicaré como abrir o cerrar un puerto específico utilizando las reglas de iptables.

    Abrir:
    # iptables -A INUPT -p tcp –dport -j ACCEPT
    # iptables -A INUPT -p udp –dport -j ACCEPT
    Cerrar:
    # iptables -A INUPT -p tcp –dport -j DROP
    # iptables -A INUPT -p udp –dport -j DROP

    Un ejemplo:

    # iptables -I INPUT -p tcp --dport 25 -j DROP

    La lectura es sencilla, se bloquea/cierra toda el tráfico hacia el puerto 25

    Recordar por último guardar y reiniciar IPtables

    service iptables save
    service iptables restart

    by Mauro at July 02, 2019 02:50 PM

    July 01, 2019

    soyadmin.com

    Bloquear/debloquear una Mac Address usando IPtables

    En este tuto veremos de que manera podemos bloquear o dejar paso a una Mac Addres.

    Bloqueando una MAC nos aseguramos que un equipo pueda o no tener acceso a nuestro servidor, por más que cambie la IP. Si bien hay métodos de clonar o cambiar la MAC es un proceso más dificil que cambiar una IP.

    Como Bloquear?

    # iptables -A INPUT -m mac --mac-source <mac address> -j DROP
    Ejemplo: # iptables -A INPUT -m mac --mac-source 00:00:00:00:00:00 -j DROP

    Como desbloqueamos una MAC?

    Para eliminar la regla que bloquea dicha mac lo primero que tenemos que hacer es identificar el número de línea de la regla de bloqueo y eliminarla.

    # iptables -L INPUT -n --line-numbers

    Esto nos devuelve algo parecido a:

    Chain INPUT (policy DROP)
    num  target     prot  opt source               destination
    1    acctboth      all  --  0.0.0.0/0            0.0.0.0/0
    2    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:53
    3    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:53
    4    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp spt:53
    5    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp spt:53
    5    DROP          all  --  0.0.0.0/0            0.0.0.0/0           MAC 00:00:00:00:00:00

    Aquí se verifica que la linea de la regla que bloquea la Mac Addres es la número 6, entonces para eliminarla, directamente ponemos:

    # iptables -D INPUT <<número de linea>>
    Ejemplo: # iptables -D INPUT 6

    by Mauro at July 01, 2019 10:52 PM

    Como bloquear IPS, 2 métodos – CSF Firewall y IPtables

    Existen varios métodos para bloquear IP, depende de lo que deseemos realizar y que aplicaciones tengamos instaladas en el servidor (firewall)

    Lo primero que haremos será explicar como hacerlo con el método tradicional mediante Iptables.

    Bloquear IP:
    # iptables -I INPUT -s 0.0.0.0 -j DROP
    
    Desbloquear una IP:
    # iptables -I INPUT -s 0.0.0.0 -j ACCEPT

    Luego para aquellos que utilizamos CSF como firewall, tenemos otro método de bloqueo y desbloqueo, el cual se realiza mediante estos comandos.

    Bloquear IP:
    # csf -d 0.0.0.0
    
    Desbloquear una IP:
    # csf -dr 0.0.0.0
    
    Listar IP's bloqueadas o en lista blanca:
    #  csf -g 0.0.0.0

    by Mauro at July 01, 2019 01:22 PM

    June 28, 2019

    RooTeando

    Diario de Aprendizaje 3: Aprender o recordar un conocimiento

    Retomamos los diarios de aprendizaje, en este audio hablo como retomar un conocimientos que llevas tiempo sin paracticarlo. ¿Necesitas aprenderlo o recordarlo?

     

    Boletín Escribiendo con un café
    Si te interesa suscribirte al boletín https://buttondown.email/jajt

    Si quieres apoyarme  de forma económica para mis podcast y canales, puedes realizarlo de diferentes formas:
    PayPal   https://paypal.me/JoseAJimenez
    Programa afiliado de Amazon  https://amzn.to/2Myjet8 , si compras a través de ese ...

    June 28, 2019 11:39 PM

    June 26, 2019

    RooTeando

    Entrevista En Diferido 12: Marco Bellido

    Hoy comenzamos una entrevista a Marco Bellido desarrollador PHP y JavaScript.

    Antes de todo, gracias por participar y apoyar este proyecto. La primera pregunta es una presentación por parte del entrevistado, para que los lectores te puedan conocer un poco.

    Entrevista En Diferido: ¿Te podrías presentar en unas líneas?

     

    Marco Bellido:  ¡Hola! Bueno, lo primero de todo me gustaría agradecerte la invitación a estas entrevistas. Creo que haces un gran trabajo de divulgación ...

    June 26, 2019 09:22 PM

    soyadmin.com

    SOLUCIÓN A: W: Error de GPG: http://ppa….. al intentar actualizar Debian, Ubuntu y derivados

    Durante una actualización manual de mi Xubuntu 18.10 me devolvieron algunos errores de GPG los cuales trataremos de solucionar en este post. El problema es que la actualización del sistema no seguirá hasta que reparemos estos inconvenientes.

    Vamos a reproducir el error:
    – Actualizamos:

    sudo apt-get update

    El error que devuelve es, por ejemplo:

    W: Error de GPG: http://ppa.launchpad.net precise Release: Las firmas siguientes no se pudieron verificar porque su llave pública no está disponible: NO_PUBKEY 1F3045A5DF7587C3

    En este caso el error está en la clave 1F3045A5DF7587C3. El error se da porque se intenta autenticar las firmas de los repositorios y las mismas están desactualizadas contra el PPA.

    Para solucionarlo tenemos 2 métodos:
    1) Con nuestra querida Terminal:

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1F3045A5DF7587C3

    Lo que hace este comando es consultar a un servidor seguro de Ubuntu y actualizar la clave pública del repositorio con una válida.
    Esto lo tendremos que hacer con cada clave que salte cuando intentemos actualizar, reemplazando 1F3045A5DF7587C3 por la siguiente.

    2) Método Gráfico con Y-PPA-MANAGER:
    Y-PPA-MANAGER es un gestor de repositorios, el cual entre otras funciones, nos permitirá actualizar las claves de repositorios que poseemos.
    – Instalamos Y-PPA-MANAGER

    sudo add-apt-repository ppa:webupd8team/y-ppa-manager
    sudo apt-get update
    sudo apt-get install y-ppa-manager

    Luego ejecutamos el programa y vamos a Advanced y luego a Try to import all GPG keys.

    Tendremos que esperar a que el proceso termine, puede demorar más de 2 o 3 minutos en completarse, quedando todas nuestras claves actualizadas correctamente.

    by Mauro at June 26, 2019 04:00 PM

    June 22, 2019

    RooTeando

    Tomando Un Café 61: Salud y futuro de Telegram

    Nuevo audio donde hablo sobre la salud y futuro de Telegram, una pequeña reflexión sobre Telegram

    Música: Podingtoon Bear- Piano I: Surface Tension 2

    Boletín Escribiendo con un café
    Si te interesa suscribirte al boletín https://buttondown.email/jajt

    Si quieres apoyarme  de forma económica para mis podcast y canales, puedes realizarlo de diferentes formas:
    PayPal   https://paypal.me/JoseAJimenez
    Programa afiliado de Amazon  https://amzn.to/2Myjet8 , si compras a través de ...

    June 22, 2019 10:57 PM

    June 19, 2019

    soyadmin.com

    EL LIBRO DEL ADMINISTRADOR DEBIAN de Rafael Hertzog

    Título: EL LIBRO DEL ADMINISTRADOR DEBIAN
    Autor:
    Rafael Hertzog / Roland Mas
    Páginas: 540 Páginas
    Tamaño: 29 MB
    Fomato: PDF

    Contenido:

    Este libro provee los conceptos y principios fundamentales necesarios para administrar un sistema GNU/Linux. Los conceptos y las tareas de administración pueden ser un poco amplios. Se le dará una explicación del rol del administrador, estructura y función detallada del kernel, y cubriremos tópicos administrativos claves del manejo de paquetes, procesos, espacio de disco, Backups y los usuarios así como las tareas programáticas, y los Logs/Registros del sistema. Este conjunto de herramientas te permitirán apropiadamente administrar un sistema GNU/Linux sea este de unos cuantos hasta miles de usuarios. Estos capítulos también te proveerán la información que necesitas para Certificarte.

    Cada vez más profesionales están adoptando Debian GNU/Linux, cuya finalidad de crear una distribución rica y flexible que no precise demasiado mantenimiento satisface sus expectativas. Por lo general, aprecian su robustez y su confiabilidad, su automatización de tareas secundarias, así como también la coherencia que proporciona la estricta aplicación de especificaciones y por lo tanto la durabilidad de sus logros y habilidades.

    Al mismo tiempo, muchas personalidades influyentes de la industria de la informática acaban de comprender el interés estratégico que supone la utilización de una distribución elaborada que no es gestionada por entidades comerciales. Algunos de sus clientes además comprenden — siguiendo la misma lógica — que una plataforma de software que no depende de acuerdos entre proveedores reduce las obligaciones que tendrán tras la compra.

    El Libro del administrador de Debian lo acompañará a lo largo de su propio camino a la autonomía. Solo podría haber sido escrito por autores que combinan tanto los aspectos técnicos como el funcionamiento interno del proyecto Debian y que conocen las necesidades de los profesionales como también de los entusiastas. Raphaël Hertzog y Roland Mas poseían las cualidades necesarias y lograron crear y actualizar este libro. Yo les agradezco mucho su trabajo y no tengo ninguna duda que leer este libro será tan útil como agradable.

    Fundamentos de GNU/Linux proporciona una introducción a profundidad de los conceptos y de los principios que son necesarios para instalar un sistema GNU/Linux y desenvolverse en los ambientes de ventana del X y de la línea de comandos. Este manual da la dirección paso a paso para las distribuciones importantes de GNU/Linux y su instalación, incluyendo RedHat, Debian, Mandrake y Slackware. Se enfatizan los conceptos de instalación, las utilidades, y la funcionalidad de GNU/Linux común a todas las distribuciones y estas se explican en detalle adicional. Un principiante o un experto pueden aprender o repasar los conceptos de particionar discos y localizar los archivos de configuración, usando el shell y las consolas, crear los scripts, y editar archivos de texto que permanecen dominantes, sin importar la nuevas herramientas gráficas, para los ajustes de configuración. Este conjunto de tópicos permitirá que usted instale y configure correctamente un sistema GNU/Linux. En estos capítulos también se le provee la información necesaria para certificar sus habilidades en GNU/Linux.

    by Mauro at June 19, 2019 01:47 PM

    June 17, 2019

    RooTeando

    Tomando Un Café 60: Nuevo proyecto, comentarios en Telegram y Google drive en Dolphin.

    Nuevo audio donde hablo de mi nuevo un proyecto, un boletín llamado Escribiendo con un café, la nueva funcionalidad de Telegram que permite incluir comentarios en un canal y como utilizar una cuenta de Google drive con Dolphin.

    Google drive en Dolphin
    https://community.kde.org/KIO_GDrive
    Paquetes necesarios kaccounts-providers ktp-accounts-kcm

    Música: Podingtoon Bear- Piano I: Surface Tension 2

    Boletín Escribiendo con un café
    Si te interesa suscribirte al boletín https://buttondown.email/jajt

    Si ...

    June 17, 2019 09:40 AM