Planeta Sysadmin

de sysadmins para sysadmins

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 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

    June 12, 2019

    joseangelfernandez.es

    BIG COMPUTE 6 – El héroe para nuestros problemas de computación masiva

    Un año más se ha celebrado en Madrid una nueva edición del Global Azure Bootcamp. Este año el reto científico ha estado auspiciado por el Instituto de Astrofísica de Canarias (IAC). El objetivo era “examinar los datos de la misión TESS (“Transiting Exoplanet Survey Satellite”), que fue lanzada en 2018 para la búsqueda de exoplanetas alrededor de las estrellas. El satélite está continuamente obteniendo imágenes de las estrellas con el único objetivo de buscar cambios en la intensidad de luz al pasar los planetas por delante de las mismas”

    A día de hoy se llevan analizadas 18.825.867 de muestras, un equivalente a 1.254.089 horas de computación ejecutadas sobre más de 17.000 cores. Desde España se aportó el granito de arena siendo los terceros a nivel mundial en el ranking por países. Los resultados fueron prometedores, al menos dos posibles exoplanetas fueron detectados, actualmente siguen investigando los resultados.

    Como en otras ocasiones, Iria y yo nos animamos a presentar una sesión. Este año la temática ha estado relacionado con la computación masiva y cómo Azure es una plataforma ideal para vuestras necesidades de HPC o Big Compute.

    Si te la perdisteis, ya la tienes disponible para verla bajo demanda.

    Big Compute 6 – El héroe para nuestros problemas de computación masiva

    by jafernandez at June 12, 2019 07:12 PM

    El coste del ancho de banda en Azure, un pequeño desconocido

    El otro día, en una conversación interna, saltaron unas cuántas dudas de qué tráfico se cobraba o no en Azure según el origen, el destino y el tipo de conectividad de la que se disponía. Inicialmente pensé que era algo que tenía bastante claro pero tras ver el resumen que hizo mi compañero José Guardia (@msjosegm) creo que tiene mucho más detrás de lo que inicialmente pensaba.

    A continuación, tenéis un listado de todos los puntos que tenéis que tener en cuenta cuando tengáis que realizar una estimación de los costes de ancho de banda en Azure:

    • Tráfico que sea de ingreso a Azure desde Internet, una conexión VPN, una conexión ExpressRoute u otro servicio de Azure: gratuito.
    • Tráfico que sea entre recursos conectados dentro de la misma red virtual: gratuito
    • Tráfico que fluya entre un VNet Peering ya sea regional o entre diferentes regiones: tiene coste tanto de salida como de entrada.
    • Tráfico que sea saliente de la red virtual hacia Internet: tiene coste de salida
    • Tráfico que sea saliente de la red virtual hacia una IP pública de la misma región de Azure: gratuito
    • Tráfico que sea saliente de la red virtual hacia una IP pública de otra región de Azure: tiene coste de salida
    • Tráfico que sea saliente de la red virtual a través de una conexión VPN: tiene coste de salida
    • Tráfico que sea saliente de la red virtual a través de una conexión de ExpressRoute en su categoría metered: tiene coste de salida
    • Tráfico que sea saliente de la red virtual a través de una conexión de ExpressRoute en su categoría unmetered: gratuito
    • Tráfico entre servicios de Azure dentro de la misma región: gratuito
    • Tráfico entre servicios de Azure en diferentes regiones: tiene coste de salida
    • Tráfico entre servicios de Azure desplegados en Availability Zone en una red virtual: dentro de la misma AZ es gratuito pero entre AZ tiene coste de entrada y salida.

    Como veis, no tan sencillo como inicialmente parecía. Si seguía la máxima de todo lo entrante es gratuito y solo se factura lo saliente, recordad las excepciones a la regla que en este caso son varias.

    by jafernandez at June 12, 2019 06:58 PM

    soyadmin.com

    SSH: Listar archivos modificados en las últimas 24hs

    Para ver que archivos fueron modificados en las últimas 24 hs, ya sea a modo de seguridad, para verificar que archivos se «tocaron» en cierto momento o para segurizar algun proceso, existe el comando find y su subcategoría «-mtime»

    Buscando en el manual de find veremos:

    # man find
    -mtime n    File's data was last modified n*24 hours ago.  See the comments for -atime to understand how rounding affects the interpretation of file modification times.

    Entonces por ejemplo deseamos buscar dentro de un directorio llamado «admin» y que nos liste solo los archivos modificados en las últimas 25 hs,concatenando el find + mtime podemos hacerlo:

    # find /admin -type f -mtime -1

    Acá buscamos en el directorio «admin» solo los archivos (-type f) y que fueron modificados dentro de las 24hs (-mtime -1).

    by Mauro at June 12, 2019 01:56 PM

    June 11, 2019

    soyadmin.com

    Nmon, un sistema de monitorización que no puede faltarte en Centos 6 y 7

    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.

    Nmon nos trae y recaba estos datos:

        Uso de CPU
        Uso de memoria
        Estadísticas del kernel y de la cola de ejecución de procesos
        I/O, transferencias, y tasas de lectura/escritura de los discos
        Espacio libre en file systems
        I/O, transferencias, y tasas de lectura/escritura de las interfaces de red
        Paginado de memoria
        Network File System (NFS)

    INSTALACIÓN:

    Lo primero que hay que hacer es instalar el Repositorio EPEL, tal como lo explicamos AQUÍ.

    Si ya contamos con EPEL o lo instalamos, procedemos a instalar NMON

    # yum install nmon

    COMO SE USA:

    # nmon

    Acá debemos elegir que deseamos monitorear tecleando:
    c = Muestra los detalles de los CPU físicos.
    r = Lista de recursos (Resources) del distema incluyendo la velocidad de los CPU en MHz.
    k = Muestra las estadísticas del Kernel y otros datos.
    l = muestra un histórico del performance del CPU en %.
    d = Muestra información de los discos en uso como son: tipo de discos, tamaño, espacio libre, grupos de volúmenes, adaptador, entre otros.
    n = Muestra información de las interfaces de red como MTU, errores, velocidad de transmisión o recepción, entre otros.
    m = Presenta el estado de la memoria, tanto de la memoria física como del swap o area de intercambio.
    j = Muestra detalles del o de los sistemas de archivos que se encuentren presentes.
    t = Muestra una lista de los procesos con mayor uso de recursos.

    by Mauro at June 11, 2019 02:47 PM

    June 10, 2019

    RooTeando

    Entrevista En Diferido 11: Samuel Blázquez

    Hoy comenzamos una entrevista a Samuel, del podcast Yo Virtualizador (https://www.ivoox.com/podcast-yovirtualizador_sq_f1563806_1.html), persona con conocimientos en múltiples áreas; Linux,Windows,redes,sistemas,servidores,hardware y mucho mas. Usuario de Linux y fan de Telegram.

    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 ...

    June 10, 2019 11:17 PM

    soyadmin.com

    Comandos básicos de Mysql vía SSH

    Chequear usuario y password de una base de datos:

    # mysql -u username -p

    Crear Base de Datos dentro del servidor de Mysql:

    # mysql
    mysql> create database [databasename];

    Listar Bases de Datos dentro del servidor de Mysql:

    # mysql
    mysql> show databases;

    Usar o seleccionar una Base de datos dentro del servidor de Mysql:

    # mysql
    mysql> use [database name];

    Listar las tablas:

    # mysql
    mysql> show tables;

    Eliminar una Base de datos:

    # mysql
    mysql> drop database [database name];

    Eliminar una Tabla:

    # mysql
    mysql> drop table [table name];

    Listar procesos:

    # mysql
    mysql> show processlist;

    by Mauro at June 10, 2019 11:40 AM

    June 07, 2019

    soyadmin.com

    Optimizando APACHE en CentOS, Rhel y Fedora

    En este post orientaremos sobre como tunear nuestro servidor Apache, intentando dejar claro que cosas tocar y que función cumplen.

    La idea NO es que sea utilizado como ejemplo (si bien dare algunos valores) sino más bien explicar cada item lo más humanamente posible para que podamos comprender y elegir la mejor configuración posible.

    Los tuneos de nuestros servidores es casi una tarea diaria y varía de cada servidor tenemos, dado que depende de muchísimos factores a tener en cuenta como pueden ser las características del servidor (CPU, RAM, HDD, etc), cantidad de sitios, tipo de sitios, etc.

    Todas las modificaciones las haremos en el archivo de configuración de Apache:

    # vi /usr/local/apache/conf/httpd.conf

    MaxClients: Número total de conexiones que atenderá a la vez el servidor. Este valor no debe ser mayor de 300, ni menor a 100, si es un valor muy alto y el servidor tiene un ataque podría hacerlo colapsar y si colocas un valor muy bajo tendrías clientes en espera, lo cual genera un cuello de botella, devolviendo errores debido a los Timeout.

    MinSpareServers y MaxSpareServers: Controlan (mediante un límite mínimo y máximo) cuantos procesos de apache estan en espera, es decir, son procesos de Apache activos pero a la espera de conexiones o peticiones. Al estar activos la respuesta es inmediata, pero estar en modo espera hace que se consuman recursos del server, por lo cual deberemos tener un buen tuneo de estos 2 valores.
    Los valores que se recomiendan son estos:
    MinSpareServers 5
    MaxSpareServers 10

    MaxRequestsPerChild: Controla cuantas peticiones atenderá un proceso de apache (llamado hijos), mientras que con MinSpareServers y MaxSpareServers controlábamos cuantos procesos hijo puede haber activos, con MaxRequestsPerChild controlaremos la cantidad de peticiones que atenderá cada uno antes de cerrar el proceso y refrescarlo con uno nuevo.
    El valor muy alto puede hacer que los procesos se cuelguen y queden ocupando recursos, pero también un valor muy bajo haría que constantemente se estén pidiendo procesos con el eventual consumo de recursos.
    Un valor que funciona muy bien es:
    MaxRequestsPerChild 1000

    KeepAlive y MaxKeepAliveRequests: keepalive hace que las sesiones http sean más largas y que permitan más peticiones de acceso desde la misma conexión. Si bien el keepalive hace que en algunos casos la mejora en respuesta de una web aumente en casi un 60% por otro lado tenemos un elevado consumo de recursos del servidor, haciendo que colapse o quede con problemas de estabildiad.
    MaxKeepAliveRequests nos dará el tiempo máximo, el cual no debe superar los 2 segundos.

    StartServers: Muestra la cantidad de procesos que se inician al arrancar el servidor.
    Este puede ser establecido dentro del mismo rango que el MinSpareServers y MaxSpareServers

    Timeout: Tiempo de espera de una conexión. Este valor nos dará el tiempo de respuesta máximo de una petición, desde el inicio hasta el refresco en el navegador.
    Los valores van desde 50 a 300, si los colocas muy bajo puede ser que tus clientes tengan una respuesta de timeout anticipada del navegador y si superas los 300 podrías tener problemas en horas pico donde las conexiones sean muchas.

    Esta sería una configuración potable:

    Timeout 30
    StartServers 5
    MinSpareServers 5
    MaxSpareServers 10
    ServerLimit 256
    MaxClients 150
    MaxRequestsPerChild 10000
    KeepAlive On
    KeepAliveTimeout 5
    MaxKeepAliveRequests 100

    IMPORTANTE: Estos valores dependen de cada servidor, y dependen de la cantidad de visitas o tráfico recibido.

    Una ves tuneados estos valores recuerden realizar un reinicio de nuestro servicio web:

    # service httpd restart

    by Mauro at June 07, 2019 12:44 PM

    June 06, 2019

    soyadmin.com

    ¿Cómo bloquear Países usando Config Server Firewall (CSF)?

    Brevemente les muestro como bloquear aquellos países de los que no nos interesa recibir visitas, esto hace que todo el tráfico proveniente de los países que decidamos ingresar en el firewall sea denegado, liberando así de visitas no deseadas.

    Por las dudas acá hablábamos de como instalar CSF

    El proceso de bloquear IP de países es sencillo dentro de las opciones de nuestro firewall, esto se hace con el código de país CIDR, este código lo podemos verificar aca:
    http://www.ipdeny.com/ipblocks/

    Luego en la configuración detallamos cuales serían los códigos de países a bloquear

    En cPanel vamos a:

    Home » Plugins » ConfigServer Security & Firewall » Firewall configuration

    Buscamos Country Code Lists and Settings y colocamos los países en CC_DENY

    CC_DENY = CH, TH, ID, KR

    Por SSH sería:

    # cd /etc/csf/
    # vi csf.conf

    Buscamos «SECTION:Country Code Lists and Settings» y editamos en:

    CC_DENY = ""

    Luego de eso reiniciamos nuestro firewall y ya estaríamos listos para bloquear. Esto es muy útil para liberar cargas de visitas no deseadas a nuestro servidor.

    by Mauro at June 06, 2019 03:35 PM

    June 05, 2019

    CloudAdmins.org

    SysAdmin VS CloudAdmin

    Introducción

    Para muchos que empiezan por primera vez al campo de las tecnologías de la información, al principio todo el esfuerzo puede resultar abrumador. Existen diversas direcciones en las que orientar la carrera, dónde la mayoría están determinadas por sus intereses, pasión y talento natural. Entre estos puestos, algunos quieren convertirse en administradores, pero no están muy seguros de qué tipo de administrador es el adecuado para ellos.

    Este artículo se centra en dos tipos: administrador del sistema o sysadmin y administrador de la nube o CloudAdmin.

    Para aquellos que tienen poco tiempo para leer el artículo completo, incluiré una sección clave que servirá como una referencia abreviada de las diferencias entre los dos roles.

    Administrador de sistema o SysAdmin

    Resultat d'imatges de sysadmin

    ¿Qué hace exactamente un administrador del sistema? Probablemente tenga en mente preguntas como esta si está considerando este rol por primera vez.

    Responsabilidades

    Los administradores de sistemas generalmente tienen la tarea de instalar, configurar, mantener y dar soporte a los sistemas y servidores informáticos.

    • Implementación de sistemas
    • Mantenimiento del sistemas
    • Gestionando entornos de servidor, incluyendo diferentes Sistemas Operativos como GNU/Linux, Windows, OpenBSD, etc
    • Actualización de sistemas cuando estén disponibles nuevas versiones de SO y parches de sistema
    • Gestión de proyectos
    • Scripts ligeros (por ejemplo, scripts de automatización y de inicio)
    • Aplicación de medidas de seguridad y creción de políticas.

    ¿Quién está buscando administradores de sistemas?

    Organizaciones de todos los tamaños en todas las industrias buscan administradores de sistemas.

    Un paso más allá: El CloudAdmin

    Resultat d'imatges de sysadmin

    Los administradores de la nube tienen algunas similitudes con los administradores de sistemas. Estos incluyen la instalación / implementación, configuración y soporte de un sistema, pero como ya se puede decir, los administradores de la nube realizan estas responsabilidades en un sistema basado en el paradigma Cloud.

    Esta función se ve como una especie de evolución de la función de administrador de sistemas tradicional, aunque una organización puede necesitar los dos perfiles. Si su organización ha fusionado ambos roles o no, se definirá en su estrategia.

    Responsabilidades

    Los administradores de la nube tienen dos responsabilidades principales: configurar el servicio de administración de la nube y administrar / monitorizar el servicio de administración en la nube. Si el administrador en la nube es el primero que la organización ha tenido en su historial, entonces puede agregar una tercera responsabilidad de implementar el servicio de administración de la nube. Otras responsabilidades incluyen:

    • Aprobar o rechazar solicitudes de cambio para modificaciones del servicio de administración Cloud. (Sobre AWS, Azure, GoogleCloud Platform, OpenNebula, Openstack, Kubernetes, …)
    • Analizar datos de resumen de despliegue de recursos Cloud
    • Monitorizar métricas clave de recursos Cloud
    • Integrar los sistemas Cloud en el entorno actual.
    • Resolver problemas operacionales.
    • Evaluar e implementar nuevas tecnologías de computación en Cloud.
    • Balanceo de carga
    • Dependiendo de si el administrador Cloud también es el administrador de almacenamiento, las responsabilidades pueden incluir la copia de seguridad / restauración y otras tareas centradas en el almacenamiento

    ¿Quién está buscando administradores de la nube?

    La mayoría de organizaciones que buscan administradores de la nube o Cloudadmins son organizaciones que actualmente dependen de la computación en la nube y organizaciones que buscan migrar a la nube. Esto realmente depende de la naturaleza de la organización y sus necesidades específicas.

     

    ¿Quieres ser un CloudAdmin?

     

    Existen diversas opciones pero aquí nos gustaría destacar el programa de posgrado de la UOC (Universitat Oberta de Catalunya). Échale un vistazo aquí:

    https://estudios.uoc.edu/es/masters-posgrados-especializaciones/devops-cloud-computing-sistemas-administracion/presentacion

    Logo UOC El posgrado de Administración de Sistemas, DevOps y Cloud Computing es un programa de carácter práctico, enfocado a profesionales del área de las tecnologías de la información, que quieran orientar su carrera profesional hacia el ámbito de la computación cloud.

    Un saludo,
    www.cloudadmins.org

    by Cloudadmin JordiGuijarro at June 05, 2019 04:59 PM

    June 04, 2019

    soyadmin.com

    ¿Cómo cifrar y proteger con contraseña archivos usando VIM?

    VIM es un editor de texto el cual sale de una necesidad de mejorar el VI. Entre las mejoras que obtuvo este «hermano mayor» de VI es la posibilidad de que mediante una variable se pueda encriptar y colocar contraseña a cualquier archivo que deseemos.

    Lo primero será instalar VIM:

    # sudo apt install vim

    Establecemos el cifrado sobre el archivo que querramos proteger:

    # vim -x soyadmin.txt

    Nos solicitará la clave de cifrado:

    Enter encryption key:  ******
    Enter same key again:  ******

    Con esto ya quedaría nuestro archivo cifrado y protegido por contraseña

    Podemos verificarlo con un intento de edición:

    # vim soyadmin.txt
    Need encryption key for "soyadmin.txt"
    Enter encryption key:

    O los comandos MORE y FILE también mostrarán que el archivo se encuentra protegido:

    # more soyadmin.txt
    VimCrypt~01!z֔05�Stm���g=������|����}�h�}g
    
    # file soyadmin.txt
    soyadmin.txt: Vim encrypted file data

    by Mauro at June 04, 2019 02:13 PM

    June 03, 2019

    soyadmin.com

    Instalar Repositorios EPEL en Centos 6 y 7

    El repositorio EPEL y sus aplicativos se integran perfectamente a centOS y de hecho es recomendable tenerlo instalado o realizar la instalación como paso anexo a una instalación de centos desde cero.

    Lo primero que tenemos que saber es que versión de CENTOS tenemos instalada:

    cat /etc/redhat-release

    Y luego conocer si es 32 o 64 bits

    uname -a

    En base a eso podremos elegir la versión correcta para nuestro servidor

    RHEL/CentOS 7 64 Bit

    wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    rpm -ivh epel-release-latest-7.noarch.rpm

    RHEL/CentOS 6 32-64 Bit

    ## RHEL/CentOS 6 32-Bit ##
    wget http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
    rpm -ivh epel-release-6-8.noarch.rpm
    
    ## RHEL/CentOS 6 64-Bit ##
    wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
    rpm -ivh epel-release-6-8.noarch.rpm

    Solo resta verificar que ya nuestro repositorio esta disponible

    # yum repolist

    by Mauro at June 03, 2019 03:37 PM

    June 01, 2019

    soyadmin.com

    ADMINISTRACIÓN DE SISTEMAS GNU/LINUX de Antonio Perpinan

    Título: Libro: ADMINISTRACIÓN DE SISTEMAS GNU/LINUX
    Autor:
    Antonio Perpinan
    Páginas: 241 Páginas
    Tamaño: 2.5 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.

    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 01, 2019 02:50 PM

    May 31, 2019

    soyadmin.com

    Terminal: Controlando la salud e integridad de nuestros discos con smartctl

    Smartctl es una herramienta la cual nos permitirá realizar un testeo de nuestros Discos Rígidos, la cual nos brinda un detallado informe mediante el cual podremos verificar el funcionamiento o posibles errores que posean nuestras unidades… salvándonos de un buen dolorcito de cabeza.

    Primero vamos a instalarlo:

    # yum install smartmontools

    Luego que se instala procederemos a hacer los testeos:
    Listamos los discos/particiones solo con el fin de obtener los nombres de nuestras unidades

    # df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/sda2             897G  380G  471G  45% /
    /dev/sda5             2.0G  383M  1.5G  21% /tmp
    /dev/sda1              99M   32M   62M  34% /boot
    tmpfs                 3.9G     0  3.9G   0% /dev/shm
    /dev/sdb1             917G  707G  164G  82% /hd2

    Aqui vemos que nuestros 2 discos son /dev/sda y /dev/sdb, esos nombres utilizaremos como ejemplos

    1) Detalle de la info de los discos:

    # smartctl -i /dev/sda
    smartctl 5.42 2011-10-20 r3458 [x86_64-linux-2.6.18-498.el5.lve0.8.80] (local build)
    Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net
    === START OF INFORMATION SECTION ===
    Device Model:     MB1000EBNCF
    Serial Number:    WCAW30756532
    LU WWN Device Id: 5 0014ee 25ac27419
    Firmware Version: HPG0
    User Capacity:    1,000,204,886,016 bytes [1.00 TB]
    Sector Size:      512 bytes logical/physical
    Device is:        Not in smartctl database [for details use: -P showall]
    ATA Version is:   8
    ATA Standard is:  ATA-8-ACS revision 6
    Local Time is:    Mon Apr  6 17:06:32 2015 ART
    SMART support is: Available - device has SMART capability.
    SMART support is: Enabled

    2) Un testeo solo informativo:

    # smartctl -H /dev/sda
    smartctl 5.42 2011-10-20 r3458 [x86_64-linux-2.6.18-498.el5.lve0.8.80] (local build)
    Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net
    === START OF READ SMART DATA SECTION ===
    SMART overall-health self-assessment test result: PASSED

    Este resultado nos muestra que todo esta OK.

    IMPORTANTE: Como se mostraría un error a tener muy en cuenta:

    # smartctl -H /dev/sda
    smartctl 5.42 2011-10-20 r3458 [x86_64-linux-2.6.18-498.el5.lve0.8.80] (local build)
    Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net
    === START OF READ SMART DATA SECTION ===
    SMART overall-health self-assessment test result: FAILED!
    Drive failure expected in less than 24 hours. SAVE ALL DATA.
    Failed Attributes:
    ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
    1 Raw_Read_Error_Rate     0x002f   001   001   051    Pre-fail  Always   FAILING_NOW 330223

    Increíblemente el detalle muestra que el disco puede tener un fallo en las próximas 24 hs, por lo que hay que realizar una inmedita copia del contenido.

    3) Testeo a fondo, el cual detallará cualquier tipo de error o falla en los discos:

    # smartctl -t long /dev/sda
    smartctl 5.43 2012-06-30 r3573 [x86_64-linux-2.6.32-504.1.3.el6.x86_64] (local build)
    Copyright (C) 2002-12 by Bruce Allen, http://smartmontools.sourceforge.net
    === START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===
    Sending command: "Execute SMART Extended self-test routine immediately in off-line mode".
    Drive command "Execute SMART Extended self-test routine immediately in off-line mode" successful.
    Testing has begun.
    Please wait 121 minutes for test to complete.
    Test will complete after Mon Apr  6 19:44:02 2015
    
    Use smartctl -X to abort test.

    4) Testeo rápido:

    <!-- wp:paragraph -->
    <p># smartctl -t short /dev/sda<br>smartctl 5.43 2012-06-30 r3573 [x86_64-linux-2.6.32-504.1.3.el6.x86_64] (local build)<br>Copyright (C) 2002-12 by Bruce Allen, http://smartmontools.sourceforge.net</p>
    <!-- /wp:paragraph -->
    
    <!-- wp:paragraph -->
    <p>=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===<br>Sending command: "Execute SMART Short self-test routine immediately in off-line mode".<br>Drive command "Execute SMART Short self-test routine immediately in off-line mode" successful.<br>Testing has begun.<br>Please wait 2 minutes for test to complete.<br>Test will complete after Mon Apr  6 17:48:38 2015</p>
    <!-- /wp:paragraph -->

    Como vemos aqui, los testeos «short y long» son offline y deberemos verificar el resultado con:

    # smartctl -l selftest /dev/sda
    smartctl 5.43 2012-06-30 r3573 [x86_64-linux-2.6.32-504.1.3.el6.x86_64] (local build)
    Copyright (C) 2002-12 by Bruce Allen, http://smartmontools.sourceforge.net
    === START OF READ SMART DATA SECTION ===
    SMART Self-test log structure revision number 1
    Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
    # 1  Short offline       Completed without error       00%      9627  

    Una herramienta muy útil ante cualquier tipo de aviso o sospecha de daño. A tenerlo en cuenta!

    by Mauro at May 31, 2019 01:33 PM

    May 29, 2019

    soyadmin.com

    Comandos de Consola Linux de la A a la Z

    Este listado muestra un recopilatorio de los comandos linux, el cual iré actualizando cada vez que pueda o descubra un nuevo comando y su uso. Una guía a fondo para conocer todo lo que podemos hacer mediante nuestra consola (aunque sea una porción).

    A
    alias    Crea un alias.
    apropos  Busca ayuda en la pagina de manual (man -k)
    apt-get  Busca e instala paquetes de software (Debian/Ubuntu)
    aptitude Busca e instala paquetes de software (Debian/Ubuntu)
    aspell   Verifica la ortografía
    awk      Encontrar y reemplazar texto, ordena/valida/indexa bases de datos

    B
    basename Muestra directorios y base de archivos
    bash     GNU Bourne-Again SHell
    bc       Lenguaje de calculo de precisión arbitrario
    bg       Enviar atras
    break    Salir de un bucle.
    builtin  Ejecutar un shell integrado
    bzip2    Comprimir o descomprimir archivo(s)

    C
    cal      Mostrar un calendario
    case     Ejecutar un comando en forma condicionada
    cat      Concatenar y desplegar (en pantalla) el contenido de un o varios archivos
    cd       Cambiar de directorio
    cfdisk   Gestor de Tablas de Partición para Linux
    chgrp    Cambiar la pertenencia a un grupo
    chmod    Cambiar los permisos de acceso
    chown    Cambiar el propietario y grupo de un archivo
    chroot   Ejecutar un comando con directorio raíz diferente
    chkconfig Servicios del sistema (nivel de ejecución)
    cksum    Imprimir la suma de verificación y el contenido de bytes
    clear    Limpiar la pantalla de la terminal
    cmp      Comparar dos archivos
    comm     Comparar dos archivos ordenados linea por linea
    command  Ejecutar un comando – ignorando las funciones del shell.
    continue Continuar con la siguiente interacción de un ciclo o bucle.
    cp       Copiar uno o mas archivos a otra ubicación o ruta
    cron     Demonio para ejecutar comandos agendados o programados
    crontab  Agendar o programar la ejecución de un comando a un tiempo específico
    csplit   Separar un archivo en partes determinadas por el contexto
    cut      Divide un archivo en varias partes

    D
    date     Mostrar o Cambiar la fecha y hora
    dc       Calculadora
    dd       Convertir y copiar un archivos, escribir a un dispositivo
    ddrescue Herramienta de recuperación de datos
    declare  Declarar variables y asignarles atributos.
    df       Mostrar el espacio libre en disco
    diff     Mostrar las diferencias entre dos archivos
    diff3    Mostrar deferencias entre tres archivos
    dig      DNS lookup
    dir      Listar de forma breve el contenido de directorios
    dircolors Configurar colores para `ls’
    dirname  Convierte un nombre de ruta completa a solo una ruta
    dirs     Despliega una lista de directorios recordados
    dmesg    Imprime mensajes del kernel y drivers
    du       Estima el espacio ocupado por el archivo

    E
    echo     Despliega un mensaje en la pantalla.
    egrep    Busca en archivo(s) por las líneas que corresponden a una expresión extendida
    eject    Expulsa medios removibles
    enable   Habilita y Deshabilita los comandos internos del shell.
    env      Variables de Ambiente
    ethtool  Configuración de interfaz Ethernet
    eval     Evalúa varios comandos/argumentos
    exec     Ejecuta un comando
    exit     Salir del shell
    expect   Automatizar aplicaciones arbitrarias accedidas mediante una terminal
    expand   Convertir caracteres tabs a espacios
    export   Establecer una variable de ambiente
    expr     Evalúa expresiones

    F
    false    Sin efecto, falso, sin éxito
    fdformat Formato de bajo nivel a un disco floppy
    fdisk    Manipular tablas de partición para Linux
    fg       Enviar trabajo o proceso al primer plano
    fgrep    Buscar en archivo(s) por las lineas que corresponden a una cadena
    file     Determina el tipo de archivo(s)
    find     Buscar archivos que corresponden a un criterio deseado
    fmt      Re formatear párrafo de texto
    fold     Cortar texto para que tenga un ancho específico.
    for      Expandir palabras, y ejecutar comandos
    format   Formatear discos o cintas
    free     Despliega el uso de memoria
    fsck     Verifica y repara la consistencia del sistema de archivos
    ftp      Protocolo de transferencia de archivos ftp
    function Define Funciones Macros
    fuser    Identificar/Matar el proceso que está accediendo o modificando un archivo

    G
    gawk     Buscar y reemplazar texto en archivo (s)
    getopts  Analiza los parámetros de posición
    grep     Busca en archivos por las líneas que correspondan al patrón buscado
    groupadd Agregar un grupo de usuarios
    groupdel Borra un grupo
    groupmod Modificar un grupo
    groups   Imprimir nombre de los grupos a los que pertenece un usuario
    gzip     Comprime o descomprime los archivos nombrados

    H
    hash     Recuerda la ruta completa de un argumento
    head     Muestra la primera parte de uno o varios archivos
    help     Despliega la ayuda para un comando integrado en el sistema.
    history  Muestra el historial de los comandos ejecutados
    hostname Imprime o establece el nombre del sistema

    I
    iconv    Convertir el juego de caracteres de un archivo
    id       Imprime los identificadores de usuario y grupo
    if       Ejecuta un comando según se evalúe una condición
    ifconfig Configurar una interfaz de red
    ifdown   Detener una interfaz de red
    ifup     Iniciar una interfaz de red
    info     Leer documentos info del sistema o comandos
    import   Capturar una pantalla del servidor X y grabarla imagen a un archivo
    install  Copiar archivos y establecer atributos

    J
    jobs     Lista los trabajos o procesos activos.
    join     Une lineas en un campo común

    K
    kill     Detiene un proceso en ejecución
    killall  Detiene procesos por nombre

    L
    less     Despliega parte de un archivo en pantalla de manera interactiva
    let      Realiza aritmética en variables del shell.
    ln       Crear enlaces simbólicos o duros entre archivos
    local    Crear variables.
    locate   Buscar archivos
    logname  Imprime el nombre de cesión actual
    logout   Sale de una sesión de shell.
    look     Despliega lineas que comienzan con una cadena dada
    lpc      Programa de control de la línea de impresión
    lpr      Impresión fuera de línea
    lprint   Imprime un archivo
    lprintd  Abortar un trabajo de impresión
    lprintq  Listar la cola de impresión
    lprm     Remover trabajos de la cola de impresión
    ls       Listar información sobre archivos
    lsof     Listar los archivos abiertos

    M
    make     Re compilar un grupo de programas
    man      Manual o ayuda de un comando
    mkdir    Crear un directorio
    mkisofs  Crear un sistema de archivos híbrido ISO9660/JOLIET/HFS
    mknod    Crear un bloc o un archivo especial de caracteres
    more     Muestra la salida en una pantalla con pausas
    mount    Montar un sistema de archivos
    mtools   Manipular archivos MS-DOS
    mtr      Diagnosticar Red (traceroute/ping)
    mv       Mover o renombrar archivos o directorios
    mmv      Mover o renombrar archivos o directorios de forma masiva

    N
    netstat  Dar información de la red
    nice     Establecer la prioridad de un comando o de un proceso
    nl       Enumera las líneas (al principio) de un archivo
    nohup    Ejecutar un comando de forma inmune a bloqueos
    notify-send  Enviar notificaciones de escritorio
    nslookup Consulta los servidores de nombres de dominio de forma interactiva

    O
    open     Abrir un archivo con su aplicación predeterminada
    op       Operador de acceso

    P
    passwd   Modificar la contraseña de un usuario
    paste    Mezclar líneas de archivos
    pathchk  Verificar disponibilidad de un nombre de archivo
    ping     Probar la conexión de red
    pkill    Detener la ejecución de un proceso
    popd     Restaurar el valor previo del directorio actual
    pr       Preparar archivos para impresión
    printcap Base de datos de la capacidad de impresoras
    printenv Imprime variables de ambiente
    printf   Formatear e imprimir datos.
    ps       Estado de los procesos en el sistema
    pushd    Grabar y luego cambiar el directorio actual
    pwd      Imprimir el directorio actual

    Q
    quota    Mostrar límites y uso del disco
    quotacheck Escanear un sistema de archivos para el uso del disco
    quotactl Establecer cuotas de disco

    R
    ram      Crear un dispositivo de disco en memoria
    rcp      Copiar archivos entre dos máquinas
    read     Leer una linea desde la entrada estándar.
    readarray Leer desde la estrada estándar a una variable tipo arreglo.
    readonly Marcar variables/funciones como de solo lectura
    reboot   Reiniciar el sistema
    rename   Renombrar archivos
    renice   Modificar la prioridad de procesos en ejecución
    remsync  Sincronizar archivos remotos vía email
    return   Salir de una función shell
    rev      Invertir las líneas de un archivo
    rm       Remover archivo(s)
    rmdir    Remover directorio(s)
    rsync    Copiar archivos local o remotamente para sincronizar directorios

    S
    scp      Copiar archivos remotamente de forma segura (usando ssh)
    sdiff    Mezcla archivos de forma interactiva
    sed      Editor de flujo de caracteres para filtrar y formatear texto
    seq      Imprime secuencias numéricas
    set      Manipular variables y funciones del shell
    sftp     Protocolo seguro de intercambio de archivos (sftp)
    shift    Cambiar parámetros de posición
    shopt    Opciones del Shell
    shutdown Apagar o reiniciar Linux
    sleep    Demora por un tiempo determinado
    slocate  Encontrar archivos
    sort     Ordenar archivos de texto
    source   Ejecutar un comando de un archivo `.’
    split    Partir una archivo es pedazo de cierto tamaño
    ssh      Cliente SSH (Secure Shell client) para llamar programas remotamente
    strace   Rastrear llamadas de sistema o señales
    su       Cambia el id del usuario o para convertirse en superusuario (root)
    sudo     Ejecuta un comando como otro usuario
    sum      Imprime la suma de verificación de un archivo
    suspend  Suspende la ejecución del shell actual.
    symlink  Crea un nuevo nombre para un archivo
    sync     Sincroniza datos en disco con la memoria

    T
    tail     Muestra la última parte de un archivo
    tar      Tape ARchiver comprime y descomprime archivos
    tee      Redirecciona la salida a múltiples archivos
    test     Verifica tipos de archivos y compara valores
    time     Ejecutar programas y resume el tiempo y recursos ocupados
    times    Obtener el tiempo (hora) del sistema y del usuario
    touch    Cambiar la hora del registro de uso de un archivo
    top      Lista los procesos corriendo en el sistema y los recursos usados
    traceroute Traza una ruta hacia un host
    tr       Traduce o elimina caracteres
    true     Sin efecto, valor verdadero, éxito
    tsort    Realiza un ordenamiento topológico
    tty      Imprime el nombre de archivo de la termina en la entrada estándar stdin
    type     Describe un comando.

    U
    ulimit   Limitar los recursos de usuarios.
    umask    Mascara de creación de archivos de usuarios
    umount   Desmontar un dispositivo
    unalias  Remueve una alias.
    uname    Print system information
    unexpand Convierte espacios caracteres tabs
    uniq     Remueve lineas duplicadas en los archivos indicados
    units    Convierte unidades de una escala a otra
    unset    Renueve variables o nombres de funciones
    unshar   Desempaqueta archivos de shell scripts
    until    Ejecuta comandos (hasta encontrar error)
    uptime   Muestra el tiempo que el sistema ha estado funcionando
    useradd  Crear una cuenta nueva de usuario
    userdel  Borra una cuenta de usuario
    usermod  Modifica una cuenta de usuario
    users    Lista los usuarios conectados actualmente al sistema
    uuencode Codifica un archivo binario
    uudecode Decodifica un archivo binario

    V
    vdir     Lista ampliada del contenido de directorio(s) (`ls -l -b’)
    vi       Editor de texto
    vmstat   Reportar estadísticas de memoria virtual

    W
    wait     Esperar que un proceso se complete.
    watch    Ejecutar/desplegar un programa periódicamente
    wc       Imprime el conteo de bytes, palabras y lineas
    whatis   imprime descripciones de páginas de manual
    whereis  Buscar en el $path, en los manuales del comando y en los archivos fuentes por un programa
    which    Buscar en el $path del usuario por un archivo de programa
    while    Ejecuta comandos
    who      Imprimir todos los usuarios conectados en el sistema
    whoami   Imprimir el id del usuario y el nombre del usuario (`id -un’)
    wget     Descargar páginas web o archivos vía HTTP, HTTPS o FTP
    write    Enviar un mensaje a otro usuario

    X
    xargs    Utilidad de Ejecución, pasando lista(s) de argumentos
    xdg-open Abre un archivo o URL con la aplicación preferida por el usuario

    Y
    yes      Imprime una cadena «yes» hasta que sea interrumpido

    Otros
    .        Ejecuta un script de comandos en el shell actual
    !!       Ejecuta de nuevo el último comando
    ###      Comentario / Remarca

    by Mauro at May 29, 2019 02:00 PM

    May 28, 2019

    RooTeando

    Entrevista En Diferido 10: José Maldonado

    Hoy comenzamos una entrevista a José Maldonado, @Yukiteru_Amano.
    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?

     

    José Maldonado:  Saludos! Mi nombre es José Maldonado (aka YukiteruAmano). Soy venezolano, aún viviendo en esta tierra.

    Soy Lcdo en Educación Mención Física y estudiante ...

    May 28, 2019 10:30 PM

    soyadmin.com

    Comprimir / Descomprimir desde nuestra consola

    Acá les dejo un listado con los comandos para comprimir/descomprimir en SSH, utilizando los formatos de compresión y descompresión más utilizados.

    • Ficheros tar
    Empaquetar: tar -cvf archivo.tar /dir/a/comprimir/
    Desempaquetar: tar -xvf archivo.tar
    Ver contenido: tar -tf archivo.ta
    • Ficheros gz
    Comprimir: gzip -9 fichero
    Descomprimir: gzip -d fichero.gz
    • Ficheros bz2 (gzip ó bzip2 sólo comprimen ficheros no directorios, para eso existe tar).
    Comprimir: bzip fichero
    Descomprimir: bzip2 -d fichero.bz2
    • Ficheros tar.gz
    Comprimir: tar -czfv archivo.tar.gz ficheros
    Descomprimir: tar -xzvf archivo.tar.gz
    Ver contenido: tar -tzf archivo.tar.gz
    • Ficheros tar.bz2
    Comprimir: tar -c ficheros | bzip2 > archivo.tar.bz2
    Descomprimir: bzip2 -dc archivo.tar.bz2 | tar -xv
    Ver contenido: bzip2 -dc archivo.tar.bz2 | tar -t
    • Ficheros zip
    Comprimir: zip archivo.zip ficheros
    Descomprimir: unzip archivo.zip
    Ver contenido: unzip -v archivo.zip
    • Ficheros lha
    Comprimir: lha -a archivo.lha ficheros
    Descomprimir: lha -x archivo.lha
    Ver contenido: lha -v archivo.lha
    Ver contenido: lha -l archivo.lha
    • Ficheros arj
    Comprimir: arj a archivo.arj ficheros
    Descomprimir: unarj archivo.arj
    Descomprimir: arj -x archivo.arj
    Ver contenido: arj -v archivo.arj
    Ver contenido: arj -l archivo.arj
    • Ficheros zoo
    Comprimir: zoo a archivo.zoo ficheros
    Descomprimir: zoo -x archivo.zoo
    Ver contenido: zoo -L archivo.zoo
    Ver contenido: zoo -v archivo.zoo
    • Ficheros rar
    Comprimir: rar -a archivo.rar ficheros
    Descomprimir: rar -x archivo.rar
    Ver contenido: rar -l archivo.rar
    Ver contenido: rar -v archivo.rar

    by Mauro at May 28, 2019 12:08 PM

    May 27, 2019

    blog de Rodolfo Pilas

    Certbot: No module named pip.__main__; ‘pip’ is a package and cannot be directly executed

    De un tiempo a esta parte he tenido sistemas de certificados Let’s Encrypt que han dejado de renovar el certificado automáticamente, al ejecutar certbot-auto obtengo el siguiente mensaje de error:

    /opt/eff.org/certbot/venv/bin/python: No module named pip.__main__; 'pip' is a package and cannot be directly executed
    Traceback (most recent call last):
      File "/tmp/tmp.p48KR72ZCs/pipstrap.py", line 177, in <module>
        sys.exit(main())
      File "/tmp/tmp.p48KR72ZCs/pipstrap.py", line 149, in main
        pip_version = StrictVersion(check_output([python, '-m', 'pip', '--version'])
      File "/usr/lib/python2.7/subprocess.py", line 544, in check_output
        raise CalledProcessError(retcode, cmd, output=output)
    subprocess.CalledProcessError: Command '['/opt/eff.org/certbot/venv/bin/python', '-m', 'pip', '--version']' returned non-zero exit status 1

    La solución que he encontrado es actualizar a mano certbot-auto e indicarle que corra sin tratar de actualizarse. Estos serían los comandos:

    rm ./certbot-auto*
    wget https://raw.githubusercontent.com/certbot/certbot/75499277be6699fd5a9b884837546391950a3ec9/certbot-auto
    chmod +x ./certbot-auto
    ./certbot-auto --no-self-upgrade

    La referencia a este procedimiento la he conseguido de este post en foro de la comunidad Let’s Encrypt.

    by pilasguru at May 27, 2019 04:37 PM

    May 24, 2019

    soyadmin.com

    Cómo protegerse de ataques de Denegación de Servicio (DOS) con ConfigServer Security & Firewall (CSF)

    Hace unos días enseñábamos a instalar ConfigServer Security & Firewall (CSF) una herramienta imprescindible para todo admin y servidor de hosting.

    ConfigServer Security & Firewall permite entre sus opciones protegernos de los ataques de denegación de servicio o DOS.

    Las opciones a «tocar» dentro de la config del CSF son:

    SYNFLOOD
    synflood=1
    synflood-rate= “30/s”
    synflood_burst=10

    Donde:
    synflood=1 (Activa la protección del Synflood)
    synflood-rate= “30/s” (cantidad de conexiones por segundo permitidas)
    synfloodburst=10 (Bloquea luego de 10 intentos por IP)

    PORTFLOOD
    udpflood=1
    udpflood-limit="50/s"
    udpflood_burst=100

    Donde:
    udpflood=1 (Activa la protección del porflood)
    udpflood-limit= “50/s” (cantidad de conexiones por segundo permitidas)
    udpflood_burst=100 (Bloquea luego de 10 intentos por IP)

    Por supuesto estas opciones deben ser adecuadas a cada servidor y a lo que cada Sysadmin crea que son valores correctos.

    by Mauro at May 24, 2019 11:48 AM

    May 23, 2019

    soyadmin.com

    Libro: EL SOFTWARE LIBRE EN EL SECTOR PÚBLICO de David Megias

    Título: Libro: EL SOFTWARE LIBRE EN EL SECTOR PÚBLICO
    Autor:
    David Megias
    Páginas: 118 Páginas
    Tamaño: 2 MB
    Fomato: PDF

    Contenido:

    Esta guía persigue acercar a los estudiantes a las principales cuestiones vinculadas con la aplicación del Software Libre a las administraciones públicas. Éstas, que entre otras funciones tienen que velar por la seguridad y la transparencia de la información pública del ciudadano, tienen una responsabilidad especial con respecto al uso de los fondos públicos aplicados a las tecnologías de la información y la comunicación (TIC). Es en este sentido en qué las administraciones se han posicionado como uno de los públicos objetivos más relevantes con respecto al uso y el fomento del Software Libre. Ahorro de costes de licencias, fomento de la industria local, localización de las lenguas marcada por el interés social y no estrictamente comercial, fomento de una sociedad de la información y del conocimiento basada en tecnologías libres y estándares abiertos, entre muchos otros, son algunos de los temas que han generado un debate en el si de la Administración Pública y que todavía permanecen con total vigencia.

    El Software Libre en el sector público
    La Administración pública como impulsora de acciones y fomento del Software Libre
    La Administración pública como receptora de proyectos internos de Software Libre
    Estudio de casos reales de migración de administraciones públicas
    Plan de migración de una Administración Pública

    by Mauro at May 23, 2019 07:54 PM

    RooTeando

    Tomando Un Café 59: Noticias y aplicaciones de Linux.

    Nuevo audio donde hablo de un par de noticias sobre una nueva funcionalidades de Telegram y el próximo Zenkit 3.0, como de dos aplicaciones de Linux, un buscador para terninal llamado S y un editor de Markdown llamado Zettlr.

    Buscador S
    https://github.com/zquestz/s

    Zettlr
    https://www.zettlr.com/

    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 ...

    May 23, 2019 09:47 AM

    May 22, 2019

    Sobre bits

    Listar máquinas virtuales con snapshots antiguos con PowerCLI

    Como administradores de sistemas vSphere una de las cosas que siempre deberíamos tener controlada en nuestra infraestructura es la existencia de máquinas virtuales con snapshots no utilizados. Como siempre digo en esta clase de entradas, hacer esto a mano en una infraestructura pequeña con pocas manos administrándola es algo viable, pero es una solución que no escala para nada bien. Es por ello que en esta entrada veremos cómo listar maquinas virtuales con snapshots antiguos con PowerCLI.

    Listar máquinas virtuales con snapshots antiguos con PowerCLI

    ¿Por qué hay que eliminar snapshots antiguos en VMware?

    En vSphere los snapshots pueden suponer una herramenta increíblemente útil en nuestro día a día o una pesadilla dependiendo del uso que le demos. VMware facilita una serie de buenas prácticas en ésta entrada.

    Como indica VMware, no debereíamos tener snapshots más antiguos de 72 horas o podemos incurrir en:

    • Llenado del storage por culpa de que el snapshot no para de crecer.
    • Bajada de rendimiento en el sistema.

    Yo por mi parte añadiría que eliminar un snapshot de varios cientos de GB o de más de 1TB no es la mejor de las experiencias 🤦‍♂️.

    Listando snapshots antiguos con PowerCLI

    Vamos a ver el pequeño script que nos ayudará a mantener a raya los snapshots antiguos con PowerCLI:

    Spoiler: si únicamente quieres el one-liner para obtener las VMs puedes dirigirte directamente a las líneas resaltadas del script

    #### Variables ####
    # Conexión a vCenter
    $VcenterIP = "192.168.168.168"
    $VcenterCreds = Import-Clixml -Path "$PSScriptRoot\Credenciales\VMware_rw.xml"
    
    # Antigüedad snapshot
    $Days = 3
    
    # Configuración del correo
    $Body = "Snapshots con más de $Days días: `n`n"
    $From = "[email protected]"
    $To = "[email protected]"
    $Subject = "VMs con Snapshot anterior a $Days días"
    $SmtpServer = "mailserver.sobrebits.com"
    $SmtpPort = 25
    
    #### Cuerpo del script ####
    
    # Conectamos al vCenter
    Connect-VIServer -Server $VcenterIP -Credential $VcenterCreds -WarningAction SilentlyContinue | Out-Null
    
    # Recuperamos todas las VMs con snapshot antiguos
    $Vms = (Get-VM | Get-Snapshot | Where-Object {$_.Created -lt (Get-Date).AddDays(-$Days)}).VM.Name | Sort-Object
    
    # Enviamos correo con el listado (en caso de que hubiera alguna VM con snapshot antiguo)
    if ($Vms) {
        $Body += $Vms -join "`n"
        Send-MailMessage -From $From -To $To -Subject $Subject -Body $Body -SmtpServer $SmtpServer -Port $SmtpPort
    }
    
    # Desconectamos del vCenter
    Disconnect-VIServer -Confirm:$false
    

    Veamos qué hemos hecho aquí:

    • Líneas 3-4: Declaramos la IP y las credenciales del servidor vCenter.
    • 7: Declaramos la cantidad de días de antigüedad del snapshot. En nuestro caso seguimos las buenas prácticas de VMware y configuramos 3.
    • 10-15: Configuramos los parámetros para el envío de correo.
    • 20: Conectamos a vCenter.
    • 23: Aquí está la «chicha» del script, donde obtenemos todas las máquinas virtuales con snapshot anterior a 3 días:
      • Get-VM: Obtenemos todas las máquinas virtuales.
      • Get-Snapshot: Obtenemos todos los snapshots de las máquinas virtuales.
      • Where-Object {$_.Created -lt (Get-Date).AddDays(-$Days)}: Nos quedamos únicamente con los snapshots cuya fecha de creación ($_.Created) sea anterior (-lt) a la fecha actual menos 3 días ((Get-Date).AddDays(-$Days)).
      • .VM.Name: Seleccionamos únicamente el nombre de la VM a la que pertenece dicho snapshot.
    • 26-29: Si existen máquinas dentro de $Vms enviamos el correo con el listado de las máquinas virtuales.
    • 32: Desconectamos del vCenter.

    Resumiendo, cada vez que el script se ejecute revisará todas las máquinas vituales del entorno y revisará si contienen snapshots y si éstos son anteriores a 3 días. De existir alguno nos enviará un resumen de las máquinas virtuales afectadas directamente a nuestra bandeja de correo para que seamos nosotros mismos los que gestionemos el caso.

    Conclusión

    Si utilizamos la ejecución programada de scripts de PowerShell para realizar este check de forma diaria nos vamos a asegurar de tener siempre controlada la existencia de snapshots antiguos con PowerCLI, con lo que tendremos una infraestructura más optimizada.

    Para los más atrevidos, podríamos modificar el script para que, en vez de enviar un correo, ejecutara Remove-Snapshot para eliminar directamente sin preguntar los snapshots antiguos.

    ¡Nos leemos en la próxima!

    La entrada Listar máquinas virtuales con snapshots antiguos con PowerCLI aparece primero en Sobrebits.

    by Marc Meseguer at May 22, 2019 12:33 PM

    soyadmin.com

    Antergos el «Arch para Humanos» se despide.

    El proyecto Antergos llega a su fin luego de 7 largos años. Así lo indicaron sus principales desarrolladores en el blog oficial de la distrubición

    El artículo comienza con un «Lo que comenzó como un pasatiempo de verano hace siete años, se convirtió rápidamente en una increíble distribución Linux»
    «Nuestro objetivo era hacer que Arch Linux estuviera disponible para una audiencia más amplia al proporcionar una experiencia simplificada y fácil de usar»

    Los motivos?

    El principal motivo que detallan los desarrolladores es la falta de tiempo «creemos que seguir descuidando el proyecto sería un gran perjuicio para la comunidad»

    ¿Qué pasará con los actuales usuarios de Antergos? Antergos tiene como repositorio principal el de Arch Linux, por lo tanto recibirá actualizaciones desde dicho repositorio, además indican que se lanzará una actualización aparte para eliminar el repositorio propio de la distribución «junto con cualquier paquete específico de Antergos que ya no tenga un propósito. Una vez que se haya completado, todos los paquetes instalados desde el repositorio de Antergos que están en AUR comenzarán a recibir actualizaciones desde allí»

    ¿Hay alguna alternativa a Antergos? Sí para los amantas de Arch, existe Manjaro y aquí tienen mucha información al respecto

    Fuente: Muylinux

    by Mauro at May 22, 2019 11:46 AM

    Iotop: Herramienta para Monitoreo del Uso de Disco en Linux

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

    La instalación es sencilla:

    Debian, Ubuntu y derivados:

    # sudo apt-get install iotop

    Centos, Rhel y Fedora:

    # yum -y install iotop

    Ejecutarlo en cualquier distribución es más sencillo aun:

    # iotop

    Podemos pasarle estas variables:

    o Solo muestra los procesos que están usando el disco en el preciso momento que se lo comprueba.
    -n nº Realiza un número concreto de chequeos, y termina. Por defecto, chequea infinitamente.
    -d nº Indica cada cuanto tiempo hace el chequeo. Por defecto, es 1 segundo.
    -u USUARIO Muestra solo los procesos del usuario o usuarios especificados.

    Usando las flechas del teclado (derecha e izquierda) podemos cambiar el orden, r para invertir el orden, o para cambiar a la opción –only, p para cambiar a la opción –processes, a para cambiar a la opción –accumulated option, q para salir, i para cambiar la prioridad de un proceso. Al presionar cualquier otra tecla se fuerza una actualización o refresh.

    by Mauro at May 22, 2019 11:23 AM

    May 21, 2019

    RooTeando

    Tomando Un Café 58: Desarrollo de contenido

    Nuevo audio donde hablo donde vuelvo a la formación , he pensado crear una trilogía de la formación. Este sería el segundo audio, el primero fue Como diseñar un curso, mas adelante lo finalizaré con un audio cuya temática,posiblemente ,será el Formador y alumnos.

    Canales de Telegram @UnDiaUnaAplicacion @UnPythonAldia @AprendePython @EntrevistaEnDiferido
    Podcast @RadioDev  @ARMparaTODOS @TomandoUnCafe

    Grupos de Telegram
    Alternativas a la Raspberry
    https://t.me/AlternativasRaspberry

    Twitter
    Tomando Un Café https://twitter.com/Tomando_Un_Cafe ...

    May 21, 2019 09:55 PM

    May 20, 2019

    soyadmin.com

    Instalación de CSF (ConfigServer Security Firewall) en WHM (CentOS, Red hat y Fedora)

    CSF es un Firewall o cortafuegos, el cual es la mejor alternativa para el firewall nativo APF, CSF es muy sencillo de instalar/desinstalar y muy facil de configurar.

    Este firewall es totalmente compatible con WHM, funciona como escaneo de paquetes, detector de intrusiones, lector de logs y bloqueador de ataques.

    Sirve tambien como controlador de puertos y su módulo de LFD es una barrera increíble contra los intentos de ataque mediante intentos de loguin.

    Vallamos a la instalación del aplicativo:

    # rm -fv csf.tgz
    # wget http://www.configserver.com/free/csf.tgz
    # tar -xzf csf.tgz
    # cd csf
    # sh install.sh

    Importante, ejecutar este script para desactivar el APF si es que lo teníamos instalado (recomendado si o si ante cualquier duda).

    # sh disable_apf_bfd.sh

    IMPORTANTE: Con eso sólo estaríamos instalando el Firewall, proximamente detallaremos configuraciones.

    Por último, dejo la desinstalación del firewall:

    # cd /etc/csf
    # sh uninstall.sh

    by Mauro at May 20, 2019 11:46 AM

    debianhackers.net

    instalando mattermost en debian stretch

    ¡Me encanta el olor a software libre por las mañanas! Y más cuando una aplicación privativa que me gusta se vuelve un dolor de muelas por sus restricciones. Entonces es el momento de buscar alternativas de software libre.

    mis requerimientos

    • open source
    • alternativa a slack
    • multiplataforma: linux, windows, android…
    • sin limitaciones en cuanto a mensajes, ficheros, etc…
    • instalable en un servidor que ya esté funcionando con otros servicios

    el caso

    Slack, la plataforma para facilitar el trabajo en equipo es una herramienta muy útil pero, cuando llevas un tiempo utilizándola en su versión gratuíta empiezan a aparecer los problemas, como no poder recuperar conversaciones porque has excedido el máximo y sólo te muestra las últimas diez mil. Y un día, sin saber cómo, te encuentras abriendo duckduckgo y buscando 'slack open source alternatives'. Y ahí es cuando descubres Mattermost.

    las alternativas

    Mattermost es una alternativa a slack pero de software libre, su misión es la misma, su interfaz es terriblemente similar y no tiene las limitaciones de aquella pero no es la única alternativa. Durante un tiempo barajé la opción de zulip pero tiene un requerimiento que choca frontalmente con los míos:

    Requirements
    
    To run a Zulip server, you will need:
    
    * A dedicated machine or VM

    (Zulip Requirements)

    Mis servidores son limitados y por eso trato de aglutinar en ellos servicios similares y, en este caso, ni quería ni podía utilizar una máquina para la mensajería.

    La única desventaja que le vi a Mattermost es que utiliza nginx como proxy inverso y yo utilizo apache pero se puede cambiar fácilmente, como veremos.

    instalación de mattermost

    Todo el proceso descrito en esta entrada se ha obtenido de la documentación oficial de Mattermost.

    creación de la base de datos

    El servidor de bases de datos también está instalado y configurado por lo que únicamente tendremos que crear una base de datos y un usuario nuevos.

    sudo mysql -u root -p -e "CREATE DATABASE mattermost; GRANT ALL ON mattermost.* TO 'matter'@'localhost' IDENTIFIED BY 'SuperSecurePassW0rd!';"

    Estos datos de conexión se utilizarán más adelante al configurar el Driver de Mattermost.

    Mattermos, al fin

    Instalaremos Mattermost en /opt y apuntaremos el virtual host de apache2 a ese directorio.

    wget -c https://releases.mattermost.com/5.10.0/mattermost-5.10.0-linux-amd64.tar.gz
    tar xvfz mattermost-5.10.0-linux-amd64.tar.gz
    sudo mv mattermost /opt/mattermost
    rm -f mattermost-5.10.0-linux-amd64.tar.gz
    sudo mkdir /opt/mattermost/opt
    cd /opt/mattermost
    
    sudo useradd --system --user-group mattermost
    sudo chown -R mattermost:mattermost /opt/mattermost
    sudo chmod -R g+w /opt/mattermost
    
    if [ `grep -c '"DriverName": "mysql"' /opt/mattermost/config/config.json` != '1' ] ; then
    echo "el DriverName no es MySQL"
    exit 1
    fi
    
    sudo sed -i 's|mmuser:[email protected](dockerhost:3306)/mattermost_test|matter:[email protected](127.0.0.1:3306)/mattermost|' /opt/mattermost/config/config.json
    
    sudo -u mattermost /opt/mattermost/bin/mattermost ### si falla, leer más abajo
    
    echo "[Unit]
    Description=Mattermost
    After=network.target
    After=mysql.service
    Requires=mysql.service
    
    [Service]
    Type=notify
    ExecStart=/opt/mattermost/bin/mattermost
    TimeoutStartSec=3600
    Restart=always
    RestartSec=10
    WorkingDirectory=/opt/mattermost
    User=mattermost
    Group=mattermost
    LimitNOFILE=49152
    
    [Install]
    WantedBy=multi-user.target" | sudo tee -a /lib/systemd/system/mattermost.service
    
    sudo systemctl daemon-reload
    sudo systemctl status mattermost.service
    sudo systemctl start mattermost.service
    sudo systemctl enable mattermost.service
    
    wget http://localhost:8065 -O - ### tiene que mostrar una web

    la columna de una tabla es demasiado grande

    Si falla y da este error, {"level":"error","ts":1557928148.6244338,"caller":"sqlstore/supplier.go:811","msg":"Failed to create index Error 1709: Index column size too large. The maximum column size is 767 bytes."}, cambiar configuración en mariadb:

    sudo sed -i '/# this is only for embedded server/i \\# added for mattermost\ninnodb_default_row_format=dynamic\ninnodb_file_format=barracuda\ninnodb_file_per_table=true\ninnodb_large_prefix=true\n' /etc/mysql/mariadb.conf.d/50-server.cnf
    sudo /etc/init.d/mysql restart

    apache2

    Crear el subdominio matter.example.com apuntando al servidor donde lo vas a instalar. En mi caso, en dicho servidor ya hay un apache funcionando y no necesito instalar software adicional. En caso de utilizar, como recomienda Mattermost, nginx tendría dos servicios operando sobre el mismo puerto y eso no termina bien nunca.

    A partir de esta modificación, apache no sólo funcionará como servidor web sino que también hará de proxy inverso para redirigir el tráfico al puerto que escucha Mattermos, el 8065.

    Creamos el VirtualHost para Mattermost, en principio vacío y luego, tras solicitar el certificado a letsencrypt, con la configuración de proxy.

    echo "#&lt;ifmodule mod_ssl.c="">
    #  &lt;virtualhost _default_:443="">
    #    ServerName            matter.example.com
    #    ServerAdmin           [email protected]
    #    ErrorLog              /matter.example.com_error.log
    #    TransferLog           /matter.example.com_access.log
    #
    #    SSLEngine             on
    #    SSLCertificateFile    /etc/letsencrypt/live/matter.example.com/fullchain.pem
    #    SSLCertificateKeyFile /etc/letsencrypt/live/matter.example.com/privkey.pem
    #    SSLProtocol           TLSv1 TLSv1.1 TLSv1.2 -SSLv2 -SSLv3
    #    SSLHonorCipherOrder   On
    #    SSLCipherSuite        AES256+EECDH:AES256+EDH
    #
    #    ProxyPreserveHost     On
    #    ProxyRequests         Off
    #    ProxyPass             / http://127.0.0.1:8065/
    #    ProxyPassReverse      / http://127.0.0.1:8065/
    #
    #    RewriteEngine         on
    #    RewriteCond          %{REQUEST_URI} ^/api/v4/websocket [NC,OR]
    #    RewriteCond          %{HTTP:UPGRADE} ^WebSocket$ [NC,OR]
    #    RewriteCond          %{HTTP:CONNECTION} ^Upgrade$ [NC]
    #    RewriteRule          .* ws://127.0.0.1:8065%{REQUEST_URI} [P,QSA,L]
    #    RewriteCond          %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} fg
    #    RewriteRule          .* http://127.0.0.1:8065%{REQUEST_URI} [P,QSA,L]
    #
    #    &lt;location api="" v4="" websocket="">
    #      Require all granted
    #      ProxyPassReverse http://127.0.0.1:8065
    #      ProxyPassReverseCookieDomain 127.0.0.1 matter.example.com
    #    &lt;/location>
    #    &lt;location>
    #      Require all granted
    #      ProxyPassReverse http://127.0.0.1:8065
    #      ProxyPassReverseCookieDomain 127.0.0.1 matter.example.com
    #    &lt;/location>
    #  &lt;/virtualhost>
    #&lt;/ifmodule>
    &lt;virtualhost *:80="">
    ServerName    matter.example.com
    DocumentRoot  /var/www/matter.example.com
    #  Redirect      permanent / https://matter.example.com/
    &lt;/virtualhost>" | sudo tee --append /etc/apache2/sites-available/matter.example.com.conf
    
    sudo /etc/init.d/apache2 restart
    sudo certbot certonly --apache --agree-tos -m [email protected] -d matter.example.com.conf
    sudo sed -i 's/^#//' /etc/apache2/sites-available/matter.example.com.conf
    sudo a2enmod proxy
    sudo a2enmod proxy_balancer
    sudo a2enmod proxy_http
    sudo a2enmod proxy_wstunnel
    sudo a2ensite matter.example.com.conf
    sudo /etc/init.d/apache2 restart

    Tras ejecutar estos comandos tendremos un nuevo virtual host redirigiendo el tráfico al puerto de Mattermost, adornado con un bonito certificado de Let’s Encrypt.

    Configuración de mattermost

    Ahora sólo nos queda abrir el navegador en https://matter.example.com y configurar el usuario administrador. También es necesario configurar el servidor de correo según el apartado Configuring Mattermost Server.

    by Diego Martínez Castañeda at May 20, 2019 10:12 AM

    May 17, 2019

    soyadmin.com

    Libro: Utilidades y herramientas de Software Libre de Jesús Carrius

    Título: UTILIDADES Y HERRAMIENTAS DE SOFTWARE LIBRE
    Autor:
    Jesús Carrius
    Páginas: 392 Páginas
    Tamaño: 17 MB
    Fomato: PDF

    Contenido:

    Por software libre se entiende aquel que no sólo permite al usuario final ejecutar los programas, sino que también le confiere la libertad de acceder al código fuente y adaptarlo a sus necesidades, distribuir copias del software a terceras personas y publicar nuevas versiones.

    Mucha gente, cuándo se habla de software libre, le viene a la cabeza las aplicaciones en modo texto que funcionan en los servidores, pero este movimiento también tiene a su disposición un gran número de utilidades para el usuario normal de escritorio.

    En el curso de Herramientas y utilidades veremos algunos de los programas pensados para el entorno de trabajo de un usuario final. Estos programas nos permiten navegar de manera segura por la red (Mozilla), gestionar nuestro correo electrónico y trabajar en grupo (Ximan Evolution) y crear documentos de texto, hojas de cálculo o presentaciones al estilo del Microsoft Office (OpenOffice.org).

    A lo largo del curso veremos cómo también podemos trabajar con estas herramientas libres en entornos propietarios como el Microsoft Windows aparte, claro está, del entorno GNU/Linux.

    Los contenidos del curso se estructuran en dos grandes bloques. El primero está dedicado a las herramientas de Internet, representado por las unidades 1 y 2. El resto del temario está dedicado al programa OpenOffice.org, que, dada su complejidad, requiere muchas más unidades.

    by Mauro at May 17, 2019 03:34 PM

    May 16, 2019

    RooTeando

    Entrevista En Diferido 9: Rodolfo Pilas.

    Hoy comenzamos una entrevista a Rodolfo Pilas, administrador de sistemas y creador del podcast deployandome.

    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?

     

    Rodolfo Pilas:  Difícil en unas líneas cuándo empecé mi vida laboral en los inicios de la computación personal, monté y ...

    May 16, 2019 01:40 PM

    May 15, 2019

    soyadmin.com

    Sacándole jugo al 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.

    Lo ejecutamos simplemente con un:

    # top

    A) Cabecera:

    1. Tiempo de actividad y carga media del sistema

    top - 14:26:24 up 172 days,  2:05,  1 user,  load average: 1.17, 1.49, 1.60

    En la primera línea nos muestra:
    Hora actual.
    Tiempo que ha estado el sistema encendido.
    Número de usuarios (mario y root).
    Carga media en intervalos de 5, 10 y 15 minutos respectivamente.

    2. Tareas

    La segunda línea muestra el total de tareas y procesos, los cuales pueden estar en diferentes estados:

    Tasks: 368 total,   2 running, 363 sleeping,   0 stopped,   3 zombie

    Running (ejecutar): procesos ejecutándose actualmente o preparados para ejecutarse.
    Sleeping (hibernar): procesos dormidos esperando que ocurra algo (depende del proceso) para ejecutarse.
    Stopped (detener): ejecución de proceso detenida.
    Zombie: el proceso no está siendo ejecutado. Estos procesos se quedan en este estado cuando el proceso que los ha iniciado muere (padre).

    3. Estados de la CPU

    Esta línea nos muestra los porcentajes de uso del procesador diferenciado por el uso que se le de.

    Cpu(s):  4.8%us,  2.2%sy,  0.0%ni, 86.1%id,  5.7%wa,  0.0%hi,  1.2%si,  0.0%st

    us (usuario): tiempo de CPU de usuario.
    sy (sistema): tiempo de CPU del kernel.
    id (inactivo): tiempo de CPU en procesos inactivos.
    wa (en espera): tiempo de CPU en procesos en espera.
    hi (interrupciones de hardware): interrupciones de hardware.
    si (interrupciones de software): tiempo de CPU en interrupciones de software.

    4. Memoria física

    Mem:   8147600k total,  7872232k used,   275368k free,   456392k buffers

    Memoria total.
    Memoria utilizada.
    Memoria libre.
    Memoria utilizada por buffer.

    5. Memoria virtual

    Swap: 10217300k total,  2418292k used,  7799008k free,  3901420k cached

    Memoria total.
    Memoria usada.
    Memoria libre.
    Memoria en caché.

    B) Luego en el cuerpo nos detalla los procesos, mostrándonos esta información:

    PID
    Es ID, es el identificador o número de proceso.

    USER
    Es el nombre de usuario propietario del proceso.

    PR
    Indica la prioridad de ejecución de un proceso, algunos procesos muestran el valor “rt” lo que significa que ese proceso se ejecuta en tiempo real.

    NI
    Este es el valor nice de un proceso. Un valor menor significa una prioridad mas alta.

    VIRT
    Es la memoria virtual usada por un proceso.

    RES
    El tamaño de memoria residente. Esta es la memoria física que no puede ser intercambiada (non-swappable)

    SHR
    Esta es la memoria compartida usada por un proceso.

    S
    Muestra el estado del proceso y puede tener alguno de los siguientes valores:
    D – espera no interrumpible
    R – En ejecución
    S – en espera
    T – En seguimiento o Detenido
    Z – Proceso en estado zombie

    %CPU
    porcentaje de uso de tiempo de CPU.

    %MEM
    porcentaje de memoria física usada por un proceso.

    TIME+
    Tiempo de CPU total que un proceso ha usado desde que inicio.

    COMMAND
    Es el comando con el cual fue iniciado el proceso.

    C) Comandos anexos al top:

    Presionando la tecla dentro del top verás lo que hace:

    “h” – Help
    Teclas “h” o “?” meustra la ayuda de los comandos interactivos.

    “Enter” o “Espacio” – Actualizar
    Actualizar los datos manualmente presionando la tecla “Enter” o la tecla “Espacio”.

    “d” o “s” – Intervalo de actualización automático
    Muestra un mensaje para que ingreses el número de segundos en lo que quieres que top actualice la información de forma automática.

    “R” – Invertir
    Al presionar “R” cambias el sentido ordenamiento actual, de menor a mayor o de mayor a menor.

    “Z” – cambiar color
    Al presiona “Z” puedes cambiar a la paleta de color

    “z” – cambia entre color o blanco/negro
    Puedes mostrar el comando top en color o blanco y negro.

    “u” – Procesos de un usuario
    Indica el nombre de un usuario para ver exclusivamente los procesos de ese usuario

    “k” – matar un proceso
    cuando presionas “k” puedes indicar un numero de PID al que deseas matar.

    “1” – ampiar/reducir detalles de CPU
    Si tu equipo tiene mas de 1 core o CPUs, puedes ver los detalles por cada CPU de forma general, este último es el modo por default.

    D) Top cuenta además con la posibilidad de pasarle comandos anexos a la ejecución, con una serie de switches además de las opciones anteriores:

    top -u usuario -> Muestra los procesos que estan corriendo con ese usuario y sus valores
    top -p PID -> muestra el proceso seleccionado y sus valores
    top -n numero -> Numero es la cantidad de iteraciones que va a tener el comando y luego se cerrara
    top -d numero -> “Numero” es el tiempop en segundos que va a esperar el comando para refrescar la lista.
    top -b -> Batch mode, ideal para mandar resultados desde top a otros programas

    by Mauro at May 15, 2019 09:29 PM

    5 maneras de chequear el Uso de Memoria (RAM) en Linux

    Hoy les dejo una serie de comandos muy útiles a la hora de chequear la memoria RAM de nuestros equipos. Si existe algo esencial para cualquier sysadmin es tener control y monitoreo sobre la RAM, parte fundamental de nuestro servicio o para verificar en que gastamos la RAM de nuestro equipo.

    Detallaremos comandos básicos para tener en cuenta, para saber cuanta memoria libre tenemos y en que la usamos.

    Comando FREE

    Free es un comando básico y sencillo, nos devuelve la info de nuestra memoria.

    # free
    total       used       free     shared    buffers     cached
    Mem:       8147604    8081720      65884          0     266752    3173976
    -/+ buffers/cache:    4640992    3506612
    Swap:      4192956        164    4192792

    Aqui veremos el total de memoria que poseemos, usada libre compartida el buffer y la cache de memoria.
    Podemos hacer un man free para ver de que manera sacarle mas provecho a este comando.

    MEMINFO

    Tal como indica el nombre del comando MEMINFO muestra un resumen de nuestra memoria RAM, asi como los usos de la misma.

    # cat /proc/meminfo
    MemTotal:      8147604 kB
    MemFree:        273928 kB
    Buffers:        143940 kB
    Cached:        3132532 kB
    SwapCached:          0 kB
    Active:        3642512 kB
    Inactive:      2573116 kB
    HighTotal:           0 kB
    HighFree:            0 kB
    LowTotal:      8147604 kB
    LowFree:        273928 kB
    SwapTotal:     4192956 kB
    SwapFree:      4192792 kB
    Dirty:          932368 kB
    Writeback:           0 kB
    AnonPages:     2939284 kB
    Mapped:          75932 kB
    Slab:          1509532 kB
    PageTables:      49284 kB
    NFS_Unstable:        0 kB
    Bounce:              0 kB
    CommitLimit:   8266756 kB
    Committed_AS:  8158408 kB
    VmallocTotal: 34359738364 kB
    VmallocUsed:    316496 kB
    VmallocChunk: 34359396276 kB
    HugePages_Total:     0
    HugePages_Free:      0
    HugePages_Rsvd:      0
    Hugepagesize:     2048 kB

    VMSTAT

    Con vmstat nos muestra una estadística de uso de nuestra memoria virtual

    # vmstat -s
    8147604  total memory
    7934956  used memory
    3714824  active memory
    2570984  inactive memory
    212648  free memory
    142352  buffer memory
    3140668  swap cache
    4192956  total swap
    164  used swap
    4192792  free swap
    57010231 non-nice user cpu ticks
    3929882 nice user cpu ticks
    16070480 system cpu ticks
    484095278 idle cpu ticks
    113936296 IO-wait cpu ticks
    79724 IRQ cpu ticks
    6548610 softirq cpu ticks
    0 stolen cpu ticks
    1179384504 pages paged in
    882418049 pages paged out
    0 pages swapped in
    41 pages swapped out
    1217828241 interrupts
    3220405806 CPU context switches
    1432912634 boot time
    10835647 forks

    Un comando muy parecido a Free con un buen detalle de nuestra RAM, podemos ver y saber más de vmstat con man vmstat

    Concatenando comandos:

    Este comando nos ordena los procesos por consumo de memoria, dejando al último aquel proceso que más uso le da a nuestra RAM

    # ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS
    50956 /usr/local/cpanel/3rdparty/bin/perl /usr/sbin/cxs --report /var/log/cxs.scan --logfile /var/log/cxs.log --mail [email protected] --smtp --exp --vir --opt
    58744 pkgacct - toma614 - av: 3
    60876 pkgacct - toma614 - av: 3
    101928 /usr/local/apache/bin/httpd -k start -DSSL
    101988 /usr/local/apache/bin/httpd -k start -DSSL
    101992 /usr/local/apache/bin/httpd -k start -DSSL
    101996 /usr/local/apache/bin/httpd -k start -DSSL
    102048 /usr/local/apache/bin/httpd -k start -DSSL
    102104 /usr/local/apache/bin/httpd -k start -DSSL
    102136 /usr/local/apache/bin/httpd -k start -DSSL
    102172 /usr/local/apache/bin/httpd -k start -DSSL
    102184 /usr/local/apache/bin/httpd -k start -DSSL
    102216 /usr/local/apache/bin/httpd -k start -DSSL
    103224 /usr/local/apache/bin/httpd -k start -DSSL
    295540 /usr/local/cpanel/3rdparty/bin/clamd
    374144 cxswatch
    1537420 /usr/sbin/mysqld --basedir=/usr --datadir=/backup/mysqldata --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/log/mysqld.log --open-files-limit

    Excelente comando para lograr identificar el posible causante de problemas.

    TOP

    Nuestro querido y más usado TOP nos muestra no solo una estadística el uso de memoria, sino también el consumo por procesos.

    Puedes ver este Post donde hablamos y mucho del TOP

    by Mauro at May 15, 2019 01:23 PM

    blog de Rodolfo Pilas

    El primer contenedor Docker

    La primera vez que se presentó un contenedor Docker en forma pública lo hizo Solomon Hykes en la conferencia PyCon Santa Clara de 2013.

    Es increíble y emocionante cómo Solomon describe rápidamente lo que hace un contenedor (minuto 2:30) que ejecuta un simple echo hello world.

    1. se genera la configuración de un contenedor
    2. se aloja el filesystem (se copia la imagen a una carpeta)
    3. se monta la capa de escritura del contenedor
    4. se configura la interfaz de red
    5. se gestiona una dirección IP y se configura
    6. se configura un NAT para comunicar el contenedor
    7. se ejecuta el comando y se despliega la salida
    8. se apaga el contenedor (o se destruye)

    e inmediatamente recibe un aplauso del público, que asiste emocionado a lo que nosotros hoy día hacemos normalmente, sin emoción.

    by pilasguru at May 15, 2019 11:55 AM

    May 13, 2019

    soyadmin.com

    Libro: CORRE LINUX CORRE de Fernando Monroy

    Título: CORRE LINUX CORRE
    Autor: Fernando Monroy
    Año: 2013
    Páginas: 122 páginas
    Tamaño: 16.47 MB
    Fomato: PDF

     

     

     

     

     

    Contenido:
    Este es un libro NO oficial basado en la distribución de Ubuntu (Gnu Linux), esta desarrollado y pensado para todos aquellos que quieran iniciarse en el mundo de Gnu Linux.

    Los procesos se explican de manera sencilla, de forma gráfica y didácticamente. Cuando uses este libro sentirás un «acompañamiento» como si alguien estuviera guiándote de forma presencial, pues así esta pensado.

    Se reconoce y respeta que tanto la marca Linux como Ubuntu se encuentran registradas y se hace énfasis que este es un Libro No Oficial.

    En Gnu Linux existen diferentes maneras de hacer los procesos de instalación y configuración, pero en esta guía se presenta el método más cómodo para el usuario novato.

    by Mauro at May 13, 2019 09:14 PM

    Instalar Fuentes Windows en Ubuntu y derivados y solución al error ttf-mscorefonts-installer.

    Tratando de instalar las fuentes de Microsoft en Ubuntu o algún derivado me devolvía este error, por lo cual investigando un poco me di cuenta que no era algo normal pero si muy recurrente.

    1) Con el comando:

    # sudo apt-get install ttf-mscorefonts-installer

    2) Me devolvía este error:

    dpkg: error processing ttf-mscorefonts-installer (--configure):
    package ttf-mscorefonts-installer is not ready for configuration
    cannot configure (current status `half-installed')
    Errors were encountered while processing:
    ttf-mscorefonts-installer
    D: Sub-process /usr/bin/dpkg returned an error code (1)

    3) La solución es realizar una limpieza de los paquetes y luego reintentar la instalación completa del archivo de fuentes:

    # sudo apt-get clean
    # sudo apt-get install --reinstall ttf-mscorefonts-installer

    4) Esto nos abrirá un cuadro de diálogo que nos muestra la licencia EULA de las fuentes, le ponemos OK (debemos usar la tecla TAB para desplazarnos hasta el OK)

    5) Luego nos pide que aceptemos dicha licencia, le damos que SI (debemos usar la tecla TAB para desplazarnos hasta el Yes)

    6) Al final hace la instalación de las fuentes y nos mostrará

    All done, no errors.
    All fonts downloaded and installed.
    Processing triggers for fontconfig (2.11.0-0ubuntu4) ...
    Setting up ttf-mscorefonts-installer (3.4+nmu1ubuntu1) ...

    by Mauro at May 13, 2019 01:03 PM

    May 10, 2019

    soyadmin.com

    Jugando con la paquetería en ARCH (Manjaro – Antergos – Chakra)

    En este post hablaremos un poco de los comienzos en Manjaro, si luego de una instalación de cero. Como entender la paquetería de Manjaro (Arch) y conocer los comandos básicos para Instalar, Actualizar, Modificar y Eliminar paquetes.

    Como ya todos sabrán Manjaro está basada en Arch y como tal utiliza PACMAN como gestor de paquetes y binarios de los repositorios originales de Arch Linux. AUR es el repositorio comunitario y YAY vendría a ser un complemento de PACMAN para poder compilar y dar forma a AUR. Esto sería a grandes rasgos, ahora detallemos un poco la funcion de PACMAN, AUR y YAY:

    PACMAN
    En Linux el soft está en binarios, cada rama de distribuciones tienen sus propios intérpretes de dichos binarios, (por ejemplo apt-get en Debian y derivados o yum en Fedora y RedHat, etc) PACMAN vendría a ser el gestor de paquetes de binarios de Manjaro (Arch) el cual nos permitirá instalar, actualizar eliminar estos paquetes. En los repositorios Arch los paquetes vienen compilados y se dividen de la siguiente manera:

    Core: Paquetes esenciales del sistema, como el kernel Linux o las herramientas de GNU.
    Extra: Paquetes no esenciales, pero que son importantes como entornos de escritorio y programas.
    Testing: Paquetes en estado de pruebas, que luego van a Core o a Extra.
    Community: Paquetes de AUR más votados por la comunidad de usuarios y adoptados por un Trusted User(usuario que el equipo de Arch considera de confianza).
    Community Testing: Contiene paquetes de AUR en estado de prueba para ser luego transferidos a Community.
    Multilib: repositorio centralizado para usuarios x86_64, para dar soporte más fácilmente a aplicaciones 32-bit en ambientes 64-bit.
    Multilib-testing: con paquetes de prueba para multilib.

    AUR (Arch Users Repository)
    Es el Reporsitorio de la Comunidad, en el cual se incluyen miles y miles de paquetes de código fuente. AUR centraliza el software subido por la comunidad junto con su respectivo PKGBUILD. Esto le permite a cualquier usuario descargar el paquete, compilarlo fácilmente usando makepkg e instalarlo usando Pacman. Aunque suene medio complejo no es así.

    YAY 
    Llega para facilitarnos las cosas, es un complemento de Pacman que nos compila e instala paquetes AUR. Además de esto podemos usarlo para actualizar estos paquetes a sus últimas versiones, es decir hace una indexación de AUR y chequea si hay actualizaciones. Al estar funcionando bajo Pacman también actualiza los paquetes oficiales de Arch.

    Como se usan Pacman y Yay?

    pacman -S “paquete” (Instala un paquete)
    pacman -Sy “paquete” (Sincroniza repositorios e instala el paquete)
    pacman -Sy (Sincroniza repositorios)
    pacman -Syy (Fuerza la sincronización de repositorios incluso para paquetes que parecen actualizados)
    pacman -Syu (Sincroniza repositorios y actualiza paquetes)
    pacman -Syyu (Fuerza sincronización y actualiza paquetes)
    pacman -Su (Actualiza paquetes sin sincronizar repositorios)
    pacman -Ss “paquete” (Busca un paquete)
    pacman -Si “paquete” (Muestra información detallada de un paquete)
    pacman -Sg “grupo” (Lista los paquetes que pertenecen a un grupo)
    pacman -Qs “paquete” (Busca un paquete instalado)
    pacman -Qi “paquete” (Muestra información detallada de un paquete instalado)
    pacman -Qdt (Muestra paquetes huérfanos)
    pacman -R “paquete” (Borra paquete sin sus dependencias)
    pacman -Rs “paquete” (Borra paquete y sus dependencias no utilizadas)
    
    yay -S "paquete" (Busca e instala el paquete, si es de los repositorios oficiales lo instala. Si es de AUR, lo compila y lo instala)
    yay -Syua (Sincroniza, actualiza y comprueba actualizaciones de paquetes AUR instalados)

    Espero les sirva este principio de tutorial, el cual sirve para cualquier distro ARCH. Saludos!

    by Mauro at May 10, 2019 08:58 PM

    Como saber que comandos usamos más en nuestra consola?

    Este comando nos tirará un resumen de los 10 top comandos usados más veces en nuestra consola, ya sea PC o servidor…

    En centOS RHEL o Fedora:

    history | awk '{print $4}' | sort | uniq -c | sort -rn | head

    En Ubuntu y derivados:

    history | awk '{print $2}' | sort | uniq -c | sort -rn | head

    Si bien el comando es igual en cada distro, cambia la distribución de las columnas. Un comando que no sirve más que para hacer un resumen o estadísticas de lo que hacemos normalmente en nuestro server.

    by Mauro at May 10, 2019 01:17 PM

    May 09, 2019

    soyadmin.com

    Terminal: NeoFetch & Screenfetch 2 herramientas para consultar la Información del Sistema en Linux

    Hoy les traemos 2 programas perfectamente funcionales y de hecho muy parecidos entre sí, con los cuales podremos ver la Información Básica de Nuestro Sistema, esto realizado automáticamente desde nuestra terminal.

    NeoFetch y ScreenFetch escanean nuestro sistema y recopilan información rápida y básica sobre lo que poseemos tanto de Software como de Hardware. Esto incluye:

    Hoy les traemos 2 programas perfectamente funcionales y de hecho muy parecidos entre sí, con los cuales podremos ver la Información Básica de Nuestro Sistema, esto realizado automáticamente desde nuestra terminal.

    NeoFetch y ScreenFetch escanean nuestro sistema y recopilan información rápida y básica sobre lo que poseemos tanto de Software como de Hardware. Esto incluye:
    El logo de nuestra distribución.
    Nuestro nombre de usuario y el nombre del equipo.
    La versión del Kernel que estamos usando.
    El tiempo que lleva abierto nuestro ordenador.
    El número de paquetes que tenemos instalado en nuestro sistema operativo.
    La versión de Bash que estamos usando.
    La resolución de nuestra pantalla.
    El entorno de escritorio que estamos utilizando.
    El tema que estamos usando en nuestro sistema operativo.
    El tema de iconos que estamos usando.
    El tipo de fuente que tenemos configurada.
    El procesador que tiene nuestro ordenador.
    La tarjeta gráfica que tiene nuestro ordenador.
    La memoria RAM usada y disponible de nuestro ordenador.

     

    1) NEOFETCH
    Está escrito en Bash, muestra el logotipo de nuestra distribución base en ASCII. Muestra y detalla información que si bien parece básica puede resultarnos muy útil y sin necesidad de diversos comandos o de aplicaciones complejas.

    NeoFetch al estar diseñado en Bash puede ser utilizado en cualquier sistema que permita ejecutar Bash, lo que significa que se puede usar en Linux, MacOS, iOS, BSD, Solaris, Android y Windows 10. Un súper multiplataformas.

    Como lo Instalamos:
    DEBIAN, UBUNTU Y DERIVADAS:

    sudo add-apt-repository ppa:dawidd0811/neofetch
    sudo apt update && sudo apt install neofetch

    ARCH LINUX Y DERIVADAS:

    yay -S neofetch

    FEDORA:

    su -c
    dnf install dnf-plugins-core
    dnf copr enable konimex/neofetch
    dnf install neofetch

    Para ejecutarlo una vez instalado, simplemente:

    neofetch

    Para ver la ayuda y complementos:

    neofetch --help

     

    2) SCREENFETCH
    ScreenFetch está diseñado en Bash y al igual que NeoFetch nos ayuda a ver y tener una idea básica de la Información de nuestro Sistema. Presentada elegantemente con el logo de la distro que estamos ejecutando en nuestra PC.

    Como lo Instalamos:
    DEBIAN, UBUNTU Y DERIVADAS:

    sudo apt-get install screenfetch

    ARCH LINUX Y DERIVADAS:

    sudo pacman -S screenfetch

    FEDORA:

    sudo dnf install screenfetch

    Para ejecutarlo una vez instalado, simplemente:

    screenfetch

    Para ver la ayuda y complementos:

    man screenfetch

     

    Estas son 2 alternativas muy válidas para tener un pantallazo general del sistema que poseemos, tanto en Hardware como en Software. Fáciles de usar, se pueden configurar y editar la información a mostrar, todo esto directamente desde la terminal 🙂

    by Mauro at May 09, 2019 09:42 PM

    Desfragmentando nuestro sistema Linux

    Primero… ¿es necesario realizar una desfragmentación de nuestro sistema linux? existe una creencia de que no es necesario realizar una desframentación de nuestro disco o partición debido a que Linux no es Windows…

    Esto es en parte así pero, si bien los sisitemas ZFS, EXT, JFS, XFS, ReiserFS, Btrfs tienen maneras inteligentes de asignar ficheros, lo cual hace que se realice una fragmentación de los mismos. Aunque luego de años de uso de un sistema puede suceder que nuestras particiones sobre todo queden con pequeñas fragmentaciones.

    e4defrag es una herramienta que nos permitirá desfragmentar nuestro disco duro desde nuestra consola, es aplicable solo a sistemas EXT4, la misma nos solucionaría cualquier pequeño problema de fragmentación, sobre todo si posees un disco duro pequeño.

    Esta herramienta viene por defecto en la mayoría de nuestras distros:
    Como se usa, recuerda que es necesario el uso de permisos de root y que el sistema de archivos debe ser EXT4.

    1) Vemos si es necesario defragmentar:

    # e4defrag -c /ruta

    Aqui deberemos prestar atención al valor de «Fragmentation score» el cual nos indicará cuan fragmentado esta nuestro sistema. La recomendación es que sólo se desfragmente si el valor es mayor a 50.

    2) Procederemos a la desfragmentación:

    # e4defrag /ruta

    Ejemplos:

    # e4defrag /dev/sda*
    # e4defrag /home

    Esperamos a que el proceso termine y con eso tendremos nuestro sistema desfragmentado, podemos tirar nuevamente el 1º comando para ver que el Fragmentation score ha bajado.

    by Mauro at May 09, 2019 01:27 PM

    May 08, 2019

    soyadmin.com

    Timeshift un sistema de Backups and Restore para Linux.

    Todos sabemos o comprendemos que la rotura de un disco o una mala jugada de un comando pasado bajo sudo puede hacer que nuestros archivos queden fritos.

    Ante esto todos creo que somos conscientes que hoy en día sea el SO que sea lo mejor es siempre tener a mano un respaldo, backup, copia de seguridad o como quieran llamarlo.

    Existen muchísimas herramientas o aplicaciones, incluso varias distribuciones traen su propia app encargada de hacer esta tarea de backups.

    Hoy les presento a Timeshift, un excelente software que nos puede salvar la vida ante alguna catástrofe…
    Timeshift sirve para restauración de nuestro sistema completo, es decir no solo backupea archivos personales, sino que realiza una copia completa o espejo de nuestra PC, toda nuestra distribución de principio a fin.
    En caso de comprar un nuevo disco o pc y deseamos replicar todo lo que teníamos. En caso de una configuración, instalación extrema que pueda salir mal, sirve como regresión a un estado anterior en el cual todo funcionaba correctamente.

    Timeshift no solo copia nuestros archivos personales o nuestras aplicaciones, captura el SO completo con configuraciones, aplicaciones, personalizaciones en una sola imagen.

     

    Como lo instalamos?
    Ubuntu y derivadas:

    sudo apt-add-repository -y ppa:teejee2008/ppa
    sudo apt-get update
    sudo apt-get install timeshift

    Arch y derivadas:

    yaourt timeshift

     

    Como Funciona?
    Hacer un respaldo:
    Lo primero será iniciar nuestro programa desde el menú, nos pide permisos de root e inicia un Setup Wizard donde nos guiará paso a paso como hacer nuestro primer backup. Le damos a finalizar así vemos directamente las opciones de este excelente programa.

    Si le damos a “Create” empezará directamente la copia de seguridad con los valores de configuración defaults, por lo que lo mejor es arrancar por las opciones, vamos a “Settings” y veremos:

    Type: Nos permite elegir el modo de respaldo, yo lo deje en RSYNC que hace un respaldo completo del sistema por primera vez y luego incrementales segun la peridicidad que elijamos. Luego esta tambien disponible la opción de BTRFS

    Location: Tenemos un listado de nuestros discos y particiones disponibles donde resguardar nuestra información.

    Schedule: Nos permitirá elegir la periodicidad con la que se realizan los respaldos, y la cantidad de copias que podemos guardar de cada uno. Por ejemplo hacemos respaldo semanalaes y guardamos 2 semanas.

    Filters: Nos permite agregar carpetas o archivos que no queremos que respalde. Por ejemplo en mi caso saco las carpetas de Dropbox y Mega ya que sincronizo nuevamente si en algún momento tengo problemas.

    Dependiendo de lo que deseemos, podemos darle a “Create” y empezará nuestro respaldo o bien cerramos la aplicación y esperamos a que se autoejecute con la periodicidad que elegimos en Schedule.

     

    ¿Ahora, que pasa si necesitamos restaurar?
    En caso de que llegue ese momento donde nuestro sistema se derritió, necesitaremos acceder a nuestra PC mediante un Live USB de la distro que deseemos. Aunque si nuestra pc está operativa, timeshift permite que restauremos un respaldo desde nuestro mismo del linux operativo.

     

    Los pasos son fáciles:
    Instalamos Timeshift y este buscará en los discos o extraibles las copias de seguridad que poseamos para proceder a restaurarlas.

    Una vez que seleccionamos la copia deseada, vamos a “Restore” y alli nos pedirá que elijamos donde restaurar y también nos permitirá elegir que aplicaciones excluir en caso de que lo querramos.

     

    Desinstalar:
    Si vemos que timeshift no nos convence y queremos eliminarlo de nuestro sistema, lo primero es ingresar y eliminar cada respaldo desde la misma aplicación.
    Luego de eso desinstalamos con:

    sudo timeshift-uninstall

    by Mauro at May 08, 2019 07:45 PM