Archivo
Integración de Jenkins + SonarQube [DevSecOps]
La Inspección continua de código como parte de la integración continua (CI) se ha hecho cada vez mas importante en la construcción de aplicaciones dentro de una estrategia de seguridad en la metodológica de DevOps o también llamado ahora DevSecOps.
En este escenario, implementaremos para el servidor de integración continua Jenkins como contenedor en Docker. Y la parte de inspección continua de código usaremos SonarQube, finalmente analizaremos el codigo de una Aplicación Web en PHP y sera la archi conocida Dann Vulnerable Web Application o DVWA.
Para lo cual asumiremos que nuestra aplicación se encuentra en GitHub/GitLab y necesitamos evaluar la calidad del código, bugs conocidos, vulnerabilidades,etc.
El Entorno
01 Maquina virtual con Centos 7 / IP 192.168.1.13
Docker y Docker-Compose instalado.
1.- Instalación de Jenkins y SonarQube en contenedor Docker
1.1.- Crear el archivo de docker compose y levantar los contenedores.
mkdir -p jenkins/jenkins_home ; cd jenkins
vim docker-compose.yaml
docker-compose up -d
docker ps
Si todo salió bien, en este punto tendremos levantados los dos contenedores
Jenkins : http://192.168.1.13:8080/
Sonarqube : http://192.168.1.13:9000/
2.- Configurar Jenkins para que se integre con Sonarqube.
2.1.- Establecer contraseña e instalación de plugins recomendados.
Ingrear a Jenkins http://192.168.1.13:8080/
La instalación pedirá el ingreso de la contraseña de inicialización ubicada en
cat jenkins_home/secrets/initialAdminPassword
Luego procederá a instalar los plugins recomendados
Una vez terminanda la instalación y configurar el usuario «admin» habremos ingresado.
2.2.- Agregar el Plugin de Sonarqube en Jenkins
Ingresar : Manage Jenkins / Manage Plugins / Available / SonarQube Scanner
Luego verificar que se instaló correctamente y elegir reiniciar Jenkins
2.3.- Agregar la URL del servidor Sonarqube.
Ingresar : Manage Jenkins / Configure System / SonarQube servers / Add SonarQube installations
Name : sonarqube
URL del servidor : http://192.168.1.13:9000/
2.4.- Agregar la versión del scaner para el servidor Sonarqube.
Ingresar : Manage Jenkins / Global tool configuration / Sonarqube Scanner / Add Sonarqube Scanner
Name : sonarqube
Install from maven central : Sonarqube Scanner 4.2.0.18.73
3.- Crear Job para analizar el codigo de la Aplicacion Web.
Nombre : code-inspection-webapp
Tipo : Freestyle project.
Dentro del Jobs indicar el repositorio donde se buscara el código fuente.
Source Code Management
Git / Repository URL : https://github.com/digininja/DVWA
Luego en «Build» agregar «Sonarqube scanner»
Finalmente indicar las propiedad del escaneo en «Analysis properties»
4.- Ejecurar Job para analisis de código fuente con Sonarqube desde Jenkins
Ingresar al Job «code-inspection-webapp» y hacer clic en «Build Now»
Si todo salio bien, en el «console output» del Job nos mostrara que la tarea se ejecuto correctamente.
Si ingresamos el enlace nos llevará a dashboard de Sonarqube donde nos mostrará el reporte del analisis de codigo de la siguiente forma:
Paso siguiente, analizar todas las vulnerabiidades reportadas y bugs en el código por que esta claro que Sonar al ser una herramienta automatizada, nos arrojará una serie de falsos positivos y negativos se serán necesarios de revisar.
Una reflexión final, un Pentester puede aprender muy rápido conceptos de DevOps pero los DevOps pueden aprender rápido conceptos de seguridad, sobre todo ofensiva? Con capacidad de evaluar reportes en SonarQube o Owasp ZAP ? yo creo que si, pero es evidente que todo ello requiere mucha especialización y perfiles adicionales, tener en cuenta que el mismo concepto de DevOps como tal, requería especialización, y ahora hablar de DevSecOps aún mas, debido a que no es solo agregar “herramientas” dentro del CI/CD si no taimen saber como interpretar y corregir los fallos encontrados, de lo contrario no servira para nada.
En el siguiente post vememos como agregar OWASP ZAP el CI/CD
Espero les sirva.
Saludos
@jroliva
Asterisk Rest Interface (ARI) en Issabel
Una de las cosas que me gusta hacer junto con el Ethical Hacking es instalar/programar aplicaciones de Voz para ello hace mucho tiempo que uso Asterisk, evidentemente esto a evolucionado gratamente para los que nos gusta esta área, a partir de Asterisk 12 apareció ARI o «Asterisk REST Interface» API que permite programar cualquier tipo de aplicación y que se ejecute en Asterisk.
Realmente ARI desde mi punto de vista ha cambiado la forma de ver lo que se puede hacer con Asterisk ya que no solo es pensar en una PBX, si no que ahora puedes tomar las librerías de ARI de los lenguajes mas importantes como python, C#, Java, Javascript, para conectarte a la API y empezar a desarrollar usando la aplicación que implementa Asterisk a nivel de dialplan llamada «Statis».
En esa linea de ideas, debido a que Issabel trae Asterisk 13 podemos usar ARI sin problemas, a continuación veremos como realizar la configuración del mismo y realizar una prueba básica usado la herramienta wscat para conectarnos vía Websocket hacia la API en este caso ARI.
1.- Configurar ARI en Issabel
Ingresar al archivo http_custom.conf y activar ARI e indicarle en que puerto va funcionar de la siguiente forma:
Luego ingresar al archivo «ari.conf» el usuario y contraseña con el cual usaremos ARI
2.- Crear el dialplan
Ahora crearemos un dialplan para consumir y/o conectarse hacia ARI , para ello sera necesario declarar una extension 9000 donde invocaremos la aplicacion «Stasis» que es el mecanismo que utiliza Asterisk para entregar el control de un canal desde el plan de marcado hacia ARI.
En el archivo «extensions_custom.conf» incluimos un nuevo contexto llamado «ariwebsoket» de la siguiente forma:
Luego agregamos el final del archivo el nuevo conexto:
3.- Pruebas con ARI sobre Issabel.
Vamos a preparar una prueba muy sencilla de como nos podemos conectar mediante una petición de websoket hacia ARI para visualizar un evento en concreto, para ello sera necesario instalar wscat mediante nodejs.
curl -sL https://rpm.nodesource.com/setup_8.x | bash –
yum install -y nodejs
npm install -g wscat
Ahora desde una terminal nos conectamos a Issabel y ejecutamos
wscat -c «ws://localhost:8088/ari/events?api_key=ari:tucontrasena&app=hello-world»
Veremos que estamos conectados hacia ARI, de igual forma en el CLI veremos lo siguiente:
Lo cual nos indica que hay una conexión vía WebSocket hacia la aplicación «Hello-world»
Ahora al llamar a la extensión 9000 sera posible ver los detalles del evento mediante ARI de la siguiente forma
Esto es un test muy sencillo para validar que ARI funciona correctamente en Issabel, en un post nuevo veremos como desarrollar una aplicación con Nodejs haciendo uso de una cliente ARI para controlar Issabel.
Saludos
Juan Oliva.
búsqueda de vulnerabilidades mediante análisis de código fuente estático
Luego de terminar el año a full, regresar de unas pequeñas vacaciones me pongo al día con el blog ya que lo he tenido un poco descuidado. Como parte de las actividades en los proyectos de Ethical Hacking se tienen requerimientos para buscar vulnerabilidades en el código fuente de manera estática, es decir sin que la aplicación evaluada este ejecutándose, para realizar ello nos podemos ayudar en ciertas herramientas que pueden AYUDAR en realizar esto, y resalto AYUDAR por que ninguna herramienta va hacer el trabajo al 100% , siempre va ser necesario realizar un análisis posterior de los casos.
En este caso, vamos a aprender a instalar , configurar y usar Sonarqube es una herramienta que me a ayudado mucho en estas labores, este procedimiento se puede aplicar en Ubuntu 18.04.1 u otro derivado.
1.- Instalar java
sudo apt install openjdk-8-jdk openjdk-8-jre
2.- Crear directorio
mkdir sonarqube
2. -Descargar Sonarqube
Para ello es necesario ingresar a la pagina : https://www.sonarqube.org/downloads/
También es necesario descargar el escaner de : https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner
Al descomprimir los archivos tendremos lo siguiente :
3.- Luego descargaremos un proyecto opensource como DVWA para analizarlo
Para esto descargaremos un viejo conocido como DVWA
4.- Ahora vamos a configurar el escaner
– Crear una carpeta «main» en la ruta sonar-scanner-3.2.0.1227-linux/bin
cd sonar-scanner-3.2.0.1227-linux/bin
mkdir main
– luego dentro de la carpeta «main» vamos a mover y descomprimir la carpeta de la aplicacion a analizar
mv DVWA-master.zip sonar-scanner-3.2.0.1227-linux/bin/main/
cd sonar-scanner-3.2.0.1227-linux/bin/main/
unzip DVWA-master.zip
– Ahora crear un archivo «sonar-project.properties» indicando la aplicación a evaluar de la siguiente forma
cd sonar-scanner-3.2.0.1227-linux/bin
vim sonar-project.properties
5.- Finalmente iniciamos el panel de sonar y luego escaner para iniciar el análisis
– Iniciar sonar
cd sonarqube/sonarqube-6.7.5/bin/linux-x86-64
./sonar.sh start
Sonar iniciara en el puerto 9000 del localhost de la siguiente forma
– Ahora iniciar el escaner
cd sonarqube/sonar-scanner-3.2.0.1227-linux/bin
./sonar-scanner
Como vemos el análisis del de las paginas se realizo correctamente.
6.- Análisis de resultados
Luego de que el escáner termine el análisis en el panel de sonar aparecerá un nuevo proyecto de la siguiente forma
Como vemos ahora tenemos un proyecto analizado, al ingresar veremos que tenemos catalogadas los bugs, vulnerabilidades, entre otros resultados.
Al ingresar a las vulnerabilidades, tendremos un listado de las mismas.
El siguiente paso es analizar cada una de las vulnerabilidades reportadas en el código para identificar la importancia de las mismas, su importancia en el modelo de negocio y por su puesto como poder corregirlas.
Espero que les sirva.
Saludos
Juan Oliva
SWIFT SWIFTNet Hacking en Redes Bancarias
Luego de ver la noticia del hackeo del banco de chile, lean la publicación de la nota de Cesar Farro que lo detalla desde su perspectiva externa, me animé a escribir algo referente a ello, ya que es casi un año que vengo involucrado en realizar análisis de seguridad y vulnerabilidades a redes SWIFT justamente.
Como detrás de este tipos de servicios existen NDA vigentes, voy a ser bastante pragmático al respecto, emitiendo lineamientos que desde mi punto de vista personal, y que tendrían que ser de sentido común para este tipo de redes y al final conclusiones al respecto.
Al grano, normalmente siempre se tiene la perspectiva por fuera y no necesariamente por dentro, ya que como se entenderá son arquitecturas muy cerradas y no en lo tecnológico necesariamente ( si no pregunten el al banco de Chile 😀 ) digo esto por que al final terminamos hablando de los mismos componentes de siempre, como sistema operativos Windows, Unix, estaciones de trabajo, aplicaciones web, bases de datos, es decir nada que en una red empresarial deja de tener, empecemos desmenuzando la idea.
1.- QUE ES SWIFT ?
De pronto lo que uno mas conoce es el famoso código SWIFT para realizar transferencias internacionales, detrás de ello esta la “Society for Woldwide Interbank Financial” la cual provee hardware/software que articula mediante programas y regulaciones en general toda esta actividad a la cual están afectas las entidades bancarias.
Dentro de los lineamientos se establecen arquitecturas de uso que pueden tener las entidad bancarias que se detallan a continuación :
Arquitectura A1 Full Stack
La interfaz de mensajería como la de comunicación están dentro del entorno del usuario. Este tipo de arquitectura también incluye soluciones alojadas donde el usuario tiene las licencias para la interfaz de mensajería y la interfaz de comunicación.
Arquitectura A2 Partial Stack
La interfaz de mensajería está dentro del entorno del usuario, pero un proveedor de servicios (para ejemplo, una agencia de servicios, SWIFT Alliance Remote Gateway o un centro de grupo) es licencia y administra la interfaz de comunicación. Arquitectura A3 – Connector
La aplicación de software (por ejemplo, Alliance Lite2 AutoClient, soluciones de transferencia de archivos) es utilizado en el entorno del usuario para facilitar la comunicación de aplicación a aplicación con una interfaz en un proveedor de servicios. Arquitectura B – No local user footprint
No se utiliza ningún componente de infraestructura específico de SWIFT dentro del entorno del usuario.
Fuente : https://www.accesspay.com/wp-content/uploads/2017/09/SWIFT_Customer_Security_Controls_Framework.pdf
2.- LOS CONTROLES
Dentro de las regulaciones a nivel de gestión de SWIFT solicita y obliga a cumplir los 27 controles ( obligatorios y recomendados) los mismos que están indicados en el “SWIFT Customer Security Controls Framework” al cual se puede acceder públicamente y además los empleados cursos como por ejemplo el “Customer security programme” entre otros.
Un detalle que se puede identificar en este contexto, es que las entidades tienen que cumplir todos los controles y no solo los obligatorios ya que el común es pensar con eso ya están aprobando, cuando es todo lo contrario.
Sobre el cumplimiento de los controles, desde mi punto de vista, si bien es cierto en general la especificación de los controles es buena, sin embargo también muchos de los controles son muy ambiguos y poco precisos.
Basado en ello, un auditor/empleado que solo conoce la parte de gestión, puede interpretar de manera muy ligera los mismos, por ejemplo hacer cumplir un control determinado con solo con un procedimiento general, por el contrario alguien que maneja de parte de ingeniería/técnica la va interpretar de manera mas puntual, por ejemplo con una captura de pantalla del sistema o componente técnico, donde se muestra que se hace efectivo el control.
Para finalizar este punto indicar que la red SWIFT de la entidad va ser tan antigua como la misma lo permita en funcion a lo de siempre, no actualizar su arquitectura.
3- Evaluaciones de Cyberseguridad
Dentro de los controles de SWIFT se exige que es necesario hacer una evaluación de Ciberseguridad / Ethical Hacking a todos los componentes que involucran la arquitectura SWIFT. Por otro lado también a nivel de regulador bancario en el caso del Perú por ejemplo es la SBC que también lo exige, entonces tienen por lo menos dos servicios que tienen que ejecutar en diferentes ámbitos.
En ese sentido, es clave definir bien los activos a evaluar, sistemas involucrados, las actividades contempladas y horarios de ejecución, es decir es necesario definir bien el alcance, de lo contrario como en otros ámbitos, este punto solo será un puro formalismo a cumplir en el informe como desarrollar un escaneo o un análisis de vulnerabilidades automatizado que pasa a los informes.
4.- CONCLUSIONES Y RECOMENDACIONES
– Contar con la zona segura exclusiva/aislada de todo y textualmente de TODO sin ningún tipo de enlace hacia la red empresarial y hacia internet, esto es fundamental pero es muy difícil sobre todo por temas en primera instancia de flexibilidad, recordar el viejo dicho “mientras mas mas seguro menos flexible” y por otro lado de presupuesto, ya que estamos hablando para comenzar de tener toda la parte de switching, firewall, controladores de dominio y demás dispositivos de la arquitectura, exclusivos para la red SWIFT totalmente separado y con una función única.
– PC de operador de uso exclusivo, es decir solo para uso de SWIFT, evitar uso de servidores de salto, maquinas virtuales, citrix, escritorios remotos y demás elementos, como sabemos la mayor brecha de seguridad la producen los usuarios finales e inevitablemente se tiene que usar Windows (ojo aquí con las actualizaciones de seguridad), es recomendable primero que las PC de operador que acceden a los aplicativos SWIFT sean de uso exclusivo para ello y estén dentro de la zona segura , evidentemente siguiendo estándares de aseguramiento muy rígidos (Que normalmente no lo aplican no solo a nivel del sistema operativo, si no a nivel físico, ejemplo, contraseña de bios, desactivar USB, no tener software innecesario, no tener salida a internet entre otras.
– Uso de doble factor de autenticación, uso de tokens RSA para no solo autenticar hacia las aplicaciones, si no también a nivel de sistema operativo de los PC operador, reduce la brecha de riesgo.
– Servidores de producción SWIFT , Desde mi punto de vista usar servidores Windows para los servidores de producción y respaldo que exige SWIFT, es un error, cuando es sabido que Solaris/Unix ofrecen una menor brecha de seguridad en cuanto a vulnerabilidades reportadas.
– Software de Mensajería SWIFT y arquitectura general SWIFT va ser tan actualizada o no, como la entidad bancaria lo decida, SWIFT provee actualizaciones bastante constantes por ejemplo para el software de mensajería, mediante boletines y es labor de los responsables estar capacitados para realizar ello.
Finalmente basado en lo que he visto la mayor brecha de seguridad esta en no tener una red segura, usuarios operadores con estaciones Windows multiproposito y el y uso Windows en los servidores de mensajería.
Espero les sirva.
Saludos
Juan Oliva
Install Janus WebRTC Gateway in Debian
Desde hace varios meses vengo trabajando algunas cosas con mi amigo de aventuras tecnológicas Alfredo Pastor @AlfredoPastorL sobre la plataforma «Janus» pero qué es?
Por que no solo de Asterisk vive el hombre, se puede decir que Janus es auto denominado por la empresa Meetecho como un «WebRTC Gateway» de múltiple propósito, proporciona funcionalidades de comunicación para el uso de WebRTC con un navegador, a través del intercambio mensajes JSON y retransmitir comunicación RTP / RTCP . es posible desarrollar implementaciones de aplicaciones como pruebas de eco, web conference, grabadoras de medios, pasarelas SIP y similares.
En este caso vamos a ver como instalarlo correctamente en una plataforma DEBIAN
1.- Instalación de dependencias
#apt-get install aptitude
#aptitude install libmicrohttpd-dev libjansson-dev libnice-dev libssl-dev libsrtp-dev libsofia-sip-ua-dev libglib2.0-dev libopus-dev libogg-dev libcurl4-openssl-dev pkg-config gengetopt libtool automake make git cmake
Luego removemos los paquetes de correspondientes a rtp srtp ya que vamos a instalar nuevas versiones desde fuentes.
#apt-get remove libsrtp0 libsrtp0-dev
#apt-get autoremove libsrtp0 libsrtp0-dev
2.- Instalación de SRTP
#cd /opt/
#wget https://github.com/cisco/libsrtp/archive/v1.5.4.tar.gz
tar xfv v1.5.4.tar.gz
#cd libsrtp-1.5.4
#./configure –prefix=/usr –enable-openssl
#make shared_library && make install
3.- Instalación de USRSCTP
#cd /opt/
#git clone https://github.com/sctplab/usrsctp
#cd usrsctp
#./bootstrap
#./configure –prefix=/usr/lib64 && make && make install
4.- Instalación de LIBWEBSOCKETS
#cd /opt/
#git clone https://github.com/warmcat/libwebsockets.git
#libwebsockets
#mkdir build && cd build/
#cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_C_FLAGS=»-fpic» ..
#make && make install
5.- Instalación de DXYGEN y GRAPHVIZ
#aptitude install doxygen graphviz
6.- Instalación de RABBITMQ
#cd /opt
#git clone https://github.com/alanxz/rabbitmq-c
#cd rabbitmq-c
#git submodule init
#git submodule update
#autoreconf -i
#./configure –prefix=/usr && make && make install
7.- Instalación de PAHO
#cd /opt
#git clone https://github.com/eclipse/paho.mqtt.c.git
#cd paho.mqtt.c
#make && make install
8.- Instalación de JANUS
#cd /opt
#git clone https://github.com/meetecho/janus-gateway.git
#cd janus-gateway
#sh autogen.sh
#./configure –prefix=/opt/janus
#make
#make install
#make configs
#./configure –disable-rabbitmq
#./configure –enable-docs
9.- Instalación del servidor Web
#apt-get install apache2
Ahora copiamos las paginas de ejemplo
#cp -R /opt/janus-gateway/html/ /var/www/
#cd /var/www/html/
10.- Pruebas
Si todo salio bien deberíamos poder levantar Janus de la siguiente forma :
#/opt/janus/bin/janus
Eso quiere decir que Janus está en funcionamiento, luego ingresaremos al servidor Web de la siguiente forma : http://debian/ y veremos los siguiente
Si desean ver el manual en video Alfredo realizó todo el proceso incluido como funcionan los demos de Janus
En el siguiente post haremos una guia de como enlazar Janus con Asterisk
Kamailio entendiendo lógica de enrutamiento
Uno de los aspectos mas importantes y a la vez complicados de entender en Kamailio es la lógica de enrutamiento, debido a que tiene mucho que ver con el comportamiento del protocolo SIP.
Luego de mi charla en el ElastixWorld 2015 he tenido varias consulta referente a Kamailio y su comportamiento, un poco de ello lo explique en la charla «Usando el módulo PIKE en Elastix MT» sin embargo en este post vamos a dar un alcance un poco mayor a este tema.
Primero vemos de manera genera lo que trae el archivo de configuración.
Esta imagen representa el esquema a nivel de parametrización de un archivo kamailio.cfg
Ahora vamos a ver cada punto:
1.- Definiciones Globales
Variables que vamos a usar a lo largo de la lógica de enrutamiento, las cuales pueden estar referidas a parámetros de log, direcciones IP y puertos que va escuchar el servidor, entre otras.
Tiene la siguiente forma:
2.- Sección de Módulos
Es donde definimos o «cargamos» los módulos vamos a user, por ejemplo el modulo de MYSQL para guardar los registros en base de datos, o el modulo de TLS para cifrado de la señalización.
Tienen las siguiente forma:
3.- Sección de configuración de módulos
En esta sección de parametrizan o configuran los módulos que hemos cargado en la sección anterior, es muy importante configurar los módulos adecuadamente, ya que en algunos casos se activan con configuraciones por defecto, lo cuales pueden producir a la larga efectos extraños en el comportamiento.
Tienen la siguiente forma:
4.- Bloques de rutas o lógica de enrutamiento
Esta es la sección es «clave» en el archivo de configuración ya que va establecer todo el camino que va seguir las peticiones SIP que recibamos, aquí hay que decir que no existe un patrón único, ya que uno puede hacer su lógica tan simple o tan compleja como lo desee, es decir con mas o menos bloques de rutas, sin embargo existen ciertos patrones que uno siempre va respetar o encontrar en otros archivos, estos son bloques de rutas que normalmente vamos a encontrar:
- Principal (Main ó request_route)
- Secundarias (REQINIT, WITHINDLG,REGISTRAR)
- Failure (failure_route)
- Branch (branch_route)
En esquema que pude realizar para mi autocompasión de un esquema de enrutamiento maso menos complejo:
Como se puede apreciar todo parte del bloque «Main» o «Request Route» y va ingresando a los demás bloques en donde cada uno tiene un objetivo puntual aplicado a la solicitud SIP entrante.
El bloque «REQINIT» tiene un papel muy importante ya que hace la mayoría de la comprobaciones previas como la evaluación de seguridad entre otras cosas.
Luego los métodos secundarios realizan el registro, localización y reenvío de las solicitudes SIP a otro server, un Asterisk por ejemplo. según sea el caso.
Bueno espero que este post les amplié el panorama respecto al funcionamiento de kamailio, mas adelante desmenuzaremos otros aspectos de este formidable software.
Saludos
Juan Oliva
¿ TU SEGURIDAD AL 100%? – PARTE3 – A
Entre apuros y temas profesionales, recién me desocupo.
Como les comente les el anterior post ¿ TU SEGURIDAD AL 100%? – PARTE2 continuaremos con el pequeño manual básico del UTM sophos para posteriormente realizar las pruebas de rendimiento a nivel de seguridad, haciéndole focus en el parte de UTM:
Este es el esquema que trabajaremos para las primeras configuraciones:
- ingresamos al portal(de preferencia firefox) https://192.168.20.1:4444
- Aceptamos el certificado inseguro
2. En el siguiente panel agregaremos nuestros datos de la empresa, includido empresa, ciudad, pais y un password:
username:admin
password: elquemasteguste
aceptamos las condiciones de uso
3. esperamos unos 40 segundos e ingramos con nuestro user y password, ojo que el user sera «admin»
4. solo ponemos continuar:
5. habrá una licencia de activación por 30 dias, que servirá para realizar las pruebas que deseen:
6. Listo, hasta cada todo bien, ahora cargaremos configuraciones mediante el wizzard, podremos configurar tanto las internfaces como el FW y el UTM(filtro web, antispam, antivirus, antispam etc)
- interfaz lan:
- interfaz wan(ponemos configurar despues, esto ya depende de uds)
- Con el wizzard podemos crear una regla de salida para ciertos servicios
**** red lan(192.168.20.0/24) permit http,https,dns —> internet
- Y también permitir realizar pruebas de conectividad hacia el utm:
7. En el wizzar también podremos realizar activaciones y configuraciones del IPS, filtro web, antispam (ojo por 30 dias)
- Activación del ips
- Activación del filtro web y antivirus
antispam
8) bueno ya esta casi listo para comenzar, aca aparecera un resumen de lo que hemos hecho.
9) Este sera nuestro primer panel, las caracteristicas del panel son como la de la mayoria de equipos UTM, apareceran licencias, versiones de sistemas operativo, consumo de CPU, tambien podemos añadirles widgets, para verficar alincion por ejemplo las reglas FW y del UTM escritas asi como logs del sistemas y de seguridad
- Como nota importante es las secciones de configuracion:
Donde estara el managment, interfaz routing, definition user etc
El el panel de control verificamos:
- Interfaces activas:
- Consumo de cpu
- Registro de log de amenazas
- Así como también podemos agregar mas widgets.
10.Bien ahora iremos en la parte izquierda a la sección de interface y routing, en esta sección podemos verificar el estado de las interfaz, con cuadros referenciales al consumo de ancho de banda, estado de la interfaz etc
- Aca existen varias subsecciones:
11. En la subseccion interfaces
por ejemplo podemos observar o re configurar la interface managment:
- Crear una interfaz wan:
- Dando en up a la interfaz creada:
12. También podemos crear rutas estáticas, en el menú izquierdo en la subseccion de routing static:
- podemos configurar rutas como las siguientes:
13. Ahora para crear objetos tanto a nivel de redes como de servicios iremos a la seccion Definition & users
- Dentro de esta sección tendremos muchas subsecciones
- Creamos un network definitions
- También podemos crear un service definition
14. listo, despues de crear el service y el network definition podemos crear reglas en el FW:
En network protection / firewall
activar la regla
15. Y podemos verificar los logs:
En la próximo post (parteB) hablaremos un poco de el UTM, para posteriormente crear el siguiente esquema muy similar a hacking fortinet , donde tendremos un servidor expuesto a la nube con un software vulnerable(pentesterlab)
Saludos
continuara:
Howto Instalación Postgresql 8.3.0 sobre debian
Hace tiempo que no posteaba nada por andar un poco atareado ( solo un poco jejee) , bueno ahora posteo la instalación de postgresql 8.3.0 sobre debian etch r1 , espero que le sirva a mas de uno.
1.- Instalando dependencias generales
Desde Apt
apt-get install make gcc g++ bzip2
instalando zlib
tar -xjf zlib-1.2.3.tar.bz2
./configure
make
make install
vi /etc/locale
es_PE ISO-8859-1
es_ES ISO-8859-1
( Para mi caso, puede cambiar de acuerdo al País )2.- Instalación de postgresql 8.3.0 desde fuentes sin modulo readline
tar -xjvf postgresql-8.3.0.tar.bz2
./configure –without-readline
make
make install
Si todo salien bien hasta aqui , entonces ya temos echo lo mas dificil, ahora solo queda configurar el entorno de las bases de datos y levantar el servidor.
3.- Configuracion del entorno
– Creando usuario postgres
adduser postgres
– Creando carpetas para las bases
mkdir /usr/local/pgsql/data
– Inicializando el servidor postgresl
chown postgres /usr/local/pgsql/data
su – postgres
/usr/local/pgsql/bin/initdb -E LATIN1 -D /usr/local/pgsql/data
(Esto es muy importante si quieren inicializar las bd con formato LATIN1 , que soporta caracteres especiales)
/usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data >logfile 2>&1 &
– Cargando el lenguaje plpsql en el template1
/usr/local/pgsql/bin/createlang plpgsql template1
– Creando base de datos test
/usr/local/pgsql/bin/createdb test
/usr/local/pgsql/bin/psql test
– Configurando acceso local o remoto
vi /usr/local/pgsql/data/pg_hba.conf
# «local» is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
#host all all 127.0.0.1/32 trust
# IPv6 local connections:
#host all all ::1/128 trust
host all all 240.171.180.0 255.255.255.0 password # acceso a alguna red publica
host all all 10.10.4.0 255.255.255.0 password # acceso a alguna dmz
host all all 192.168.1.0 255.255.255.0 password # acceso a la lan
host all all 0.0.0.0 0.0.0.0 password # esto solo si quieren dar acceso a cualquier red
vi /usr/local/pgsql/data/postgresql.conf
listen_addresses = ‘IPADDESS’ #colocar la ip local
port = 5432
TIPS
– Iniciando el servicio
/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start
– Respaldo de base de datos , por ejemplo test
su – pgsql -c «pg_dump test > /usr/backups/testbd061206-1215.dump
– Restauración
/usr/local/pgsql/bin/psql -d test -f /usr/backups/testbd061206-1215.dump
Instalacion Mono sobre Centos 5
Aqui explico como instalar mono con los repositorios de AL sobre rhel5 , espero que le sirva a mas de uno.
a) Configuracion de repositorio
wget http://www.alcancelibre.org/al/AL-RPM-KEY
rpm –import AL-RPM-KEY
vi /etc/yum.repos.d/CentOS-Base.repo
[AL-Desktop]
name=Enterprise Linux $releasever – $basearch – AL Desktop
mirrorlist=http://www.alcancelibre.org/al/el5/al-desktop
gpgkey=http://www.alcancelibre.org/al/AL-RPM-KEY
b) Instalación y configuración de mono sobre apache web server
yum -y install mono-core mono_web xsp mod_mono
vi /etc/httpd/conf.d/mod_mono.conf
Nota: debajo de la primera linea colorar
Alias /demo «/usr/lib/xsp/test»
AddMonoApplications default «/demo:/usr/lib/xsp/test»
<Location /demo>
SetHandler mono
</Location>
#service httpd restart
Si todo salio bien cuando ingresemos a http://localhost/demo/
ingresaremos a los demos de .net en nuestro apache
Consideraciones: La instalacion se realizo sobre un sistema limpio , como veran se omitio la instalacion de httpd