Si eres un entusiasta del software libre, te enseñaré a configurar un DNS dinámico con Dynu, un estupendo servicio que no tiene nada qué pedirle a viejos conocidos como no-ip.com o dyndns, por ejemplo ya que seguramente has tenido en algún momento la necesidad de montarte tu propio servidor web utilizando el servicio de Internet que tienes en casa; no obstante, es muy probable que seguramente tengas un servicio doméstico asimétrico que cambia de IP cada vez que se reinicia o según los periodos de “refresco” que haya determinado el proveedor.
Primero que nada, ¿qué es un DNS Dinámico?
Según la Wikipedia, el DNS dinámico (DDNS) es un servicio que permite la actualización en tiempo real de la información sobre nombres de dominio situada en un servidor de nombres. El uso más común que se le da es permitir la asignación de un nombre de dominio de Internet a un dispositivo con dirección IP variable (dinámica). Esto permite conectarse con la máquina en cuestión sin necesidad de tener conocimiento de que dirección IP posee en ese momento.
El DNS dinámico hace posible utilizar un software de servidor en un dispositivo con dirección IP dinámica (como la suelen facilitar muchos ISP) para, por ejemplo, alojar un sitio web en la PC de nuestra casa, sin necesidad de contratar un hosting de terceros; pero hay que tener en cuenta que las PC caseras posiblemente no estén tan bien dotadas como los servidores de un Datacenter, ni tengan toda la infraestructura que poseen estos lugares.
Manos a la obra
Como primer paso, deberás haberte creado una cuenta en Dynu.com, asegurarte de tener tu servidor Apache Ngix disponible, haber habilitado los puertos necesarios (http, https, etc.) en tu router y vale, tener técnicamente resuelta la accesabilidad a tu servidor web. En mi caso, dejé abierto el puerto 80 y 443 en mi router con UFW configurado y ya está visible al público mediante mi IP pública.
En este caso, en Dynu, he creado el subdominio keivinwedell.theworkpc.com dentro de un grupo llamado ToshibaLaptop para que cuando alguien consulte esta URL, sea redireccionado automáticamente al servidor con IP dinámica que tengo en casa.
Descargando el cliente Dynu para Linux
El cliente de actualización de IP del DNS Dinámico con Dynu, es una estupenda herramienta que en intervalos de tiempo regulares, realiza la consulta y actualización de la dirección IP pública de nuestro servidor para asociarla a un dominio o subdominio.
Para comenzar a hacer uso de la herramienta, solo tienes que estar logueado y descargar el cliente para Linux. En mi caso, suelo utilizar Debian por lo cual, descargué el archivo .DEB correspondiente desde https://www.dynu.com/en-US/Resources/Downloads:
En mi caso particular, lo obtuve ejecutando el siguiente comando:
su -
wget https://www.wiredblade.com/files/linux/dynuiuc_2.6.2-2ubuntu16_amd64.deb
Y para realizar la instalación del cliente DNS dinámico con Dynu, solo necesitas ejecutar el siguiente comando:
dpkg -i dynuiuc_2.6.2-2ubuntu16_amd64.deb
Con esto, ya habrá quedado instalado en nuestro sistema; ahora, vamos a configurarlo…
El archivo de configuración de mi DNS dinámico con Dynu
Este paso es muy simple, solo tienes que editar el archivo de configuración ubicado en la ruta /etc/dynuiuc/dynuiuc.conf de la siguiente manera:
nano /etc/dynuiuc/dynuiuc.conf
Y en su contenido, deberá tener algo como esto:
A continuación, te explico cada valor:
username YOURUSERNAME # Tu nombre de usuario en Dynu. password YOURPASSWORD # La contraseña de tu cuenta en Dynu. location LOCATIONNAME # Puede quedar vacío; no obstante si tienes un grupo que aglutina varios servicios, pon el nombre del grupo asignado en el panel de control. ipv4 true # Puede ser verdadero o falso, déjalo como está. ipv6 true # Puede ser verdadero o falso, déjalo como está. pollinterval 300 # El intervalo de actualización la IP en segundos; el mínimo es 120 (2 minutos). debug false # Puede ser verdadero o falso, déjalo como está. quiet true # Puede ser verdadero o falso, déjalo como está.
Si todo está listo, hacemos una primera prueba para verificar el estado del servicio:
systemctl status dynuiuc.service
Ahora, echamos a andar el servicio en segundo plano:
systemctl start dynuiuc.service
Verificamos nuevamente su estado:
systemctl status dynuiuc.service
Y ahora, finalmente, configuramos el cliente de DNS dinámico con Dynu para que se cargue en segundo plano al inicio:
systemctl enable dynuiuc.service
¡Y es todo! Ya tienes tu cliente configurado y funcionando. Si entras a tu panel de control, observarás que la IP habrá cambiado junto con la fecha y hora de la última actualización:
Si eres administrador de plataformas de e-learning, director de una escuela, administrador de sistemas o profesor, seguramente te habrás preguntado en alguna ocasión cuántos usuarios soporta Moodle. No hay una respuesta simple o sencilla para ello ya que depende de varios factores por lo que en este artículo, te ayudaré a tener una mayor comprensión del tema para que evalúes y elijas correctamente lo que se ajuste a tu presupuesto.
Un servidor, tradicionalmente definido, es un equipo de cómputo conectado a una red de computadoras, con software configurado para tal propósito que tiene la capacidad de atender o dar respuesta a todas y cada una de las peticiones que recibe a través de la misma, según las especificaciones o protocolo utilizado y configurado para ello.
Por ejemplo, cuando Tim Berners Lee creó las especificaciones del protocolo HTTP para dar paso a la World Wide Web, configuró una computadora NeXT para desplegar y servir páginas web o “de hipertexto” a sus compañeros científicos en el CERN de Suiza, algo novedoso y completamente revolucionario.
En este sentido, el puerto asignado al protocolo HTTP fue el puerto 80. No obstante lo anterior, previo a esto, ya existía el puerto 20 para conexiones mediante consola a través de Telnet, puerto 21 para transferencia de archivos mediante FTP, puerto 22 para conexiones cifradas mediante consola mediante SSH, puerto 25 para correo electrónico y así sucesivamente. Para que un servidor o equipo de cómputo permitiese la conexión a estos puertos en una red, era necesario configurar en dicho equipo cada uno de ellos mediante programas que se ejecutan en memoria como “servicios”.
Así, en nuestra comprensión de qué es un “servidor”, podemos decir que cada puerto o protocolo tiene como misión y propósito proveer un “servicio” o conjunto de “servicios” a nuestros “clientes” según el protocolo que utilice. Así, un servidor web, puede ser entendido como un programa (el servidor web más popular es Apache seguido de Nginx mediante el puerto 80 (HTTP) o puerto 443 (HTTPS), el cual provee a nuestros usuarios del acceso a páginas web planas o de hipertexto (HTML) o bien, páginas generadas a través de procesadores de páginas de hipertexto como PHP, Phyton, etc.
Si un cliente (usuario, visitante, cibernauta, etc.) realiza una petición a nuestro servidor, de manera técnica lo que podemos decir es que solicita una respuesta a un servicio previamente configurado (servidor web Apache o servidor web Nginx) que está funcionando en ese momento en memoria para responder y dar respuesta a ello.
Con esto en consideración, y gracias a la generosidad de los entusiastas del software libre, hoy en día un servidor web puede cubrir múltiples funciones y satisfacer múltiples demandas.
¿Qué recursos necesito para implementar un servidor web?
Por ello, es importante mencionar que para que un sitio web complejo pueda funcionar basado en GNU/Linux, Apache, PHP y MySQL o MaríaDB (un servidor LAMP), a grandes rasgos, necesitarás de:
Un servidor físico o virtual con conexión a Internet, espacio en disco duro suficiente, memoria RAM y otros recursos de misión crítica como procesador, sistema operativo, etc.
Una dirección IP pública estática (o dinámica, más complejo de usar, pero no imposible de configurar) para tu servidor físico o virtual.
Un software que actúe como servicio de servidor web como Apache o Nginx para el procesamiento e interpretación de páginas HTML mediante el protocolo HTTP.
Un procesador o intérprete como PHP que facilite la generación dinámica de páginas de hipertexto.
Un servicio que actúe como servidor de base de datos como MariaDB, PostgreSQL o MySQL.
Adicionalmente, si quieres tener URLs amigables para tu sitio web, requerirás de:
Un nombre de dominio contratado del tipo misitioweb.com.
Un servidor DNS que redireccione tu dominio contratado a la dirección IP pública estática (o dinámica) de tu servidor física o virtual.
Todo esto, en conjunto, requiere de una adecuada instalación instalación y configuración de paquetes y librerías que permitan optimizar y garantizar la disponibilidad de tus servicios, así como una correcta resolución de peticiones de los clientes, usuarios o visitantes de tu sitio web.
Con todo, ¿cuántos usuarios soporta Moodle?
En este punto, vamos a resolver tu duda y tratar de responder lo más objetivamente: antes de preguntarte cuántos usuarios soporta Moodle, debes tratar de encuadrar y definir primero tu problemática o escenario deseado en los siguientes términos:
¿Qué experiencia de usuario deseas brindar a tus alumnos y profesores?
¿Cuántos usuarios en total tienes programado atender?
¿Cuántos de estos usuarios serán concurrentes o se conectarán simultáneamente? ¿En qué momentos podrías tener alta demanda que derive en cuellos de botella?
¿Qué tanta tolerancia tendrías a respuestas lentas del servidor en horas pico?
¿Cuáles son tus perspectivas de crecimiento en el corto, mediano y largo plazo?
Con lo anterior en consideración, te daré un dato: Moodle es un LMS (Learning Management System) súmamente robusto que ofrece una gran cantidad de recursos para diseñar y programar nuestros cursos. Para que te des una idea, el código fuente o paquete comprimido de la versión de Moodle 4.2+, tiene un tamaño de archivo de 62.2 MB en formato tar.gz. Estos datos son determinantes para calcular cuántos usuarios soporta Moodle.
Ello no quiere decir que esos recursos ya descomprimidos estarán simultáneamente procesándose completa y enteramente en la memoria RAM del servidor; sin embargo, es un dato de referencia que no debemos perder de vista.
Con ello, más o menos desde la versión 1.x de Moodle, surgió una recomendación sobre la cantidad de memoria RAM que debe tener un servidor web para atender N número de usuarios: por cada 10 – 20 usuarios concurrentes, se recomienda tener disponibles 1 GB de memoria RAM.
A grandes rasgos, si tienes una escuela con 100 alumnos y esperas que los 100 se conecten al mismo tiempo (concurrencia), deberías de tener 5 GB de memoria RAM + unos 2 o 4 GB adicionales para al sistema operativo de tu servidor web Apache o Ngix.
Ahora bien, es probable que tus usuarios no estarán conectados las 24 hrs. del día de manera concurrente o simultánea sino que existan “eventos” más o menos “dispersos” a lo largo del tiempo por lo que, a manera de “riesgo calculado” podrías decidir decir: voy a destinar 2 GB de memoria RAM para Moodle + 2 GB para mi sistema operativo con los cuales atenderé a 100 usuarios en total, pero entiendo y comprendo que 40 usuarios concurrentes están garantizados.
Este es un escenario o panorama con riesgos calculados y tolerados.
¿Cuál es el escenario que te resulta ideal? ¿Qué tanta tolerancia tienes a probables demoras, fallos o errores?
En ambientes GNU/Linux, existen múltiples formas, si no tienes memoria RAM física pero sí un disco duro de estado sólido, para conseguir “memoria” adicional pero eso, será motivo de otro artículo.
Calcular el número de usuarios que soporta Moodle
Te dejo aquí un par de calculadoras en línea que he elaborado para que pueda obtener un estimado de:
Cantidad de usuarios concurrentes en Moodle que soporta un servidor web en función de la cantidad de memoria RAM disponible.
Cantidad de memoria RAM que necesitas para atender a N número de usuarios de Moodle de manera concurrente.
"{{getWooProductName}}" has been added to your cart
pro
Feature Available in Pro Version
[contact-form-7 id=""]
Name*
Email*
Phone*
Message
Payment methods
pro
Feature Available in Pro Version
Credit Card details
pro
Feature Available in Pro Version
Conclusiones
Como has podido observar, el performance o desempeño esperado de un servidor web y, sobre todo, de una instalación de Moodle, depende de una gran cantidad de factores como la cantidad de dinero que estás dispuesto a invertir en los recursos necesarios de servidor (memoria, disco, ancho de banda), riesgos tolerados, concurrencia de usuarios estimada, etc.
Ahora bien, cada instalación de Moodle es distinta así como el comportamiento de los usuarios.
Generalmente la concurrencia de usuarios suele darse en periodos de exámenes, por ejemplo, en las noches (un hábito que he observado sobre las nuevas generaciones o personas que trabajan en mi experiencia), etc.
Por lo anterior, en casi la totalidad de casos no es necesario destinar y garantizar el 100% de cumplimiento en recursos del servidor. Al final del día, la decisión es tuya; tú decides cuánto estás dispuesto a invertir y determinar qué calidad en la experiencia de usuario deseas brindar a tus usuarios.
Si deseas profundizar más sobre el tema, te recomiendo los siguientes artículos de Moodle:
Si eres usuario de una computadora con dual boot instalado para trabajar con Windows y Linux, es muy probable que hayas tenido el problema de no poder “escribir”, crear directorios, copiar, pegar o mover archivos en la propia partición donde está instalado Windows por lo que en esta ocasión, te mostraré cómo configurar tu equipo para activar permisos de escritura a particiones Windows desde Linux.
Contexto
Desde el lanzamiento de Windows 8, Microsoft implementó una función un poco “interesante” denominada “fastboot” que tiene como propósito “iniciar” el sistema operativo de manera más rápida para una mejor experiencia de usuario. No obstante lo anterior, desde un punto de vista, “fastboot” es en realidad un “modelo” de “hibernación” en donde, cuando tú lanzas la señal de apagar el equipo, Windows “guarda” un “estado” de tu sistema operativo (kernel y drivers) en un archivo de hibernación que, posteriormente, cuando “enciendes” nuevamente tu máquina, no hace más que “recuperar” ese estado para “iniciar” más rápido.
De cierta manera, esta “función” nos “ayuda” a que tengamos la “apariencia “impresión” de que el inicio de Windows es más rápido pero, para los linuxeros como nosotros, nos impide trabajar con otros sistemas operativos con normalidad ya que, por seguridad, si una partición contiene un sistema operativo “hibernado”, por defecto, GNU/Linux, no te permitirá escribir o realizar cambios en dicho disco o partición.
¿Cómo activar permisos de escritura a particiones Windows en Linux para crear carpetas, copiar archivos, etc.?
Si tienes un caso como el que te muestro en este artículo, y una vez que estés seguro de que aún y cuando tu partición se encuentre montada y legible, lo primero que tienes que hacer es reiniciar tu computadora e iniciar Windows.
Sin importar si tienes Windows 10 o Windows 11, lo primero que te recomiendo hacer es escribir la palabra:
Elegir un plan de energía
Te aparecerá algo como esto, solo deberás hacer clic sobre la opción correspondiente.
Con lo anterior, se abrirá una ventana y sección específica de Opciones de energía en el antiguo Panel de Control de Windows como este:
Aquí, solo deberás hacer clic en la columna izquierda de tu ventana sobre la opción “Elegir la acción del botón de inicio/apagado”. Hecho lo anterior, te aparecerá lo siguiente:
Ahora, en esta pantalla, para poder hacer modificaciones en las opciones, haz clic en la opción “Cambiar la configuración no disponible actualmente”, con lo cual, se habilitarán las casillas de verificación de las opciones “Activar inicio rápido (recomendado)”, “Suspender”, etc.
Con lo anterior, te serán habilitadas las casillas de verificación del apartado de “Configuración de apagado”.
Aquí, solo tienes que desactivar la opción “Activar inicio rápido (recomendado)” para inhabilitar ese “inicio híbrido” de Windows…
…y solo restaría hacer clic en “Guardar cambios” y reiniciar tu equipo.
Ahora, de regreso a nuestra sesión en GNU/Linux, puedes montar tu partición y verificar que con lo anterior, ya estarán habilitadas las opciones de crear una carpeta nueva, copiar, cortar, renombrar, mover a la papelera o eliminar cualquier archivo o carpeta.
Con todo lo anterior, espero que puedas disfrutar de este truco y conseguir que tu experiencia en GNU/Linux al momento de trabajar archivos te brinde la mejor experiencia posible.
GNU/Linux es un gran proyecto que bien vale mucho la pena usar y aprovechar para mantener la seguridad y estabilidad de tu vida digital.
La línea Predator de computadoras tipo laptop de Acer, incorporan un software llamado PredatorSense a través del cual, como usuarios, podemos controlar el encendido o apagado (manual o automático) de nuestra computadora. Desafortunadamente, PredatorSense solo funciona en Windows por lo que, aquellos usuarios que utilizamos sistemas operativos alternativos basados en GNU/Linux, no podemos disponer de una herramiento oficial para ello. Por ello, en esta ocasión, echaremos mano de algunos hacks y utilidades que he encontrado por ahi para conseguir encender el ventilador de una laptop Acer Predator Helios 300 PH315-51 en Linux. ¡Veamos!
PredatorSense para Windows
Como te lo comentaba al inicio del post, PredatorSense no tiene otra función más que la de controlar el ventilador de tu computadora de manera manual o automática y en distintos grados de intensidad.
Si realizas una instalación limpia de Windows y borraste por alguna razón la partición de drivers y utilidades de tu PC, es recomendable que descargues e instales esta herramienta. El link del sitio es: https://www.acer.com/ac/es/ES/content/predatorsense; no obstante, descárgala directamente desde la sección de utilidades al realizar una búsqueda de drivers para tu modelo específico de computadora.
Encender el ventilador de una laptop Acer Predator Helios 300 PH315-51 en Linux
Bien. Como te comentaba: no existe una herramienta oficial de Acer para hacer funcionar los ventiladores o fans de nuestra laptop en GNU/Linux, lo cual es decepcionante. Para serte franco, y desde mi punto de vista, los fabricantes tendrían que ofrecer las herramientas y detalles técnicos mínimos para aprovechar las funciones de nuestros equipos sin importar su sistema operativo (que al día de hoy, bien puede ser GNU/Linux, Windows e, inclusive, Android) de nuestra PC.
Sin embargo, siempre hay buenos samaritanos que buscan explorar y explotar al máximo el poder del pingüino por lo que, gracias a un hack, es posible tener cuando menos la función de “encender” o “apagar” nuestro ventilador con el uso de herramientas externas.
NBFC (NoteBook Fan Control) para Linux
NBFC es una herramienta multiplataforma que es capaz de ajustar configuraciones específicas para controlar los ventiladores de distintos modelos de computadora.
Para el desarrollo de este tutorial, estaré trabajando bajo GNU/Linux Ubuntu 22.04 por lo que, algunos de los comandos que veas por aquí, tendrás que adaptarlos si es que usas distribuciones distintas o alternativas. No obstante, no creo que tengas mayores problemas.
En primer lugar, vamos a instalar el conjunto de herramientas Mono para correr programas compatibles desarrollados en .NET en Linux. Para ello, agregamos el repositorio de Mono a nuestro directorio de fuentes de software, actualizamos el repositorio e instalamos Mono.
Una vez hecho lo anterior, procederemos a crear un directorio en /opt/nbfc y, posteriormente, a copiar los archivos que descargamos mediante Git de nuestro directorio ~/Downloads/nbfc.
Con esto, ¡ya tienes nbfc disponible en tu computadora!
Encender y apagar ventiladores de Acer Predator Helios 300 PH315-51 en Linux
Ahora, para encender los ventiladores de nuestra laptop Acer Predator Helios 300 PH315-51 en Linux, según el post “Fan control in Linux” de Namangup, solo tenemos que ejecutar dentro del directorio /opt/nbfc el siguiente conjunto de comandos:
Ahora bien, Namangup especifica 2 comandos adicionales en donde 00 es el valor más bajo y 64 el valor más alto para indiciar la intensidad del ventilador dentro de [value].
En mi experiencia personal, pude encender el ventilador de una laptop Acer Predator Helios 300 PH315-51 en Linux con este comando:
sudo mono ec-probe.exe write 0x21 0x64
…y pude apagar el ventilador de una laptop Acer Predator Helios 300 PH315-51 en Linux con este otro:
sudo mono ec-probe.exe write 0x21 0x00
Si estos comandos no te funcionan, es probable que esté funcionando como servicio nbfc por lo que, puedes verificarlo así:
sudo systemctl status nbfc
Si el servicio está ejecutándose (running), puedes detenerlo ejecutando el siguiente comando:
sudo systemctl stop nbfc
Y vuelve a intentar con los comandos “sudo mono ec-probe.exe write 0x21 0x64” y “sudo mono ec-probe.exe write 0x21 0x00” para encender y apagar los ventiladores.
pIndependientemente de que estos comandos realmente funcionan, para serte honesto, no me fue posible elegir otras intensidades o velocidad de las revoluciones de los ventiladores.
Por ello, exploré más opciones y encontré la posibilidad de utilizar archivos de configuración previamente desarrollados con las opciones disponibles, hallazgos y experimentos personales de diversos desarrolladores y entusiastas.
Utilizar nbfc con opciones preconfiguradas
Como te lo comentaba: debes saber que nbfc viene por defecto con distintas configuraciones preconfiguradas para comenzar a trabajar de inmediato.
Antes de continuar y comenzar a experimentar opciones preconfiguradas, debemos activar nbfc como servicio mediante el siguiente comando:
sudo systemctl enable nbfc --now
Para asegurarte de que esté activo lanza una comprobación así:
sudo systemctl status nbfc
Si está activo, deberá mostrarse por ahí la palabra “active (running)”.
Hecho lo anterior, la forma más fácil de averiguar qué configuración podría funcionar en tu computadora es que ejecutes dentro del directorio /opt/nbfc el siguiente comando:
sudo mono nbfc.exe config -r
…e inmediatamente se te desplegará una lista recomendaciones de configuraciones prefabricadas para distintos tipos de computadora.
En mi caso, como tengo una computadora Acer Predator Helios 300 PH315-51, la configuración que más se le podría parecer es la de la Acer Predator G3-572 por lo que, para activarla de inmediato, solo debes de ejecutar:
sudo mono nbfc.exe config -a "Acer Predator G3-572"
Y sería todo. Con esto, habrás conseguido implementar el servicio de encendido automático del ventilador de tu computadora Acer Predator Helios 300 PH315-51 de manera eficiente y en automático en tu computadora.
Ahora, si así lo deseas, puedes obtener información sobre la configuración actual de nbfc tecleando lo siguiente:
sudo mono nbfc.exe status -a
Lo anterior, resulta muy útil ya que así puedes probar distintas configuraciones y experimentar.
Si tienes instalada alguna distribución GNU/Linux conviviendo con Windows, es muy probable que te resulte molesto (y necesario) sincronizar la hora entre Windows y Linux.
Este “detalle” (porque no es un problema realmente), se debe a que estos ambos sistemas operativos, gestionan de manera distinta el tiempo: en el caso de una gran mayoría de distribuciones GNU/Linux, se utiliza los esquemas UTC (Universal Time Coordinated) o GMT (Greenwich Mean Time) que no son otra cosa que formas universales de “comprender” el tiempo y zonas horarias; en otro sentido, los sistemas operativos Windows, utilizan los esquemas de “Hora Local” (Localtime) que al día de hoy, se encuentran asistidos por NTP (Network Time Protocol) para “sincronizar” relojes entre dispositivos.
La hora local, no es más que la “hora” de una zona horaria particular que “establece” el usuario o bien, que establece tu servidor NTP en función de la región que le hayas indicado.
Así, Network Time Protocol (NTP) es un protocolo de Internet para sincronizar los relojes de los sistemas informáticos a través del enrutamiento de paquetes en redes con latencia variable, y el UTC se obtiene a partir del Tiempo Atómico Internacional, un estándar de tiempo calculado a partir de una media ponderada de las señales de los relojes atómicos, localizados en cerca de 70 laboratorios nacionales de todo el mundo.
Debido a que la rotación de la Tierra es estable, pero no constante y se retrasa con respecto al tiempo atómico, UTC se sincroniza con el tiempo medio de Greenwich (obtenido a partir de la duración del día solar), al que se le añade o quita un segundo intercalar cuando resulta necesario, siempre a finales de junio o diciembre. La decisión sobre los segundos intercalares la determina el Servicio Internacional de Rotación de la Tierra y Sistemas de Referencia, basándose en sus mediciones de la rotación de la Tierra..
Para serte honesto, el modelo UTC es un esquema de gestión del tiempo universal más apropiado que garantiza interoperabilidad.
Lo anterior, es la razón por la cual, si tienes una instalación Windows con GNU/Linux conviviendo, es muy seguro que tengas Dual Boot instalado (también conocido como Arranque Dual) por lo que habrás notado que en tu distribución GNU/Linux obtienes la hora exacta sin mayor inconveniente pero, al arrancar sesión en Windows, obtienes una hora distinta que no concuerda con tu zona horaria.
Para resolver esto, tienes 2 opciones:
Opción A: Obligar a Windows a utilizar el esquema de Coordinación de Hora Universal (UTC)
En mi caso, esta sería mi opción favorita porque representa la oportunidad de hacer que tu sistema operativo respete y se ajuste a los estándares de sentido de comunidad y convivencia. Además, será capaz de actualizarse sin problemas durante los cambios de horario de invierno y verano, o simplemente, durante al paso a una zona horaria distinta.
Para configurar este esquema, presiona la combinación de tecla Windows + R y escribe “regedit” para abrir el editor de registro de Windows:
Ahora, busca dentro de los registros, la siguiente clave:
A continuación, haz clic con el botón derecho del mouse sobre la carpeta TimeZoneInformation y crea un valor dword al cual deberás poner por nombre “RealTimeIsUniversal”:
Ahora, haz doble clic sobre el valor “RealTimeIsUniversal” creado y asígnale el valor de “1”:
Una vez hecho lo anterior, deberemos ahora desactivar la sincronización automática de hora en Windows; para ello, escribe en la barra de búsqueda de Windows el comando CMD y selecciona la opción “Ejecutar como administrador”:
sc config w32time start= disabled
Si todo ha funcionado bien, observarás un mensaje como este, ¡y es todo!
Nota: Si en algún momento deseas revertir los cambios, solo debes el valor de la entrada “RealTimeIsUniversal” a “0” para volver a trabajar con la hora local.
Opción B: Obligar a GNU/Linux a utilizar el esquema de Hora Local (localtime)
En GNU/Linux el tema es más simple, ya que solo tienes que ejecutar el siguiente comando como administrador:
Si eres instalaste alguna distribución de GNU/Linux en tu computadora y la configuraste para convivir junto con Windows, seguramente te podrá resultar “molesto” que tu distribución sea la primera en iniciar cada que enciendes tu computadora; por ello, para que tu computadora pueda recordar el último sistema operativo en Linux, solo debes seguir los siguientes pasos:
1.- Abre una sesión de terminal y edita el archivo /etc/default/grub
sudo nano /etc/default/grub
2.- Una vez abierto, verás algo como esto:
Aquí, deberás cambiar la línea..
GRUB_DEFAULT=0
…por la línea:
GRUB_DEFAULT=saved
…y deberás añadir también la línea:
GRUB_SAVEDEFAULT=true
…y guardar los cambios de tu archivo.
Te recomiendo mucho verificar que escribas correctamente las líneas para evitar problemas en la reconfiguración del arranque de inicio; revisa bien antes de guardar cambios.
Si todo está correcto, tu archivo del cargador de arranque GRUB deberá verse algo así:
3.- Ahora, solo resta indicarle a Linux que aplique los cambios en el cargador de arranque ejecutando el siguiente comando:
sudo update-grub2
¡Y listo! Tu cargador de arranque estará listo y programado para iniciar y recordar el último sistema operativo con el que iniciaste la computadora.
En casi cualquier institución educativa, organización, empresa, negocio u hogar, es muy común que tengamos alguna computadora o equipo que ya no utilicemos, se encuentre un poco obsoleto, o simplemente esté en desuso. Por ello, te voy a enseñar a configurar un servidor de archivos Samba en Ubuntu con el propósito de que puedas recuperar y darle nueva vida a ese dispositivo.
Veamos: en el ámbito de las redes de área local en donde conviven computadoras con Windows instalado, siempre ha resultado de gran utilidad la posibilidad que crear carpetas compartidas mediante las cuales, podamos transferir fácilmente documentos, guardar música, crear respaldos de información, etc.
En este sentido, si bien es cierto que tanto Mac como Windows disponen esta función de manera nativa o bien, existen alternativas en la nube como NextCloud (un día de estos haremos un tutorial sobre ello), también es cierto que puedes configurar un servidor de archivos Samba independiente asociado a cuentas de usuario para agregar una capa de seguridad independiente a la de tu sistema operativo, accesible desde Internet, y que cumple estándares para “crear” unidades compartidas de red.
Instalación de Samba
Para lograr lo anterior, y partiendo del punto de que dispones de una instalación de GNU/Linux Debian, Ubuntu, LinuxMint o derivadas, lo primero que tienes que hacer es realizar la instalación de los paquetes de Samba. Para ello tecleamos:
sudo apt install samba
Configuración de Samba
Ahora, crearemos una cuenta de usuario en nuestro sistema operativo (para nuestro caso, crearé el usuario “samba”) mediante el siguiente comando:
sudo adduser samba
Solo deberás asignarle una contraseña y completar algunos datos (si así lo deseas) para identificar y completar información de tu usuario:
Tip: si en algún momento en el futuro deseas cambiar la contraseña a tu usuario, solo deberás teclear algo como esto:
sudo passwd samba
Ahora, si todo ha salido bien, es momento de modificar el archivo de configuración de Samba que se ubica en /etc/samba/smb.conf; para ello, utilizaremos el editor de texto nano, con lo cual es pertinente teclear:
sudo nano /etc/samba/smb.conf
A continuación, verás una pantalla como esta:
Solo debes ir al final del archivo y añadir la siguiente configuración:
[Samba]
comment = Servidor de Archivos Samba
path = /home/samba
guest = no
browseable = yes
read only = no
create mask = 0775
directory mask = 0775
valid users = %S
Guarda los cambios en nano (presionando CTRL + O y Y) y regresemos a la consola (presionar letra Q). Con ello, deberemos ahora agregar el usuario Samba al servidor de archivos Samba (valga la redundancia) mediante el siguiente comando:
smbpasswd -a samba
Al hacer lo anterior, te pedirá que ingreses una clave de usuario de Samba; asimismo, puedes ver en todo momento el estado del servicio Samba en tu computadora tecleando el comando:
sudo service smbd status
…o bien, puedes reiniciar el servicio ejecutando el siguiente comando también:
sudo service smbd restart
¿Cómo conectarte a tu servidor de archivos Samba desde Windows?
Si has seguido los pasos anteriores, tu servidor Samba está listo para funcionar; para acceder al mismo desde Windows, lo primero que tienes que saber es la IP que tiene asignada dentro de tu red de área local. Para ello, ejecuta el comando IP en Linux:
ip a
En el caso del presente ejemplo, la IP que tiene mi computadora con Samba es la 192.168.52.128; así, solo tienes que abrir una ventana del Explorador de Windows y teclear algo como sigue y presionar Enter:
\\192.168.52.128\samba
Es muy importante que utilices la diagonal invertida; en tu teclado, la puedes obtener presionando la tecla ALT DERECHA + la tecla ? (la que está justo a la derecha del cero). Si todo ha resultado correcto, inmediatamente se te desplegará un cuadro de información como el que sigue:
Aquí, solo resta ingresar el nombre de usuario y contraseña que configuraste al inicio, y activar la opción “recordar credenciales”, si así lo deseas, para evitar tener que teclearla en cada ocasión que desees acceder. Con esto, ¡ya tienes listo tu servidor Samba para almacenar archivos!
Añadir tu servidor Samba como una unidad de disco de red
Hasta el paso anterior, tenemos un servidor Samba funcional. No obstante, resulta ser muy cool el poder añadir mi servidor de archivos como “una unidad de red” en mi explorador en Windows.
Para hacer esto, es muy fácil: con una ventana del explorador de archivos abierta, haz clic con el botón derecho del mouse sobre el icono “Red” y selecciona la opción “Conectar a una unidad de red”.
Acto seguido, Windows te solicitará que asignes una letra a tu “nueva” unidad de disco, así como la ruta de acceso al “recurso compartido”. Para ello, deberás ingresar la IP y nombre de usuario de tu servidor Samba; en mi caso:
Unidad: Z:
Carpeta: \\192.168.52.128\samba
¡Y listo! Sólo deberás teclear nuevamente tu nombre de usuario
y contraseña creados en cada ocasión que desees acceder si es que no activaste la opción “Recordar credenciales”.
Si en algún momento deseas desconectar tu red, solo presiona botón derecho sobre una unidad de red existente, y selecciona la opción “Desconectar”.
En mi oficina, tengo una vieja laptop a la cual, el monitor de cuando en cuando deja de funcionar sin forma de volver a encenderlo nuevamente. Con ello en consideración, decidí tomar esta laptop para configurarme un modesto servidor conUbuntu Server 14.04 LTS en el cual tengo habilitado Apache, PHP y MySQL principalmente con la cual te mostraré cómo conigurar una tarjeta de red con WPA desde la línea de comandos en Ubuntu.
Es pertinente comentar en este que punto que para el presente tutorial, procedí a realizar una instalación limpia de Ubuntu Server 14.04, configuré mi tarjeta de red, particiones y demás, pero al concluir el proceso de reinicio posterior a la instalación.
Así, para lograr que Ubuntu “inicie” y se “conecte” automáticamente a una red WPA, tenemos que seguir los siguientes pasos desde la consola o línea de comandos:
1.- Averiguamos en primer lugar el nombre de nuestra interface de red inalámbrica (generalmente es wlan0):
iwconfig
2.- Creamos el archivo de configuración del demonio de administración de redes wpa_supplicant…
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
…y guardamos dentro del mismo los siguientes valores:
5.- Pedimos ahora una dirección IP al servidor DHCP activo:
sudo dhclient wlan0
6.- Con ello, si hacemos un ping a google.com, deberías de obtener ya una respuesta. Pero bien, para que nuestra configuración se cargue en cada reinicio, abrimos el archivo /etc/network/interfaces…
sudo nano /etc/network/interfaces
…y nos aseguramos de añadir lo siguiente:
auto wlan0
iface wlan0 inet dhcp
wpa-ssid NOMBRE-DE-RED-WIFI
wpa-psk CONTRASEÑA-WIFI
7.- Para comprobar que el demonio wpa_supplicant se iniciará automáticamente en cada inicio del sistema, ejecutamos los siguientes comandos:
Para todos aquellos que en algún momento tengan la necesidad de desarrollar actividades de administración de un servidor Web bajo GNU/Linux, descubrirán que Internet es un entorno más que propicio tanto para la colaboración o distribución de contenidos, como también, para prácticas maliciosas o ataques informáticos por lo que seguramente te resultará de gran utilidad el aprender a bloquear accesos por país con firewall CSF.
En este sentido, les comento que en mi práctica profesional, y concretamente, para el caso de una tienda en línea administrada con Magento, comencé a notar una baja en el performance impresionante, al punto tal en que las peticiones al servidor, se resolvían muy lentamente.
En este contexto, una solución “rápida” y “lógica” era incrementar los recursos del VPS contratado (más memoria RAM, más procesador), con el respectivo costo asociado.
Al revisar los logs de Apache (siempre es una buena práctica, algo tediosa) y las estadísticas del sitio en mi panel de control (con AW Stats o Webanalizer) y las visitas de Google Analytics, descubrí que tenía visitas en varias horas del día, y con distinta intensidad, del robot del buscador Chino llamado Baidu.
Con esta información en consideración, mi primer “movimiento” lógico, fue deshabilitar la indexación del agente/bot Baidu en el home de mi servidor, pero, el problema persistía: Baidu maneja diversos agentes (de contenidos, de imágenes, de video, etc.) para indexar un sitio, y para serles francos, aún y cuando Baidu tiene documentadas las medidas para el manejo de sus bots mediante el archivo robots.txt (puedes consultarlas aquí: http://help.baidu.com/question?prod_en=master&class=498&id=1000973), me dio la impresión de que sus bots no respetaban las instrucciones contenidas en el mismo, por lo cual, teniendo en consideración que el público de la tienda en línea era solo mexicano, procedí a realizar un bloqueo mediante reglas de un Firewall basado en software, inicialmente a China, con posibilidades de extenderlo a todo el mundo y permitir solo IP´s de México y Estados Unidos. Es importante destacar que Baidu, tiene una “página” en la cual uno puede “retroalimentar” y reportar incidentes; la liga es: http://webmaster.baidu.com/feedback/index. Aquí puedes encontrar más información sobre el “bloqueo” a Baidu Spider mediante el archivo robots.txt: http://www.baidu.com/search/robots_english.html
Consideraciones
Este “truco” te funcionará si tienes una distribución Linux en la cual tengas acceso como root o usuario con privilegios. Si tienes un VPS, asegúrate que si realizas por accidente un “bloqueo” a la IP desde la cual te conectas, podrás acceder nuevamente mediante una terminal o consola Web que te ofrezca tu propio proveedor.
Primeros pasos
CSF (ConfigServer Security & Firewall), es un poderoso conjunto de scripts que nos permiten disponer reglas de iptables para constituir un Firewall SPI (Stateful Packet Inspection) basado en software, con detector de intrusiones y seguridad en aplicaciones para servidores Linux.
Si actualmente tienes reglas de IPtables aplicadas en tu server, es muy probable que vayas a tener conflicto con las mismas, por lo cual, es muy probable que decidas qué solución de Firewall pretendes usar, o bien, analizar si CSF puede hacer por tí lo que actualmente estás haciendo con otra solución. Desde mi punto de vista personal, CSF es uno de los Firewalls para servidores Linux más potentes, transparentes y sencillos de usar que he visto.
Posteriormente, vamos a proceder a descargar y descomprimir el conjunto de scripts de CSF mediante el siguiente comando:
cd /usr/src
sudo wget https://download.configserver.com/csf.tgz
sudo tar -xzf csf.tgz
Ahora, procedemos a realizar la ejecución del script de instalación de CSF:
cd csf
sudo sh install.sh
Si no ha habido mayores problemas, podrás leer en tu pantalla algo como esto:
TCP ports currently listening for incoming connections:
22
UDP ports currently listening for incoming connections:
68,45861
Note: The port details above are for information only, csf hasn't been auto-configured.
Don't forget to:
1. Configure the following options in the csf configuration to suite your server: TCP_*, UDP_*
2. Restart csf and lfd
3. Set TESTING to 0 once you're happy with the firewall, lfd will not run until you do so
«lfd.sh» -> «/etc/init.d/lfd»
«csf.sh» -> «/etc/init.d/csf»
el modo de «/etc/init.d/lfd» permanece como 0755 (rwxr-xr-x)
el modo de «/etc/init.d/csf» permanece como 0755 (rwxr-xr-x)
Removing any system startup links for /etc/init.d/lfd ...
Removing any system startup links for /etc/init.d/csf ...
Adding system startup for /etc/init.d/lfd ...
/etc/rc0.d/K20lfd -> ../init.d/lfd
/etc/rc1.d/K20lfd -> ../init.d/lfd
/etc/rc6.d/K20lfd -> ../init.d/lfd
/etc/rc2.d/S80lfd -> ../init.d/lfd
/etc/rc3.d/S80lfd -> ../init.d/lfd
/etc/rc4.d/S80lfd -> ../init.d/lfd
/etc/rc5.d/S80lfd -> ../init.d/lfd
Adding system startup for /etc/init.d/csf ...
/etc/rc0.d/K80csf -> ../init.d/csf
/etc/rc1.d/K80csf -> ../init.d/csf
/etc/rc6.d/K80csf -> ../init.d/csf
/etc/rc2.d/S20csf -> ../init.d/csf
/etc/rc3.d/S20csf -> ../init.d/csf
/etc/rc4.d/S20csf -> ../init.d/csf
/etc/rc5.d/S20csf -> ../init.d/csf
«/etc/csf/csfwebmin.tgz» -> «/usr/local/csf/csfwebmin.tgz»
Installation Completed
Lo que debemos saber
CSF es una colección de scripts muy potente, que en un momento determinado, puede inclusive “impedirnos” la conexión remota al servidor si no tenemos muy claro lo que hacemos.
En este sentido, la ruta para la edición de su archivo de configuración, es:
/etc/csf/csf.conf
Dentro del mismo, tenemos 2 líneas que son muy interesantes:
TESTING = “1” – Si está activida esta regla así, es porque tu Firewall está en “modo de prueba” con lo cual, en función del valor asignado en el siguiente punto (testing_interval), pasado ese tiempo, te “borrará” todas las reglas de Firewall con el propósito de “regresar” a la normalidad. En otro caso, si has quedado conforme con la configuración de Firewall, puedes ponerle el valor de “0”, con lo cual, quedará aplicado este sistema.
TESTING_INTERVAL = “5” – Si las reglas de Firewall están en modo de prueba (testing), pasado número de minutos, se “limpiarán” del sistema, volviendo todo a la normalidad.
Bloquear accesos por país con firewall CSF y asignación de permisos de conexiones por país
Particularmente, CSF utiliza los 2 caracteres de país del código ISO de países CIDR (Classless Inter-Domain Routing – enrutamiento entre dominios sin clases) mediante el cual, se “clasifican” los rangos de direcciones IP de cada país. Como comenta CSF en el archivo de configuración, esta lista no es 100% segura ya que algunos ISPs, usan designaciones de IP para sus clientes mediante criterios no geográficos, lo cual dificulta su ubicación.
Por otra parte, la creación de reglas asociadas a grandes rangos de direcciones IP, pueden representar una disminución en el performance del servidor, con lo cual, no es muy recomendado para servidores VPS; aunque en mi caso, lo he usado en VPS de 1 GB de RAM y me fue muy bien, inclusive, me ayudó con tráfico indeseado.
Con ello en consideración, CSF se apoya en los 2 caracteres de país para la asignación en las reglas de Firewall, a partir de los bloques CIDR administrados por Maxmind GeoLite Country, el cual puedes consultar aquí: http://dev.maxmind.com/geoip/legacy/geolite/ (te sugerimos descargar el archivos CSV disponible para crear tus reglas con mayor seguridad y certeza).
Ahora bien, ¿qué haré? Permitiré el tráfico a México y Estados Unidos, y bloquearé al resto del mundo. Para ello, deberemos editar el archivo de configuración de CSF:
Ahora, guardamos el archivo, y reiniciamos el CSF:
sudo csf -r
Y revisamos las reglas aplicadas:
sudo iptables -L -n
Pasos finales
Por otra parte, con el objetivo de que nuestro Firewall tome acciones a partir de “falsos positivos” o “información confusa” proporcionada por los registros del sistema (syslog/rsyslog), en el archivo /etc/csf/csf.conf, debemos cambiar esto:
# 0 = Allow those options listed above to be used and configured
# 1 = Disable all the options listed above and prevent them from being used
# 2 = Disable only alerts about this feature and do nothing else
# 3 = Restrict syslog/rsyslog access to RESTRICT_SYSLOG_GROUP ** RECOMMENDED **
RESTRICT_SYSLOG = "0"
Por esto:
# 0 = Allow those options listed above to be used and configured
# 1 = Disable all the options listed above and prevent them from being used
# 2 = Disable only alerts about this feature and do nothing else
# 3 = Restrict syslog/rsyslog access to RESTRICT_SYSLOG_GROUP ** RECOMMENDED **
RESTRICT_SYSLOG = "3"
Con lo anterior, evitarás también “molestas” alertas del tipo:
*WARNING* RESTRICT_SYSLOG is disabled. See SECURITY WARNING in /etc/csf/csf.conf.
Goodie
CSF es un estupedísimo Firewal; para el caso de este material, podría decir que no está reservado solamente para “bloquear” rangos de IP´s de países sino para implementar un cortafuego por software a tu computadora o servidor.
Por ello, si modificas, en el siguiente conjunto de líneas, puede “decidir” qué puertos deseas mantener abiertos y en qué dirección:
…e inclusive, si permitirás que hagan “ping” a tu equipo:
# Allow incoming PING
ICMP_IN = "1"
Si has despertado la curiosidad con respecto a las capacidades de CSF, te recomendamos encarecidamente dar un vistazo a todo el fichero de configuración para hacer pruebas y descubrir sus posibilidades. ¡Te encantará! Cpanel lo integra generalmente a través de WHM, lo cual nos “garantiza” en cierto sentido su mejora y mantenimiento constante.
Nota final
Si al aplicar tus reglas de Firewall con CSF te aparece el mensaje de error:
*WARNING* URLGET set to use LWP but perl module is not installed, reverting to HTTP::Tiny
Es probable que te hayas olvidado de instalar paquetes de Perl de apoyo, con lo cual, solo hace falta instalar un módulo faltante mediante lo siguiente:
¿Qué pasa en este punto? Según comentan en algunos sitios, CSF implementó el procesamiento de peticiones para HTTP y HTTPS, con lo cual, el modelo LWP::UserAgent procesa muchísimo mejor HTTPS que el modelo HTTP::Tiny.
Si quisieramos evitar usar LWP, hay que buscar la línea:
En temas de seguridad y protección de servidores, no existe nada mejor que proteger los mismos con aplicaciones de detección de intrusiones como Snort (https://www.snort.org/) o Suricata (http://suricata-ids.org/) u otras ofertas comerciales basadas tanto en hardware (firewalls) como Software (http://www.acunetix.com/) o servicios en la nube (https://www.cloudflare.com/) que actualizan con mayor regularidad sus bibliotecas y/o diccionarios de ataques, y están “más preparados” ante estas amenazas de la red Internet, por los que reaizar análisis de logs de Apache con Scalp! es una fantástica idea para prevenir y/o anticipar amenazas.
En esta ocasión les comparto un analizador de Logs muy sencillo, el cual propiamente, no es el más recomendado para “prevenir” ataques a un servidor Apache sino que más bien, su propósito es el de analizar potenciales huecos de seguridad o vulnerabilidades apoyándose de los registros (logs) que ha dejado atrás Apache para detectar aquellas áreas de oportunidad, mejora, e inclusive, vulnerabilidades propias de sistemas o aplicaciones desarrollados en PHP.
Scalp!, es un script analizador de logs del servidor Apache desarrollado en Phyton, que tiene como objetivo buscar problemas de seguridad. Su idea principal, es “leer” dentro de los registros de accesos al servidor para buscar patrones ataques potenciales mediante el envío de peticiones por los métodos HTTP/GET y HTTP/POST.
Para los propósitos de este post, he de comentar que estoy realizando pruebas sobre Ubuntu Server 14.04. En este caso, tengo una instalación con Apache 2, PHP5 y MySQL para un servidor Web, en donde mis “logs”, se encuentran dentro del directorio /var/logs/apache2/access.log.
Con esto en consideración, lo primero que tenemos que hacer, es “descargar” el script de Scalp! en nuestro directorio favorito:
(Nota: te sugiero que visites regularmente la página de Scalp! para descargar la última versión actualizada).
Ahora, descargamos el archivo de expresiones regulares que utiliza PHP-IDS (otra estupenda herramienta para proteger a nuestras aplicaciones PHP) para combinarlo en su uso con Scalp! mediante el siguiente comando:
En este caso, al ejecutar Scalp! por primera vez, me arrojó este mensaje de error:
The directory %s doesn't exist, scalp will try to create it
Loading XML file 'default_filter.xml'...
The rule '(?i:(\%SYSTEMROOT\%))' cannot be compiled properly
“Tuneando” nuestro fichero de patrones
Con respecto a la primera y segunda línea de error, no tenemos mayor problema. Más bien, el detalle que tenemos que resolver es que al parecer Phyton, no es capaz de “procesar” correctamente parte del contenido XML que descargamos de PHP-IDS. Para ello, la solución es muy sencilla, abrimos el archivo default_filter.xml con nuestro editor favorito:
A continuación, les aparecerá un mensaje como este, ante el cual, solo tenemos que esperar un poco (en función del tamaño de archivo de tu log o de las reglas que hayas pedido ejecutar):
Loading XML file 'default_filter.xml'...
Processing the file '/var/log/access.log'...
Scalp results:
Processed 491229 lines over 491413
Found 3175 attack patterns in 177.725208 s
Generating output in scalp-output/access.log_scalp_*
Ahora, solo tienes que ir al directorio scalp-output y “visualizar” en tu navegador en archivo generado para visualizar el reporte completo de patrones de ataque observados.
¡Esta herramienta es genial!
Goodie
Tecleando el comando:
python scalp-0.4.py --help
…podrás obtener la ayuda relacionada con otros patrones de uso de Scalp!.
Scalp the apache log! by Romain Gaucher - http://rgaucher.info
usage: ./scalp.py [--log|-l log_file] [--filters|-f filter_file] [--period time-frame] [OPTIONS] [--attack a1,a2,..,an]
[--sample|-s 4.2]
--log |-l: the apache log file './access_log' by default
--filters |-f: the filter file './default_filter.xml' by default
--exhaustive|-e: will report all type of attacks detected and not stop
at the first found
--tough |-u: try to decode the potential attack vectors (may increase
the examination time)
--period |-p: the period must be specified in the same format as in
the Apache logs using * as wild-card
ex: 04/Apr/2008:15:45;*/Mai/2008
if not specified at the end, the max or min are taken
--html |-h: generate an HTML output
--xml |-x: generate an XML output
--text |-t: generate a simple text output (default)
--except |-c: generate a file that contains the non examined logs due to the
main regular expression; ill-formed Apache log etc.
--attack |-a: specify the list of attacks to look for
list: xss, sqli, csrf, dos, dt, spam, id, ref, lfi
the list of attacks should not contains spaces and comma separated
ex: xss,sqli,lfi,ref
--output |-o: specifying the output directory; by default, scalp will try to write
in the same directory as the log file
--sample |-s: use a random sample of the lines, the number (float in [0,100]) is
the percentage, ex: --sample 0.1 for 1/1000
Si te interesa el tema, aquí puedes encontrar un estupendo artículo (en inglés) sobre una comparativa entre Snort y Suricata, los IDS (intrusion detection system) Open Source más populares. La liga es: http://wiki.aanval.com/wiki/Snort_vs_Suricata
Debe estar conectado para enviar un comentario.