Usando Linux para muchas cosas y disfrutando de videojuegos, en dispositivos moviles, consolas y pc. Using Linux for many things and enjoying video games, mobile devices, consoles and pc

Como instalar y configurar pfSense Squid Transparent Proxy

DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso
El ancho de banda nunca es suficiente y mas en las oficinas. Por mas ancho que sea el canal mas estrecho pareciera que es y esto es debido al incremento de aplicaciones web, las videoconferencias, la telefonía ip y así un sin fin de cosas que se transmiten por internet. Ahora, la solución no siempre es contratar un canal mas "ancho" (incrementando gastos) sino poner políticas y optimizar su uso con herramientas como la que veremos hoy en este articulo, un pfSense Squid transparent proxy. Dentro de los proxy el mas popular es Squid; este lo veremos en servidores y firewalls optimizando el uso del canal WAN (Internet) y hoy lo instalaremos y configuraremos en pfSense 2.3.x.
Debo aclarar que esta solución para que funcione bien hay que ir la ajustando en el pasar de los días y así dependiendo de nuestras necesidades, llevarla a optimizar nuestra salida a internet. Después de esta breve introduccion comencemos con este pfsense tutorial paso a paso.

Requerimientos


Instalamos pfSense Squid Proxy

-Abrimos un browser y navegamos al dashboard de nuesto firewall pfSense logeandonos con la cuenta admin. Ya allí nos vamos al menu System - Package Manager y le damos click
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso


                                           Como configurar OpenVPN en pfSense paso a paso

-Damos click en Available Packages. Se nos mostrara un listado de paquetes que podemos instalar. Escribimos squid en la caja de texto Search term y presionamos Enter
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Damos click al botón verde +Install de squid
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Se nos pide confirmación de la instalación del paquete pfSense-pkg-squid. Damos click al botón Confirm
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Terminando la instalación vamos al menu Services - Squid Proxy Server y le damos click
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

Configuramos pfSense transparent Squid Proxy

-Comenzamos configurando el cache antes que todo. Damos click a la pestaña Local Cache. A continuación veremos varios parámetros, solo diré cuales cambiaremos y los demás, los dejamos con sus valores default
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Colocamos el espacio a usar por squid proxy en Hard Disk Cache Size (en este caso destino 5120mb), separo 1024mb para memoria RAM en Memory Cache Size (como buena política no usar mas del 50% de la memoria total de nuestro servidor ya que squid siempre en su momento puede usar mas)
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Damos click al botón Save
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Vamos a la pestaña General. Activamos:

  • Enable Squid Proxy
  • Keep Settings/Data
  • Allow Users on interface


DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Seguimos activando opciones:

  • Transparent HTTP Proxy


DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Seguimos activando opciones:

  • Enable Access Logging
  • Rotate Logs: 10 (cantidad de días a los que se rota el log)
  • Error Language: es (idioma en que se mostraran los errores de paginas) 
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Mas opciones. Al terminar damos click al botón Save

  • Visible Hostname (nombre del equipo mostrado en errores de paginas)
  • Administrator's Email: email del administrador de squid proxy
  • Suppress Squid Version (recomendable por motivos de seguridad, no le facilitemos a alguien que nos quiera atacar saber que versión usamos)
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-A partir de este momento ya se esta ejecutando pfsense transparent squid proxy. En la esquina superior derecha veremos una serie de iconos que nos permiten, reiniciar el servicio, pararlo, etc
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

Verificamos Squid Proxy

-Si damos click al icono de servicios veremos el listado de servicios ejecutándose en pfsense firewall, todos, no solo el de squid
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Devolviendonos al menu de Squid proxy damos click a la pestaña Real Time y allí veremos los logs en tiempo real
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

Configuramos Squid Transparent proxy https


-Otra posibilidad útil es poder filtrar también las paginas web seguras (ahora que se esta haciendo lo posible porque todas sean con https). Vamos al menu System - Cert Manager
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-En la pagina que nos aparece de la pestaña CAs damos click al botón +Add
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Modificamos los siguientes campos. Al terminar damos click al botón Save

  • Descriptive name: Nombre descriptivo, cualquiera
  • Method: Create an internal Certificate Authority
  • Key length (bits): 2048
  • Digest Algorithm: sha256
  • Lifetime (days): 3650 (vigencia en días)
  • Country Code: CO (en mi caso CO es Colombia)
  • State or Province: Distrito capital (Estado o provincia)
  • City: Bogota (Ciudad)
  • Organization: Empresa u organización
  • Email Address: email del administrador
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Ya tenemos creado un CA para Squid Proxy
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Nos devolvemos al menu de squid proxy y en la pestaña General modificamos. Al terminar damos click al botón Save

  • Enable SSL Filtering
  • CA: elegimos el CA que acabamos de crear
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

Activamos antivirus Clamav en pfSense Squid Proxy

-Una opcion mas que util, utilizar antivirus en nuestro squid proxy. Modificamos las siguientes opciones

  • Enable Squid antivirus check using ClamAV
  • Damos click al botón Update AV (actualizamos firmas de virus)
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

-Mas opciones a modificar. Al terminar damos click al botón Save

  • Exclude Audio/Video Stream (los paranoicos lo activaran, yo no lo creo necesario)
  • ClamAV Database Update: (cada cuanto verificara si hay nuevas firmas de virus por descargar)
  • Regional ClamAV Database Update Mirror: United States (escoge el mas cercano, sera de donde se descargaran las firmas de virus)
DriveMeca instalando y configurando pfSense Squid Transparent Proxy paso a paso

Se por experiencia que los primeros días serán difíciles porque estarás monitoreando y ajustando la configuracion de tu proxy transparent (con muchos usuarios quejándose). Pero vale la pena ya que optimizaras el uso del ancho de banda. Ya usas squid proxy? en modo transparent o con puerto? en que servidor lo usas, Linux Ubuntu server, acaso en Linux Centos?.

Quieres apoyarme? El conocimiento es gratis pero...igual tengo gastos. Puedes donarme dinero por medio de PayPal.

Donar 25 USD

Aun tienes dudas y quieres preguntarme algo que por email no crees posible? ahora puedes agendar una cita virtual conmigo (por medio de hangout de google), haz click aquí para agendar cita conmigo. Bien, hazme un favor, compártelo en tus redes sociales (compartir es sexy). Escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.

Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.


Share/Bookmark

Top razones por las que debes usar Linux

Top razones por las que debes usar Linux
Los equipos con sistemas operativos Linux cada vez son mas frecuentes, es ya imposible desconocer las ventajas de Linux sobre otros OS (Microsoft Windows, Mac OS) pero aun no te he convencido de usarlo como OS principal (o único), cierto?
Hoy te traigo el TOP 8 razones por las que debes usar Linux, vota por tus preferidas, ahora es tu turno.

Top razones por las que debes usar Linux

Top razones por las que debes usar Linux
Falto alguna razón para usar sistema operativo Linux, crees que alguna no es verdadera?, escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.

Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como cambiar zona horaria Linux paso a paso

DriveMeca cambiando la zona horaria en Linux paso a paso
El tiempo corre, también en los computadores y a veces sin darnos cuenta instalamos con una zona horaria que no es (o recibimos ya instalado con la que no es) la que necesitamos.
Porque es importante la zona horaria correcta, bien, tan sencillo como que no te llegaran mails de reportes con la hora correcta, tus scripts se ejecutaran a la hora que no es y podría seguir enumerandote casos en que debes tener bien configurada la hora de tu pc o servidor Linux. Ya con estos ejemplos seguro sabrás que hoy te hablare de como cambiar la zona horaria Linux paso a paso.
Veremos dos formas, para Linux Centos/RedHat o Linux Ubuntu server, dependiendo del OS, serán los comandos que usaras.

Requerimientos

Abrimos una consola de texto y dependiendo del OS ejecutamos los siguientes comandos

Zona horaria en Linux Centos / RedHat


-Hacemos una copia del archivo localtime actual
mv /etc/localtime /etc/localtime.old

Artículos recomendadosComo instalar paquetes del dvd de centos 7 de forma local
                                            Como configurar una dirección IP estática en Centos 7
                                            Configurando servicios en Linux Centos / RedHat

-Creamos un link simbólico, en mi caso la zona horaria es America/Bogota (-5), dependiendo del tuyo, sera el que coloques
ln -s /usr/share/zoneinfo/America/Bogota /etc/localtime

-Verificamos que localtime apunte al archivo de nuestra zona horaria
ls -la /etc/localtime 
lrwxrwxrwx 1 root root 34 nov 11  2014 /etc/localtime -> /usr/share/zoneinfo/America/Bogota

-Ejecutamos el comando date para verificar la hora
date
mar may 10 14:24:13 COT 2016

Zona horaria en Linux Ubuntu server


-Hacemos una copia del localtime actual
sudo mv /etc/localtime /etc/localtime.old

Artículos recomendadosComo instalar interfaz grafica en Ubuntu server paso a paso
                                           Como configurar ip fija en Ubuntu Linux

-Creamos un link simbólico apuntando a nuestra zona horaria, dependiendo de donde este tu servidor Linux, sera la que coloques activa
sudo ln -s /usr/share/zoneinfo/America/Bogota /etc/localtime

-Verificamos nuestra zona horaria actual en producción
sudo ls -la /etc/localtime
lrwxrwxrwx 1 root root 34 nov 11  2014 /etc/localtime -> /usr/share/zoneinfo/America/Bogota

-Probamos la fecha y hora de nuestro servidor Linux Ubuntu
date
mar may 10 14:24:13 COT 2016

Sin importar si usas Linux Centos / RedHat o Linux Ubuntu server, con los anteriores comandos ya debes tener tu equipo con el timezone correcto. Ya conocias como cambiar la zona horaria, alguna otra forma?, escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.
Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como instalar y configurar Gogs en Linux Ubuntu server

DriveMeca instalando y configurando un servidor Git con Gogs en Linux Ubuntu server
Aunque lo neguemos, no siempre las mejores cosas son gratis en este mundo, y eso pasa a ratos en el opensource. Git de unos años para acá se ha vuelto muy popular en el ámbito de desarrollo y a su vez GitHub concentrando alrededor del mundo a los desarrolladores. Ahora, en algún momento puede que quieras tener tu propio servidor Git y allí llegamos al problema, GitHub no tiene versión para descargar e instalar en nuestra LAN (se pueden tener proyectos privados, pero debes pagar).
Menos mal estamos hablando de software opensource, donde todos los días nace una solución nueva llegando a nuestro tema del articulo de hoy, como instalar y configurar Gogs en un servidor Linux Ubuntu.
Gogs (Go Git Service) es una interfaz web para manejar repositorios Git algo mas fácil sin tener que conocer intricados comandos y con muchas facilidades.
Ya con esta breve introduccion veamos este articulo de Ubuntu en español.

Requerimientos



-Nuestro servidor para este articulo estara en la ip 192.168.1.163

-Instalamos dependencias y colocamos contraseña a la cuenta root de mariadb cuando lo pida
sudo apt-get install mariadb-server mercurial git supervisor
DriveMeca instalando y configurando un servidor Git con Gogs en Linux Ubuntu server

Articulo recomendado: Como instalar interfaz grafica en Ubuntu server paso a paso

-Creamos la db para gogs
mysql -u root -p
CREATE DATABASE gogsdb CHARACTER SET utf8;
exit;

-Agregamos al final de nuestro archivo .bashrc
vi ~/.bashrc
export GOPATH=/home/git/go
export GOROOT=/usr/local/src/go
export PATH=${PATH}:$GOROOT/bin

-Activamos las variables
source ~/.bashrc

-Descargamos desde este URL la ultima versión para Linux del lenguaje Go

wget -c https://storage.googleapis.com/golang/go1.6.2.linux-amd64.tar.gz

-Descomprimimos el archivo
tar xzvf go1.6.2.linux-amd64.tar.gz

-Lo movemos al home de git
sudo mv go $GOROOT

-Descargamos por medio de go el ultimo gogs disponible
go get -d github.com/gogits/gogs

-Compilamos con go
cd $GOPATH/src/github.com/gogits/gogs
go build

-Creamos un directorio para logs
sudo mkdir -p /var/log/gogs

-Creamos un conf para supervisor, el encargado de ejecutar el servicio
sudo vi /etc/supervisor/supervisord.conf
[program:gogs]
directory=/home/git/go/src/github.com/gogits/gogs/
command=/home/git/go/src/github.com/gogits/gogs/gogs web
autostart=true
autorestart=true
startsecs=10
stdout_logfile=/var/log/gogs/stdout.log
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=10
stdout_capture_maxbytes=1MB
stderr_logfile=/var/log/gogs/stderr.log
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=10
stderr_capture_maxbytes=1MB
environment = HOME="/home/git", USER="git"
user = git

-Reiniciamos el servicio
sudo service supervisor restart (Linux Ubuntu server 14.04)

sudo systemctl restart supervisor (Linux Ubuntu server 16.04)

-Verificamos este ejecutandose gogs
ps -ef | grep gogs
git      26831 26830  2 16:27 ?        00:00:00 /home/git/go/src/github.com/gogits/gogs/gogs web

-Miramos algo mas de su ejecucion
tail /var/log/gogs/stdout.log
2016/04/29 16:27:24 [W] Custom config '/home/git/go/src/github.com/gogits/gogs/custom/conf/app.ini' not found, ignore this if you're running first time
2016/04/29 16:27:24 [T] Custom path: /home/git/go/src/github.com/gogits/gogs/custom
2016/04/29 16:27:24 [T] Log path: /home/git/go/src/github.com/gogits/gogs/log
2016/04/29 16:27:24 [I] Gogs: Go Git Service 0.9.22.0425
2016/04/29 16:27:24 [I] Log Mode: Console(Trace)
2016/04/29 16:27:24 [I] Cache Service Enabled
2016/04/29 16:27:24 [I] Session Service Enabled
2016/04/29 16:27:24 [I] Run Mode: Development
2016/04/29 16:27:25 [I] Listen: http://0.0.0.0:3000

-Activamos permisos, creamos un directorio de logs dentro del home de los repositorios
sudo chown -R git.git /home/git/
sudo mkdir /usr/local/git/log
sudo chown git.git /usr/local/git/log

-Abrimos un browser y navegamos a http://192.168.1.163:3000/install ingresando los campos Database Type (MySQL), Host (127.0.0.1:3306), User (root) Password (contraseña del root de MySQL), Database Name (gogsdb), Application Name (Nombre de nuestro Gogs), Repository Root Path (path de donde almacenaremos los repo, en este caso /usr/local/git), Run User (git)
DriveMeca instalando y configurando un servidor Git con Gogs en Linux Ubuntu server

-Domain (ip del servidor), SSH Port (22), HTTP Port (3000), Application URL (http://192.168.1.163:3000), Log Path (/usr/local/git/log)
DriveMeca instalando y configurando un servidor Git con Gogs en Linux Ubuntu server

-Activamos opciones de Server and Other Services Settings y creamos una cuenta con privilegios de admin (no puede llamarse admin) en Admin Account Settings y damos click al botón Install Gogs
DriveMeca instalando y configurando un servidor Git con Gogs en Linux Ubuntu server

-Si seguiste los pasos, ya debes tener Gogs funcionando correctamente y nos debe mostrar la consola web
DriveMeca instalando y configurando un servidor Git con Gogs en Linux Ubuntu server

-Podemos personalizar nuestro perfil dándole click al botón gravatar de la derecha superior y entrando a Profile
DriveMeca instalando y configurando un servidor Git con Gogs en Linux Ubuntu server

-Como somos administradores podemos llegar al panel de configuracion y ver mas opciones de mantenimiento de nuestro Gogs
DriveMeca instalando y configurando un servidor Git con Gogs en Linux Ubuntu server

-Entre las tareas ya disponibles tenemos la de crear usuarios en el menu Users
DriveMeca instalando y configurando un servidor Git con Gogs en Linux Ubuntu server

-Ahora, para crear un repositorio vamos al URL http://192.168.1.163/repo/create y llenamos los campos. Terminamos dándole click al botón  Create Repository
DriveMeca instalando y configurando un servidor Git con Gogs en Linux Ubuntu server

-La otra forma es darle click al símbolo + superior derecho y allí veremos la opción. Así luce nuestro nuevo repositorio en Gogs
DriveMeca instalando y configurando un servidor Git con Gogs en Linux Ubuntu server

-Ya te había comentado que puedes poner en Español la interfaz web de Gogs? Bien, damos click al botón inferior con forma de planeta y allí veremos los idiomas
DriveMeca instalando y configurando un servidor Git con Gogs en Linux Ubuntu server

Trabajando localmente un repositorio

-Para descargar o clonar un repositorio ejecutamos
drivemeca@cabrera-VAIO:~$ git clone http://192.168.1.163:3000/admgogs/Repositorio_de_prueba.git
Clonar en «Repositorio_de_prueba»...
Username for 'http://192.168.1.163:3000': admgogs
Password for 'http://admgogs@192.168.1.163:3000':
remote: Counting objects: 5, done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 5 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (5/5), done.
Checking connectivity... hecho.

-Ya tenemos una copia del repositorio en nuestro pc local
ls -la Repositorio_de_prueba/
total 56
drwxrwxr-x  3 drivemeca drivemeca  4096 may  2 17:24 .
drwxr-xr-x 50 drivemeca drivemeca  4096 may  2 17:23 ..
drwxrwxr-x  8 drivemeca drivemeca  4096 may  2 17:24 .git
-rw-rw-r--  1 drivemeca drivemeca  1552 may  2 17:24 .gitignore
-rw-rw-r--  1 drivemeca drivemeca 34570 may  2 17:24 LICENSE
-rw-rw-r--  1 drivemeca drivemeca    66 may  2 17:24 README.md

-Si modificamos el código en nuestra copia local, por ejemplo, cambiamos el README.md
cd Repositorio_de_prueba/
echo 'Me encanta Gogs, una forma amigable de manejar Git' >> README.md

-Publicamos los cambios al servidor Git con Gogs
git add --all && git commit -m "init commit" && git push origin master
[master 5c53be9] init commit
 1 file changed, 1 insertion(+), 1 deletion(-)
Username for 'http://192.168.1.163:3000': admgogs
Password for 'http://admgogs@192.168.1.163:3000':
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 350 bytes | 0 bytes/s, done.
Total 3 (delta 1), reused 0 (delta 0)
To http://192.168.1.163:3000/admgogs/Repositorio_de_prueba.git
   e47361f..5c53be9  master -> master

Un cambio del cielo a la tierra dirás cuando comiences a manejar tus repositorios por medio de Gogs, ya lo conocías, usas otra alternativa, cual?, escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.
Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark