Protege tu Asterisk de ataques usando fail2ban
En ocasiones anteriores he hecho la mención de fail2ban , una herramienta escrita en Python que analiza logs del sistema y responde en caso de que ciertas condiciones se cumplan, por ejemplo, 5 intentos de contraseña SSH equivocada en un periodo de 10 minutos. Dada la proliferación de ataques a equipos Asterisk para tratar de hacer llamadas de larga distancia, tiene sentido que ocupemos esta herramienta para protegernos de los amantes de lo ajenoInstala Joomla! en Ubuntu
Por estos días uno de los mejores blogs que sigo desde hace mas o menos un año llega al millón de visitas. Como blogger puedo decir que llegar a este nivel no es nada sencillo, se requiere muchísimo trabajo y dedicación. Por eso para mí es un gran honor (y un placer!) poder ser partícipe de esta gran fiesta y poder contribuir con un mini-tutorial para celebrar este gran logro que Geeks & Linux Atelier festeja por lo alto. Aprovecho la oportunidad que me han dado de escribir en su sitio y les traigo un sencillo tutorial de instalacion de joomla! en Ubuntu (de hecho sirve para cualquier distribución Linux) y que espero que sea de utilidad y sobre todo que esté a la altura de los buenos tips que día a día Geeks & Linux Atelier comparte con todos nosotros. Bueno, manos a la obra….

Para los que no saben en qué consiste Joomla!, y sin ir más allá, les dejo la descripción de Wikipedia: “Joomla! es un sistema de gestión de contenidos, y entre sus principales virtudes está la de permitir editar el contenido de un sitio web de manera sencilla. Es una aplicación de código abierto programada mayoritariamente en PHP bajo una licencia GPL. Este administrador de contenidos puede trabajar en Internet o intranets y requiere de una base de datos MySQL, así como, preferiblemente, de un servidor HTTP Apache.”Sin más preámbulo les voy a indicar como instalé correctamente Joomla! en mi Ubuntu Lucid. Primero que todo debes entender que Joomla! funciona sobre entornos web, y si quieres usarlo en tu equipo debes tener instalado un ambiente web. para esto primero deberás instalar LAMP en ubuntu. Una vez lo tengas listo, abre una consola y escribe lo siguiente (en este orden):
mkdir joomla
cd joomla
wget http://joomlacode.org/gf/download/frsrelease/12649/53618/Joomla_1.5.20-Spanish-pack_completo.tar.gz
Con este comando descargarás joomla!. Una vez termine la descarga debes extraer los archivos
tar xvjf Joomla_1.5.20-Spanish-pack_completo.tar.gz
En este momento ya puedes borrar el paquete que descargaste (ojo! No el contenido que acabas de extraer!)
rm -f Joomla_1.5.20-Spanish-pack_completo.tar.gz
Ahora mueve el contenido de joomla a tu carpeta www
cd ..
sudo mv joomla /var/www/
Para que todo funcione correctamente debemos dar permisos de escritura a la carpeta donde instalaremos joomla!, el método más sencillo es
sudo chown -R www-data:www-data /var/www/joomla
Existen otros métodos pero la verdad este me pareció mucho más sencillo
. Ahora si empecemos a instalar joomla, para esto debes ingresar a esta dirección en tu navegador web favorito
Si todo está bien, deberás ver una ventana como esta, donde se te pide seleccionar el idioma de instalación:
Luego hará la comprobación de tu sistema verificando que tienes todo configurado para poder trabajar con joomla! sin problemas (si en este paso tienes dudas deja un comentario!):
Aceptas la licencia GNU/GPL de Joomla!
Ahora crearemos la base de datos necesaria para almacenar la información de nuestro sitio, recuerda que debes ingresar los valores que asignaste cuando instalaste MySQL
A continuación te solicitará la configuración FTP. En este caso no haremos nada ya que estamos usando nuestro propio equipo, no hay necesidad de esto. Finalmente te pedirá que pongas los datos básicos del sitio que vamos a crear:
Bueno, y eso es todo! Luego te pedirá borrar la carpeta de instalación de instalación, lo puedes hacer con un
sudo rm -r /var/www/joomla/installation
Ahora refresca la pagina y listo!
Adicional quiero compartir con ustedes unos excelentes recursos si eres principiante como yo:
Video tutoriales de joomla! que realizó strOngbacker en su canal de youtube y que son bastante buenos para empezar
Este manual de usuario creado por reparaciondepc.cl
Bueno, creo que eso es todo. Y de nuevo felicitaciones a Geeks and Linux Atelier por su excelente trabajo. Espero que los 2 millones sean pronto!
Up the Irons! And the Geeks!
CentOS de PHP 5.1 a 5.2
para hacer este upgrade version primero verifiquemos con cuales nuestro sistema cuenta:
# rpm -qa |grep php php-common-5.1.6-15.el5.i386 php-cli-5.1.6-15.el5.i386 php-5.1.6-15.el5.i386 php-pdo-5.1.6-15.el5.i386 php-bcmath-5.1.6-15.el5.i386 php-ldap-5.1.6-15.el5.i386 php-devel-5.1.6-15.el5.i386 php-gd-5.1.6-15.el5.i386 php-xml-5.1.6-15.el5.i386 php-mbstring-5.1.6-15.el5.i386 php-mysql-5.1.6-15.el5.i386 php-dba-5.1.6-15.el5.i386
ahora bien para nuestro upgrade tenemos que agregar un nuevo repo, !ojo! con este cambio pues algunos de los demas paquetes que contiene pueden ser bastante inestables.
# nano /etc/yum.repos.d/CentOS-Testing.repo
dentro de este archivo copiamos tal cual lo siguiente:
# CentOS-Testing: # !!!! CAUTION !!!! # This repository is a proving grounds for packages on their way to CentOSPlus and CentOS Extras. # They may or may not replace core CentOS packages, and are not guaranteed to function properly. # These packages build and install, but are waiting for feedback from testers as to # functionality and stability. Packages in this repository will come and go during the # development period, so it should not be left enabled or used on production systems without due # consideration. [c5-testing] name=CentOS-5 Testing baseurl=http://dev.centos.org/centos/$releasever/testing/$basearch/ enabled=1 gpgcheck=1 gpgkey=http://dev.centos.org/centos/RPM-GPG-KEY-CentOS-testing includepkgs=php*
por si algo se nos olvidara vamos a activar nuestro nuevo repo, actualizando…
# yum update
ahora si dentro de los paquetes disponibles ya contaremos con la nueva version
# rpm -qa |grep php php-cli-5.2.6-2.el5s2 php-mbstring-5.2.6-2.el5s2 php-devel-5.2.6-2.el5s2 php-pdo-5.2.6-2.el5s2 php-gd-5.2.6-2.el5s2 php-dba-5.2.6-2.el5s2 php-common-5.2.6-2.el5s2 php-bcmath-5.2.6-2.el5s2 php-xml-5.2.6-2.el5s2 php-pear-1.5.1-2.el5s2 php-ldap-5.2.6-2.el5s2 php-5.2.6-2.el5s2 php-mysql-5.2.6-2.el5s2 # php -v PHP 5.2.6 (cli) (built: Sep 15 2008 20:42:05) Copyright (c) 1997-2008 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
PHP 5.3 en CentOS 5.x
Simple y sencillo con un pequeño manual que me he encontrado en la red.
primero vamos a instalar un repositorio especifico:
rpm -ivh http://repo.webtatic.com/yum/centos/5/`uname -i`/webtatic-release-5-0.noarch.rpm
ahora si vamos a instalar todo lo correspondiente a PHP
yum --enablerepo=webtatic install php
Si lo que necesitamos es actualizar una instalación previamente realizada o alguno de los demás módulos de PHP
yum --enablerepo=webtatic update php
Por si esto no funciona vamos a probar desactivando los otro repositorios que tengamos dentro del sistema y utilizando unica y exclusivamente el que recién instalamos:
yum --disablerepo=* --enablerepo=webtatic update php
Listo ahora tenemos la ultima version de php en nuestro centos
Via | webtatic.com
Instalando nuestro servidor LAMP en Ubuntu
Si no sabes qué es un servidor LAMP, básicamente es un servidor web (a los que nos conectamos cuando vemos sitios en internet), y significa:
L – Linux
A – Apache
M – MySQL
P – PHP, Python
Con esta configuración tendrás un servidor web en tu equipo. Para qué? Si eres de aquellos que diseñan sitios web y necesitas un entorno local de pruebas entonces esta es la solución. Para instalarlo debes seguir estos pasos en consola:
1 – Instala tu servidor LAMP
sudo apt-get install lamp-server^ (si no pones el ^ no funciona)
Te mostrará los paquetes a instalar. Si has instalado por alguna razón PHP y Apache estos paquetes serán omitidos (obviamente).
2 – Configura tu password de MySQL
Te debe aparecer una ventana azul solicitando una contraseña para el usuario “root” de tus bases de datos en MySQL (si las vas a implementar). Lo puedes dejar en blanco
3 – YA estuvo!
En serio, ya tienes tu servidor LAMP instalado. Solo hace falta probar si quedó bien :S. Para Apache debes escribir en tu navegador web favorito
http://localhost
Deberá aparecer un mensaje como el siguiente el cual indica que el servidor está correctamente configurado
Para probar PHP puedes crear un archivo en /var/www llamado testing.php, con el siguiente comando
sudo gedit /var/www/testing.php
Y pegar en él la siguiente línea
<?php phpinfo(); ?>
Lo guardas, reinicias apache con
sudo /etc/init.d/apache restart
Vas a tu navegador y escribes en la barra de direcciones http://localhost/testing.php, deberá aparecer una página como la siguiente
Y listo! Espero poder escribir otros post con este tema, para que los que apenas iniciamos con esto tengamos una fuente de consulta
Up the Irons!
Mysql dump only data
Un truquito rapido para el mysql
Dump solo con los insert de informacion sin la estructura, truco que investigue gracias a una migracion que estaba haciendo @lionel (un cuate) jajaja y no queria que se realizara ningun drop en el import de la info .
aqui les dejo la linea de commando para correr este tipo de exports
mysqldump -u user -p --skip-triggers --compact --no-create-info DATABASE > DATABASE.sql
instalar magento (cart) en Dreamhost
El dia de hoy me pase la tarde intentando instalar Magento en mi Dreamhost, pero ni via web ni via ssh con el listado de comandos del wiki de magento he podido hasta, que buscando en foros me encontrado algunas pistas para la instalación via CLI (script), aquí les dejo como hacerlo automáticamente.
NOTA: con este script se hace muy bien desde cero, aunque toma su tiempo terminar la instalación ,asi que paciencia
#!/bin/bash
dbhost="HOST DE LA DB";
dbname="NOMBRE DE LA DB";
dbuser="USUARIO DE LA DB";
dbpass="PASSWORD";
url="http://DOMINIO A SER INSTALADO";
adminuser="USUARIO PARA ADMINISTRAR MAGENTO";
adminpass="PASSWORD ADMINISTRATIVO";
adminfname="NOMBRE DEL ADMIN";
adminlname="APELLIDO DEL ADMIN";
adminemail="ADMIN@TUDOMINIO";
echo "To install Magento, you will need a blank database ready with a user assigned to it."
echo
echo -n "Do you have all of your database information? (y/n) "
read dbinfo
if [ "$dbinfo" = "y" ]; then
echo
echo -n "Include Sample Data? (y/n) "
read sample
if [ "$sample" = "y" ]; then
echo
echo "Now installing Magento with sample data..."
echo
echo "Downloading packages..."
echo
wget http://www.magentocommerce.com/downloads/assets/1.3.2.3/magento-1.3.2.3.tar.gz
wget http://www.magentocommerce.com/downloads/assets/1.2.0/magento-sample-data-1.2.0.tar.gz
echo
echo "Extracting data..."
echo
tar -zxvf magento-1.3.2.3.tar.gz
tar -zxvf magento-sample-data-1.2.0.tar.gz
echo
echo "Moving files..."
echo
mv magento-sample-data-1.2.0/media/* magento/media/
mv magento-sample-data-1.2.0/magento_sample_data_for_1.2.0.sql magento/data.sql
mv magento/* magento/.htaccess .
echo
echo "Setting permissions..."
echo
chmod o+w var var/.htaccess app/etc
chmod -R o+w media
echo
echo "Importing sample products..."
echo
mysql -h $dbhost -u $dbuser -p$dbpass $dbname < data.sql
echo
echo "Initializing PEAR registry..."
echo
./pear mage-setup .
echo
echo "Downloading packages..."
echo
./pear install magento-core/Mage_All_Latest
echo
echo "Cleaning up files..."
echo
rm -rf downloader/pearlib/cache/* downloader/pearlib/download/*
rm -rf magento/ magento-sample-data-1.2.0/
rm -rf magento-1.3.2.3.tar.gz magento-sample-data-1.2.0.tar.gz
rm -rf index.php.sample .htaccess.sample php.ini.sample LICENSE.txt STATUS.txt data.sql
echo
echo "Installing Magento..."
echo
/usr/local/php5/bin/php -f install.php -- \
--license_agreement_accepted "yes" \
--locale "en_US" \
--timezone "America/Los_Angeles" \
--default_currency "USD" \
--db_host "$dbhost" \
--db_name "$dbname" \
--db_user "$dbuser" \
--db_pass "$dbpass" \
--url "$url" \
--use_rewrites "yes" \
--use_secure "no" \
--secure_base_url "" \
--use_secure_admin "no" \
--admin_firstname "$adminfname" \
--admin_lastname "$adminlname" \
--admin_email "$adminemail" \
--admin_username "$adminuser" \
--admin_password "$adminpass"
echo
echo "Finished installing Magento"
echo
exit
else
echo "Now installing Magento without sample data..."
echo
echo "Downloading packages..."
echo
wget http://www.magentocommerce.com/downloads/assets/1.3.2.3/magento-1.3.2.3.tar.gz
echo
echo "Extracting data..."
echo
tar -zxvf magento-1.3.2.3.tar.gz
echo
echo "Moving files..."
echo
mv magento/* magento/.htaccess .
echo
echo "Setting permissions..."
echo
chmod o+w var var/.htaccess app/etc
chmod -R o+w media
echo
echo "Initializing PEAR registry..."
echo
./pear mage-setup .
echo
echo "Downloading packages..."
echo
./pear install magento-core/Mage_All_Latest
echo
echo "Cleaning up files..."
echo
rm -rf downloader/pearlib/cache/* downloader/pearlib/download/*
rm -rf magento/ magento-1.3.2.3.tar.gz
rm -rf index.php.sample .htaccess.sample php.ini.sample LICENSE.txt STATUS.txt
echo
echo "Installing Magento..."
echo
/usr/local/php5/bin/php -f install.php -- \
--license_agreement_accepted "yes" \
--locale "en_US" \
--timezone "America/Los_Angeles" \
--default_currency "USD" \
--db_host "$dbhost" \
--db_name "$dbname" \
--db_user "$dbuser" \
--db_pass "$dbpass" \
--url "$url" \
--use_rewrites "yes" \
--use_secure "no" \
--secure_base_url "" \
--use_secure_admin "no" \
--admin_firstname "$adminfname" \
--admin_lastname "$adminlname" \
--admin_email "$adminemail" \
--admin_username "$adminuser" \
--admin_password "$adminpass"
echo
echo "Finished installing Magento"
exit
fi
else
echo
echo "Please setup a database first. Don't forget to assign a database user!"
exit
fi






%20-%20Mozilla%20Firefox_002.jpeg)