30 jun 2014

Bloquear Facebook en pfsense

Tengo configurado un proxy transparente con pfsense 2.1, para bloquear el acceso a facebook.com lo hago bloqueando el acceso al protocolo https (443) a las direcciones IPv4 en formato CIDR [1] utilizadas por facebook.

Para determinar las CIDR utilizo herramientas como la de elhacker.net [2] o ultratools.com [3] en las cuales consultando el dominio facebook.com arroja el ASN [4] para facebook.com

Luego de conocer el ASN de facebook, desde una terminal ejecuto el siguiente comando en el cual envío la salida a un archivo .txt el cual contendrá las direcciones IPv4 en formato CIDR de facebook.com
~$ whois -h whois.radb.net -- '-i origin AS32934' | grep ^route | grep -v route6 | cut -d" " -f7 > facebook.txt
Con estas direcciones creo aliases en firewall>>Alias
    Nombre: Elegir un nombe adecuado para su identificación
    Type: Networks
    Networks(ip) y CIDR:
        74.119.76.0/22
        65.201.208.24/29
        ...


Luego en Firewall >> Rules >> Lan
Agrego una regla de la siguiente manera:
        Action: Reject
        Interface: Lan
        Protocolo: Tcp
        Source:
            Type: LanSubnet
        Destination:
            Type: Single Host or Alias
            Address: Elegir el Alias creado.

        Destination port range:
            From: Https
            To: Https

 

Enlaces:
[1] http://goo.gl/jIrb7u
[2] http://goo.gl/4d9KwJ
[3] http://goo.gl/jz1Jcs
[4] http://goo.gl/K1znEe

Fuentes:
http://www.alexisabarca.com/2012/02/bloquear-facebook-con-el-firewall-pfsense/
http://csrg-it.blogspot.com/2013/03/bloquear-protocolo-https-de-facebook.html
https://forum.pfsense.org/index.php/topic,36274.0.html

20 jun 2013

SVN + WebSVN


"Subversion es un sistema de control de versiones diseñado específicamente para reemplazar al popular CVS. Es software libre bajo una licencia de tipo Apache/BSD y se le conoce también como svn por ser el nombre de la herramienta utilizada en la línea de comando.

Una característica importante de Subversion es que, a diferencia de CVS, los demás archivos con versionamiento no tienen cada uno un número de revisión independiente, en cambio, todo el repositorio tiene un único número de versión que identifica un estado común de todos los archivos del repositorio en un instante determinado del repositorio que se está trabajando."

fuente: Wikipedia

Instalamos SVN y apache
apt-get install subversion subversion-tools apache2 libapache2-svn

Se crea el directorio donde vamos a almacenar nuestros archivos SVN
mkdir svn

Creamos nuestro repositorio y su estructura
svnadmin create /path/to/repo
svn mkdir file:///path/to/repo/trunk -m "init commit"
svn mkdir file:///path/to/repo/tags -m "init commit"
svn mkdir file:///path/to/repo/branches -m "init commit"

Creamos el archivo de control de accesos
# htpasswd2 -c /etc/apache2/dav_svn.passwd usuario1
# htpasswd2 /etc/apache2/dav_svn.passwd usuario2

Aseguramos los permisos de acceso con  Dav SVN Authz
nano /etc/apache2/mods-enabled/dav_svn.authz

[groups]

team = usuario1
devteam = asuario1,usuario2

[/]

*=
@team = r

[repositorio:/]

@team = r
@devteam = rw

y agregamos la siguiente linea en el archivo /etc/apache2/mods-available/dav_svn.conf 
...
AuthzSVNAccessFile /etc/apache2/dav_svn.authz
...

Finalmente instalamos WebSVN para consultar nuestros repositorios desde un navegador con una vista mas agradable
apt-get install websvn

fuetes:
http://davidwinter.me/articles/2006/03/03/access-control-for-subversion-with-apache2-and-authz/
http://www.debian-administration.org/articles/374



28 may 2013

Expresiones Regulares


Vale  la pena el esfuerzo aprender a usar expresiones regulares por el trabajo que nos pueden ahorrar en proyectos futuros. Es más que probable que quien no sepa expresiones regulares no las eche de menos en su trabajo cotidiano, pero lo que es cierto es que quien las conoce no descarta una oportunidad para utilizarlas y ahorrarse bastante trabajo y esfuerzo.


Ademas, pueden utilizar regex-coach que es un excelente banco de pruebas en el que puedes ir probando el funcionamiento de tu expresión regular en tiempo real, y él mismo te marca el resultado de lo que estás buscando. Además, puedes elegir entre una multitud de opciones: case sensitive, cadena multilínea, hacer un replace/split…

CaracterEfecto/Uso
Cualquier carácterRepresenta el caracter dado a menos que se especifique lo contrario.
.Representa cualquier carácter menos un salto de línea o de párrafo. Por ejemplo, la búsqueda de “c.ma” encuentra “cama”, “coma” y “cima”.
^Sólo encuentra el término buscado si se muestra al principio del párrafo. No se tienen en cuenta los objetos especiales, por ejemplo campos vacíos o marcos de caracteres anclados situados al final del párrafo. Ejemplo: “^Luis”.
$Sólo encuentra el término buscado si se muestra al final del párrafo.! No se tienen en cuenta los objetos especiales, por ejemplo campos vacíos o marcos de caracteres anclados situados al final del párrafo. Ejemplo: “Luis$”.
$ por sí solo coincide con el final de un párrafo. De esta manera, es posiblebuscar y reemplazar saltos de párrafo.
*Busca cero o más de los caracteres que preceden a “*”. Por ejemplo, “Ab*c” encuentra “Ac”, “Abc”, “Abbc”, “Abbbc”, y así sucesivamente.
+Busca uno o más de los caracteres que preceden a “+”. Por ejemplo, “AX.+4″ encuentra “AXx4″, pero no “AX4″.
Siempre se busca la cadena de texto más larga posible de un párrafo que coincida con este criterio de búsqueda. Si el párrafo contiene la cadena de caracteres “AX 4 AX4″, queda seleccionado todo el fragmento.
 ?Busca cero o ninguno de los caracteres que preceden a “?”. Por ejemplo, “Textos?” busca “Texto” y “Textos”, y “x(ab|c)?y” busca “xy”, “xaby” o “xcy”.
\La función de búsqueda interpreta el carácter especial que va después de “\” como normal, no como expresión regular (menos en el caso de las combinaciones \n, \t, \> y \<). Por ejemplo, “árbol\.” encuentra “árbol.”, no “árbo” ni “arboles”.
\nRepresenta un salto de línea que se ha insertado con la combinación de teclas Mayús + Entrar.! Para convertir un salto de línea en un salto de párrafo, escriba \n en los cuadros de Buscar y Reemplazar con, y efectúe una acción de búsqueda y sustitución.
\n en la caja de texto Buscar por para la la linea de ruptura sea insertado con las teclas combinadas de Shfit+Intro.
\n en la caja de Buscar por esta por un salto de párrafo que pueden ser ingresado con la tecla de Intro.
\tRepresenta una ficha. Esta expresión también se puede emplear en el cuadroReemplazar por.
\bMatch a word boundary. For example, “\bbook” finds “bookmark” but not “checkbook” whereas “book\b” finds “checkbook” but not “bookmark”. The discrete word “book” is found by both search terms.
^$Busca un párrafo vacío.
^.Busca el primer carácter de un párrafo.
& ó $0Agrega la cadena de caracteres que se encontró según los criterios de búsqueda del cuadro Buscar en el término del cuadro Reemplazar porcuando se efectúa una sustitución.
Por ejemplo, si escribe “ventana” en el cuadro Buscar y “&marco” en el cuadro Reemplazar por, la palabra “ventana” se sustituye por “ventana marco”.
También se puede entrar un signo de “&” en el cuadro Reemplazar por para modificar los atributos o el formato de la cadena de caracteres que haya encontrado la búsqueda.
[abc123]Representa uno de los caracteres situados entre los paréntesis.
[a-e]Representa cualquiera de los caracteres que se encuentran entre a y e, incluyendo tanto el primer carácter como el úlltimo
Los caracteres está ordenados según sus números de código.
[a-eh-x]Representa cualquier carácter situado entre a-e y h-x.
[^a-s]Representa cualquier carácter que no se encuentre entre a y s.
\xXXXXRepresenta un carácter especial según su código hexadecimal de cuatro dígitos (XXXX).
El código del símbolo depende de la fuente utilizada. Los códigos se muestran mediante Insertar – Símbolos.
|Busca los términos que aparecen antes de “|” y también los que aparecen después de “|”. Por ejemplo, “esto|eso” busca “esto” y “eso”.
{2}Define la cantidad de veces que aparece el carácter situado antes del corchete de apertura. Por ejemplo, “cre{2}” encontrará y seleccionará “cree”.
{1,2}Define la cantidad mínima y máxima de veces que puede aparecer el carácter situado antes del corchete de apertura. Por ejemplo, “cre{1,2}” encontrará tanto “cre” como “cree”.
{1,}Define el mínimo de veces que puede aparecer el carácter situado antes del paréntesis de apertura. Por ejemplo, “cre{2}” encontrará tanto “creer” como “crear” o “creación”.
( )En el dialogo de Buscar:
Define los caracteres entre paréntesis como referencia. De esta forma, se puede acceder a la primera referencia de la expresión actual como “\1″, a la segunda como “\2″, etc.
Por ejemplo, si el texto contiene el número 13487889 y se busca la expresión regular (8)7\1\1, se encontrará “8788″.
También puede utilizar () para agrupar términos, por ejemplo, “a(bc)?d” busca “ad” o “abcd”.
En el dialogo de Re-emplazar con:
Usa el signo $ (dolar) en vez del \ (doble barra inclinada) para re-emplazar referencias. Usa el $0 para re-emplazar la cadena encontrado completamente.
[:alfa:]Representas un caracter alfabetica. Usa [:alpha:]+ para buscar una de estos.
[:dígito:]Representar un dígito digital. Usa [:dígito:]+ para encontrar una de estas.
[:alfanum:]Representa un carácter alfanumérico [(:letra:) y (:número)].
[:espacio:]Representa un espacio (pero no otros espacios en blanco).
[:imprimir:]Representa un carácter que se puede imprimir.
[:cntrl:]Representa un carácter que no se puede imprimir.
[:inferior:]Representa un carácter en minúscula si en Opciones se ha seleccionadoCoincidir mayúsculas y minúsculas.
[:mayús:]Representa un carácter en mayúscula si en Opciones se ha seleccionadoHacer coincidir mayúsculas y minúsculas.

27 may 2013

There is no public key available for the following key IDs


...

W: There is no public key available for the following key IDs:

8B48AD6246925553
W: There is no public key available for the following key IDs:
8B48AD6246925553

En oportunidades cuando se hace apt-get update se presenta un error como este de claves publicas la cual debemos simplemente añadir, para esto ejecutamos los siguientes comandos:


# gpg --keyserver subkeys.pgp.net --recv-keys 8B48AD6246925553 
# gpg --armor --export 8B48AD6246925553 | apt-key add -


y finalmente hacemos nuevamente


# apt-get update

23 abr 2013

Postfix : Limpiar cola de correo

Para limpiar la cola de correo en Postfix aplicar el siguiente comando:
#> postsuper -d ALL 

Para Borrar todos los mail de todos los directorios, probar con:
#> mailq grep ^[0-9A-Z] cut -d' ' -f1 xargs -n1 postsuper -d 

Para ver porque quedan atrapados los correos en la cola, ocupar mailq o postqueue -p
postqueue -p #Lista correos en cola
postqueue -f # libera los correos en cola
postqueue -s # libera los correos para el dominio especificado

Fuente: postfixtips.blogspot.com

14 feb 2009

JDownloader, gestor de descargas directas


Decidí instalar jdownloder como gestor de descargas directas, leí un poco sobre el mismo encontrando muy buenas referencias, todo parecía muy sencillo, la instalación del mismo y echarlo a andar, hasta que me ocurrió que al intentar maximizar la ventana esta lo hacia de forma correcta, pero el jdowloader mantenía su tamaño inicial rellenándose el resto de color gris.

El problema: "java"

Inicialmente instale java para poder utilizar Servoy Para la instalación de Servoy y Sybase (sqlanywhere 10 Developer) se requiere java, el mismo lo descargue desde la web de SUN
Java 1.5.0_16-b02.bin
Para empaquetar los binarios y ser instalado (dpkg -i) se aplico un “fakeroot make-jkpg”, además que requerí instalar java-package (aptitude install java-package)

Solución: "java"

Forum
Primero habilite los repositorios de medibuntu para mi versión de Ubuntu.
https://help.ubuntu.com/community/Medibuntu
# wget http://www.medibuntu.org/sources.list.d/hardy.list --output-document=/etc/apt/sources.list.d/medibuntu.list
luego:
# apt-get update
# apt-get install ubuntu-restricted-extras
Esto instala el java 1.6.0.07

Como decidí no eliminar la versión de java instalada en mi pc configure la versión de java que desde ahora utilizara mi SO

# /usr/sbin/update-alternatives --config java

Listo, mi jdownloader funciona correctamente!!


Enlaces:

ubuntu forum
medibuntu
esdebian

24 nov 2008

first snow!!!

De first_snow

Brescia, Italia 24/11/2008 , 08:15 am

Amaneció nevando! mientras revisaba los resultados de los comicios electorales en Venezuela se iniciaba una corta nevada, primera vez que veo una y la experiencia muy buena y bastante FRIA!! solo fue como una hora, pero yo ya estaba pensando en hacer angelitos y muñecos de nieve! XD