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

FreeIPA en tu oficina

Algo común es tener varias contraseñas para varios servicios y a la hora de cambiarlas o agregar o sacar a un usuario, es un dolor de cabeza. Por eso existe LDAP pero si vamos un poco mas allá, tenemos a Kerberos, dándole mas seguridad al proceso de autenticación. NTP y DNS aseguran que todos tengan la misma información.
Hoy veremos FreeIPA, una solución muy asequible que poco a poco a ido ganando madurez.
Debido a que es un proyecto para RedHat probado en Fedora, haremos nuestra instalación en un Fedora 16 con lo mínimo instalado y actualizado al día.

-Requerimientos:
Server con ip publica
Zona DNS que apunte al hostname del server, no funcionara con una ip privada o con localhost. Si tiene dudas de como generar la zona DNS al instalar puede usar --setup-dns para que se genere una que pueda colocar en su DNS

-Abrimos los puertos necesitados en iptables.

vi /etc/sysconfig/iptables

#http/https
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
#LDAP/LDAPS
-A INPUT -m state --state NEW -m tcp -p tcp --dport 389 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 636 -j ACCEPT
#Kerberos
-A INPUT -m state --state NEW -m tcp -p tcp --dport 88 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 88 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 464 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 464 -j ACCEPT
#DNS
-A INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
# NTP
-A INPUT -m state --state NEW -m udp -p udp --dport 123 -j ACCEPT
# Dogtag
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9180 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9443 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9444 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9445 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9446 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9701 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 7389 -j ACCEPT

-Salimos salvando y reiniciamos el servicio

service iptables restart

-Verificamos ports
iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination        
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere           
ACCEPT     all  --  anywhere             anywhere           
ACCEPT     all  --  anywhere             anywhere           
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ssh
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:http
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:https
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ldap
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ldaps
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:kerberos
ACCEPT     udp  --  anywhere             anywhere             state NEW udp dpt:kerberos
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:kpasswd
ACCEPT     udp  --  anywhere             anywhere             state NEW udp dpt:kpasswd
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:domain
ACCEPT     udp  --  anywhere             anywhere             state NEW udp dpt:domain
ACCEPT     udp  --  anywhere             anywhere             state NEW udp dpt:ntp
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:9180
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:tungsten-https
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:wso2esb-console
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:9445
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:9446
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:9701
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:7389
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination        
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere           
ACCEPT     all  --  anywhere             anywhere           
ACCEPT     all  --  anywhere             anywhere           
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

-Verificamos nuestro file hosts, ejemplo de uno bien configurado. OJO, cambiar la ip privada por la publica que usen.

cat /etc/hosts

127.0.0.1    localhost.localdomain    localhost
::1        localhost6.localdomain6    localhost6
192.168.1.1    ipatest.example.com    ipatest

-Desactivamos NetworkManager y activamos network

chkconfig NetworkManager off
service NetworkManager stop
chkconfig NetworkManagerDispatcher off
service NetworkManagerDispatcher stop
chkconfig network on
service network start

-Reiniciamos el server
reboot

-Instalamos, hora de ir por un cafe ;-)
yum install freeipa-server --enablerepo=updates-testing

-En caso de presentarse un error con libipa_hbac eliminarlo para que instale otra version

rpm -e libipa_hbac-1.8.2-10.fc16.i686 --nodeps

-Comenzamos a configurar. Para aceptar los defaults damos ENTER

ipa-server-install

Si todo marcha bien, después de un largo proceso terminara creándonos una zona de ejemplo para DNS en /tmp y diciéndonos que ports debemos abrir en el firewall.
Un motivo común de error es no tener el server en una ip publica con un domain valido en nuestros DNS y la ip con una reverse zone. Para eso agregamos el hostname a una zona que ya tengamos con nuestro domain y verificamos que tengamos una reverse zone para la ip publica que estamos usando. Si no tenemos esto, el script simplemente abortara. Lo podremos ejecutar nuevamente cuando tengamos esto listo.
Agregamos a nuestra zona DNS los parámetros que nos da en la zona de ejemplo:

ipatest            IN A            192.168.1.1
;
; ldap servers
_ldap._tcp        IN SRV 0 100 389    ipatest
;kerberos realm
_kerberos        IN TXT EXAMPLE.COM
; kerberos servers
_kerberos._tcp        IN SRV 0 100 88        ipatest
_kerberos._udp        IN SRV 0 100 88        ipatest
_kerberos-master._tcp    IN SRV 0 100 88        ipatest
_kerberos-master._udp    IN SRV 0 100 88        ipatest
_kpasswd._tcp        IN SRV 0 100 464    ipatest
_kpasswd._udp        IN SRV 0 100 464    ipatest
;ntp server
_ntp._udp        IN SRV 0 100 123    ipatest
; ldap servers
;kerberos realm
;ntp server

-Reiniciamos el servicio sshd para que lea los cambios.

service sshd restart

-Probamos la configuración. El pass es el que colocamos a Directory Manager

/usr/bin/kinit admin

-Verificamos haya creado un ticket

/usr/bin/klist

-Verificamos usuario

/usr/bin/ipa user-find admin
--------------
1 user matched
--------------
  User login: admin
  Last name: Administrator
  Home directory: /home/admin
  Login shell: /bin/bash
  UID: 878200000
  GID: 878200000
  Account disabled: False
  Keytab: True
  Password: True
----------------------------
Number of entries returned 1
----------------------------

-Hacemos un backup de ca-agent.p12 y cacert.p12

mkdir ca-backup
cp ca-agent.p12 cacert.p12 ca-backup

Con esto ya tenemos instalado y configurado un server Fedora con FreeIPA, en proximos articulos les mostrare como configurar una replica y conectar clientes.
Disfrútenlo
Share/Bookmark

Creando marcas de agua con Gimp 2.6

Ya sabemos como activar los efectos de capas en Gimp; hoy veremos como hacer de forma fácil y rápida una marca de agua (watermark) para nuestras fotos.
Para esto usaremos Gimp 2.6 en Ubuntu 11.10, en otras distribuciones Linux debe funcionar igual.

-Ejecutamos gimp y creamos un nuevo file de 650 x 250 pixels.

-Llenamos el fondo con negro desde el menú Edit - Fill with FG Color (suponiendo que tenemos el color negro en FG Foreground).

-Nos vamos al botón de Texto y cambiamos el color a Blanco (Foreground).

-Activamos el tipo de letra que usaremos, en mi caso Arial Bold, y tamaño 49 px.

-Damos click en la imagen para abrir la ventana de texto.

-Abrimos LibreOffice Writer y nos vamos al menú Insert - Special Character para copiar el símbolo de copyright. Despues de copiado, regresamos a gimp.

-Pegamos el símbolo y escribimos nuestro mensaje de marca de agua.

-Cambiamos el tamaño del tipo de letra hasta que nuestro mensaje se vea por completo en la caja elástica de la imagen. Damos click al botón Close de la caja de texto.

-Nos vamos al menú Layer - Layer Effects - Bevel and Emboss

-En la ventana del efecto activamos Preview (para ver como queda antes de activarlo), Inner Bevel y Soften 2. Cerramos con Ok

-Seleccionamos la capa de fondo y la llenamos de blanco, menú Edit - Fill with FG Color

-Seleccionamos la capa de texto y nos vamos al menú Layer - Layer Effects - Drop Shadow. Activamos Preview y Size a 10. Cerramos con Ok

-Nos vamos al menu Layer - Layer Effects - Outer Glow. Activamos Color negro,  Blend Mode Normal y Size 2. Cerramos con Ok.

-Eliminamos la capa de fondo

-Mezclamos las capas; nos paramos en la primera capa y nos vamos al menú Layer - Merge Down hasta que se deshabilite esta opción y solo nos quede una capa.

-Guardamos nuestro trabajo en un lugar temporal desde el menú File - Save As con extensión gbr

-En la ventana que nos sale, elegimos Export y le damos un nombre

-Abrimos una consola y copiamos el file al directorio gimp brush

cp webcobras.gbr /home/cabrera/.gimp-2.6/brushes

-Damos Refresh en gimp para ver la nueva brocha

-Cerramos la imagen y abrimos una foto o imagen que queremos colocarle nuestra marca de agua. OJO, no hagamos esto con originales, saquemos una copia antes.

-Escogemos el paintbrush y nos aparecerá nuestra marca de agua en el pincel para que la peguemos donde queramos. Con las teclas [ o ] disminuimos o aumentamos el tamaño de la marca de agua. Cambiamos la opacidad a menos del 50%. Recuerde al guardar decirle que lo haga al 100% de quality


Disfrútenlo
Share/Bookmark

Como instalar Android Cyanogen en un Motorola Back Flip

Hoy les mostrare como flashear una nueva versión de Cyanogenmod a nuestro celular Motorola BackFlip. En anteriores artículos les comente como hacer root y flashear un recovery.

-Descargamos Cyanogenmod en su ultima versión publicada.
http://download.cyanogenmod.com/get/RC/update-cm-7.2.0-RC1-motus-signed.zip

-Descargar Google Apps en su ultima versión publicada para 2.3.
http://goo.im/gapps/gapps-gb-20110828-signed.zip

-Copiamos ambos ficheros en el raiz de la memoria al celular conectándolo vía USB.

-Reiniciamos nuestro celular en modo Recovery

-Hacemos un backup de nuestro celular si no lo hemos ya hecho entrando a backup and restore 

-Hacemos un wipe cache partition

-Hacemos un wipe data/factory reset

-Instalamos desde install zip from sdcard - choose zip from sdcard escogiendo el zip que ya copiamos en el raiz, en este caso update-cm-7-20120420-NIGHTLY-motus-signed.zip
Vamos por un café mientras esperamos....
-Instalamos gapps-gb-20110828-signed.zip

-Apagamos el celular con power off y quitamos su batería por 1 minuto o un poco mas.

-Encendemos nuestro celular y después de un poco mas de 1 minuto nos pide tocar el dibujo de la mascota Android, dar click al boton Emergency dial o Change language. Como yo lo dejo en idioma Ingles, doy click en la mascota para continuar.

-Nos conectamos a nuestra cuenta gmail dando click en Sign in o creamos una nueva cuenta.

-Abrimos el teclado e introducimos la info de nuestra cuenta gmail

-Aceptamos las políticas de uso

-Aceptamos las políticas de Google Play

 -Instalamos las aplicaciones que queramos tener, ejemplo, foursquare, google+

Hecho, ya tenemos nuestro celular con Cyanogen 7.2 - Android 2.3.7.



Disfrútenlo
Share/Bookmark