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 Roundcube en Centos 7 paso a paso

DriveMeca Roundcube logo
De nada nos vale tener un potente servidor Linux Centos 7 con un smtp server con antivirus/antispam manejando varios dominios si no podemos acceder a el cuando estemos fuera de la oficina o casa. Esto nos lleva a la decisión de que necesitamos un webmail y es el tema del articulo de hoy.
Instalaremos roundcube webmail paso a paso sobre un servidor Linux Centos 7. Este sera la continuación de varios artículos anteriores los cuales ya puse sus links mas arriba (o puedes montarlo en tu servidor ya existente).
Roundcube es un webmail muy amigable que tiene traducción creería que a casi todos los idiomas, su interfaz es liviana y cuenta con todo lo necesario para mirar, contestar o hacer ese mail importante que no da espera. Ya entrados en materia, comencemos.

-Descargamos roundcube en su ultima versión disponible
cd /var/www/html
wget -c http://downloads.sourceforge.net/project/roundcubemail/roundcubemail/1.0.3/roundcubemail-1.0.3.tar.gz

-Lo descomprimimos, renombramos su directorio y entramos a el
tar xzvf roundcubemail-1.0.3.tar.gz
mv roundcubemail-1.0.3 rc
cd rc

-Nos creamos la db mariadb que usara para su funcionamiento y creamos una cuenta con permisos para su manejo
mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 11976
Server version: 5.5.40-MariaDB MariaDB Server

Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>CREATE DATABASE roundcubemail /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */;
Query OK, 1 row affected (0.01 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost IDENTIFIED BY 'contraseña';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> quit;
Bye

-Importamos la estructura de tablas en la db
mysql -u root -p roundcubemail < SQL/mysql.initial.sql

-Nos creamos una configuracion para roundcube servidor por apache
vi /etc/httpd/conf.d/90-roundcube.conf
Alias /webmail /var/www/html/rc

<Directory /var/www/html/rc>
    Options -Indexes
    AllowOverride All
</Directory>

<Directory /var/www/html/rc/config>
    Order Deny,Allow
    Deny from All
</Directory>

<Directory /var/www/html/rc/temp>
    Order Deny,Allow
    Deny from All
</Directory>

<Directory /var/www/html/rc/logs>
    Order Deny,Allow
    Deny from All
</Directory>

-Navegamos desde un browser a la ip del servidor donde instalamos roundcube http://ip-servidor/rc/installer/. Verificamos las extensiones php instaladas. Las requeridas son obligatorias, en caso de faltar alguna hay que instalarla, las opcionales como lo indica su nombre no son imprescindibles aunque si aconsejables. En este ejemplo, agregare la opcional date.timezone. En este URL pueden buscar tu zona horaria. Recargamos la pagina y verificamos ya este ok 

vi rc/.htaccess
<IfModule mod_php5.c>
..
..
php_value       date.timezone           America/Bogota
</IfModule>
DriveMeca instalando Roundcube en un servidor Linux Centos 7 paso a paso

-Cerramos la configuración web porque la terminaremos vía consola
vi config/config.inc.php
$config['db_dsnw'] = 'mysql://roundcube:contraseña@localhost/roundcubemail';
$config['default_host'] = 'localhost';
$config['smtp_server'] = 'localhost';
$config['smtp_port'] = 25;
$config['smtp_user'] = '%u';
$config['smtp_pass'] = '%p';

-Cambiamos permisos al directorio de roundcube
chown -R apache.apache /var/www/html/rc

-Reiniciamos el servicio de apache para que tome los cambios
systemctl restart  httpd.service

-Hacemos pruebas conectándonos a nuestro webmail roundcube. Ten en cuenta que al tenerlo en un servidor multidominio, debes logearte con tu email completo de la forma usuario @ dominio
DriveMeca instalando Roundcube en un servidor Linux Centos 7 paso a paso

-Ya en su interfaz web podemos enviar y recibir emails para familiarizarnos con su uso
DriveMeca instalando Roundcube en un servidor Linux Centos 7 paso a paso

-Cambiar la configuración por default, por ejemplo, el idioma, la firma, etc
DriveMeca instalando Roundcube en un servidor Linux Centos 7 paso a paso

Usas un webmail, cual? Conocías Roundcube? Que tal te ha parecido este articulo?
Si te resulto útil este articulo, se social, haz un tweet, compártelo con otros por medio de los botones o sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Fortalece tu servidor de email Linux con Amavisd-new

El email ha pasado a ser el reemplazo del fax y muchas comunicaciones entre nosotros. Nos sirve para envió de trabajos, comunicarnos con la familia, etc. Para que esto funcione debe haber una serie de servidores haciendo tareas, uno de ellos que es vital es el servidor de email manejando mínimo 2 protocolos que son SMTP y POP3. Hoy veremos una forma relativamente sencilla de instalar y configurar paso a paso Amavisd-new, una aplicación que actúa en forma de filtro entre el MTA y los antivirus/antispam, en un servidor Linux Centos 7.

-Instalamos dependencias
yum -y install wget perl-CPAN gcc gcc-c++ make perl-Time-HiRes perl-Mail-SPF perl-Net-LibIDN openssl-devel gzip bzip2 pax cpio lzop mariadb mariadb-server mailx

-Iniciamos MariaDB y lo activamos para que ejecute cuando hagamos boot
systemctl start  mariadb.service
systemctl enable mariadb.service

-Aseguramos su configuracion
mysql_secure_installation

-Descargamos la ultima version disponible de amavisd
wget -c http://www.ijs.si/software/amavisd/amavisd-new-2.10.1.tar.xz

-Instalamos los siguientes módulos de perl. No tienes perl instalado. En este articulo te enseño como.
Archive::Zip
Compress::Zlib
Compress::Raw::Zlib
MIME::Base64
MIME::Parser
Mail::Internet
Net::Server
Digest::MD5
Time::HiRes
Unix::Syslog
Crypt::OpenSSL::RSA
Mail::DKIM
HTML::Parser
NetAddr::IP
Digest::SHA1
DB_File
Mail::SPF::Test
Geo::IP
Mail::SpamAssassin::Plugin::Razor2
IO::Socket::IP
IO::Socket::INET6
IO::Socket::SSL
DBI
LWP::UserAgent
Encode::Detect
Net::Patricia
Mail::SpamAssassin
DBD::mysql
IO::Stringy
Convert::BinHex
BerkeleyDB
Unix::Getrusage
Razor2::Client::Agent
Image::Info
Image::Info::GIF
Image::Info::JPEG
Image::Info::PNG
Image::Info::BMP
Image::Info::TIFF
Sys::Syslog

-Instalamos Clamav y lo activamos como explico en este articulo

-Creamos el directorio home de Amavis al crear su cuenta y grupo
adduser -b /var -m amavis

-Creamos el arbol de directorios de amavis y activamos sus permisos
mkdir /var/amavis/tmp /var/amavis/var /var/amavis/db /var/amavis/home
chown -R amavis:amavis /var/amavis
chmod -R 770 /var/amavis

-Descomprimimos el archivo de amavis y entramos al directorio
tar xf amavisd-new-2.10.1.tar.xz
cd amavisd-new-2.10.1

-Copiamos el script de amavis y cambiamos sus permisos
cp amavisd /usr/local/sbin/
chown root /usr/local/sbin/amavisd
chmod 755  /usr/local/sbin/amavisd

-Copiamos la configuracion a etc y cambiamos sus permisos
cp amavisd.conf /etc/
chown root:amavis /etc/amavisd.conf
chmod 640 /etc/amavisd.conf

-Creamos un directorio para los mails con virus que clamd vaya encontrando y activamos sus permisos
mkdir /var/virusmails
chown amavis:amavis /var/virusmails
chmod 750 /var/virusmails

-Modificamos la configuración de amavis. Por la gran cantidad de opciones, solo mostrare las que deberíamos cambiar. Las demás pueden quedar con sus valores por default
vi /etc/amavisd.conf
$daemon_user  = 'amavis';
$daemon_group = 'amavis';
$mydomain = 'example.com';
$MYHOME = '/var/amavis';
$TEMPBASE = "$MYHOME/tmp";
$QUARANTINEDIR = '/var/virusmails';
$db_home   = "$MYHOME/db";
$helpers_home = "$MYHOME/var";
$lock_file = "$MYHOME/var/amavisd.lock";
$pid_file  = "$MYHOME/var/amavisd.pid";
$myhostname = 'servidor.test.com';

$inet_socket_port = 10024;

$log_level = 5; #Mientras hacemos pruebas de que todo esta ok, después cambiar a valor 0

$sa_tag_level_deflt  = 2.0;
$sa_tag2_level_deflt = 6.2;
$sa_kill_level_deflt = 6.9;
$sa_dsn_cutoff_level = 10;
$sa_crediblefrom_dsn_cutoff_level = 18;

$sa_mail_body_size_limit = 400*1024;
$sa_spam_subject_tag = '***Spam*** ';

$notify_method  = 'smtp:[127.0.0.1]:10025';
$forward_method = 'smtp:[127.0.0.1]:10025';

@av_scanners = (
['ClamAV-clamd',
   \&ask_daemon, ["CONTSCAN {}\n", "/var/run/clamav/clamd.sock"],
   qr/\bOK$/m, qr/\bFOUND$/m,
   qr/^.*?: (?!Infected Archive)(.*) FOUND$/m ],
);

-Agregamos amavis al grupo clamav
usermod -a -G clamav amavis

-Editamos la configuracion de clamav y permitimos grupos suplementarios, así puede interactuar con amavis
vi /etc/clamd.conf
..
..
AllowSupplementaryGroups yes

-Verificamos
id clamav
uid=997(clamav) gid=995(clamav) groups=995(clamav),1001(amavis)

Spamassassin

-Instalamos spamassassin
yum install spamassassin

-Modificamos su configuración. Un puntaje mayor de 5 sera marcado spam
vi /etc/mail/spamassassin/local.cf
rewrite_header Subject *****SPAM*****
report_safe 0
required_score 5.0

-Nos creamos una cuenta y grupo para spamd. Activamos sus permisos
groupadd spamd
useradd -g spamd -s /bin/false -d /var/log/spamassassin spamd
chown spamd:spamd /var/log/spamassassin

-Actualizamos las reglas de spamassassin
/usr/local/bin/sa-update

-Ejecutamos amavis en modo debug buscando algún modulo que nos falte o error que debamos corregir antes de entrar en producción
/usr/local/sbin/amavisd debug

Postfix

-Instalamos Postfix. No sabes como configurarlo? En este articulo te muestro como

-Agregamos a main.cf de postfix
vi /etc/postfix/main.cf
strict_rfc821_envelopes = yes
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

-Ejecutamos. Apenas todo este funcionando correctamente, debemos devolverlo a no
postconf -e "soft_bounce = yes"
systemctl reload  postfix.service

-Modificamos
vi /etc/postfix/master.cf
amavisfeed unix    -       -       n        -      2     lmtp
     -o lmtp_data_done_timeout=1200
     -o lmtp_send_xforward_command=yes
     -o lmtp_tls_note_starttls_offer=no

127.0.0.1:10025 inet n    -       n       -       -     smtpd
     -o content_filter=
     -o smtpd_delay_reject=no
     -o smtpd_client_restrictions=permit_mynetworks,reject
     -o smtpd_helo_restrictions=
     -o smtpd_sender_restrictions=
     -o smtpd_recipient_restrictions=permit_mynetworks,reject
     -o smtpd_data_restrictions=reject_unauth_pipelining
     -o smtpd_end_of_data_restrictions=
     -o smtpd_restriction_classes=
     -o mynetworks=127.0.0.0/8
     -o smtpd_error_sleep_time=0
     -o smtpd_soft_error_limit=1001
     -o smtpd_hard_error_limit=1000
     -o smtpd_client_connection_count_limit=0
     -o smtpd_client_connection_rate_limit=0
     -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_milters
     -o local_header_rewrite_clients=
     -o smtpd_milters=
     -o local_recipient_maps=
     -o relay_recipient_maps=

-Reiniciamos postfix y verificamos no de error. Aun no se esta filtrando
systemctl reload  postfix.service
less /var/log/maillog

Pruebas de configuración

-Hacemos tres pruebas. Primera: Verificamos amavis
/usr/local/sbin/amavisd debug

telnet localhost 10024
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 [::1] ESMTP amavisd-new service ready
EHLO localhost
250-[::1]
250-VRFY
250-PIPELINING
250-SIZE
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-SMTPUTF8
250-DSN
250 XFORWARD NAME ADDR PORT PROTO HELO IDENT SOURCE
quit
221 2.0.0 [::1] amavisd-new closing transmission channel
Connection closed by foreign host.

Funciono como el ejemplo arriba?, No? verifica si el daemon de amavis esta ejecutandose? El puerto es el correcto?

-Segunda prueba: Verificamos postfix
telnet 127.0.0.1 10025
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
220 veser7.mecatienda.com ESMTP Postfix
EHLO localhost
250-veser7.mecatienda.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
quit
221 2.0.0 Bye
Connection closed by foreign host.

Fallo la prueba? Verifica que postfix se este ejecutando. Mira los logs en maillog. La ip y el port son los correctos? Tienes el firewall activo y esta bloqueando esta conexión?

-Tercera prueba: Verificamos el transporte, es decir, amavis filtra un email, lo verifica y se lo pasa a postfix para su entrega final. Usaremos el mail de ejemplo test-messages/sample-nonspam.txt dentro del directorio de amavis. Primero descomprimimos los mails de prueba
cd /root/amavisd-new-2.10.1/test-messages
perl -pe 's/./chr(ord($&)^255)/sge' <sample.tar.gz.compl | zcat | tar xvf -

-Ejecutamos
telnet localhost 10024
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 [::1] ESMTP amavisd-new service ready
HELO localhost
250 [::1]
MAIL FROM: <>
250 2.1.0 Sender <> OK
RCPT TO: <postmaster>
250 2.1.5 Recipient <postmaster> OK
DATA
354 End data with <CR><LF>.<CR><LF>
From: virus-tester
 To: undisclosed-recipients:;
 Subject: amavisd test - simple - no spam test pattern

 This is a simple test message from the amavisd-new test-messages.
.
250 2.0.0 from MTA(smtp:[127.0.0.1]:10025): 250 2.0.0 Ok: queued as 466C3CD319
quit
221 2.0.0 [::1] amavisd-new closing transmission channel

Fallo la prueba? Verifica logs en maillog y en los msg que arroja amavis en modo debug

-Si todo esta ok, agregamos a postfix
vi /etc/postfix/main.cf
strict_rfc821_envelopes = yes
soft_bounce = no
content_filter=amavisfeed:[127.0.0.1]:10024

-Modificamos amavisd.conf dejando logs a su nivel mínimo
vi /etc/amavisd.conf
$log_level = 0;

-Optimizacion: En la medida que nuestro servidor aumente su carga de emails pro procesar podemos ir aumentando la cantidad de procesos a ejecutar. No existe un numero mágico, es cuestión de observar la carga y así mismo decidir si aumentar los procesos o dejarlos como están. Recuerda, muchos procesos no quiere decir que así de rápido funcionara todo, mas bien si se acaban los recursos y colocas mas procesos harás que el servidor aumente su carga volviéndose mas lento.

-Copiamos el script de inicio al directorio init.d y modificamos la ruta donde debe ejecutarlo
cp /root/amavisd-new-2.10.1/amavisd_init.sh /etc/init.d/amavisd
vi /etc/init.d/amavisd
prog="/usr/local/sbin/amavisd"

-Cambiamos sus permisos, reiniciamos los servicios de amavisd y postfix y los activamos para ejecución al hacer boot
chmod 755 /etc/init.d/amavisd
systemctl restart  amavisd.service
systemctl enable amavisd.service

systemctl restart  postfix.service
systemctl enable postfix.service

Bien, con estos últimos pasos ya tenemos un servidor de email protegido contra virus y spam el cual puede ir creciendo con nuestros requerimientos, por ejemplo, ser multidominio, lo cual dejamos para otro articulo.
Conocías Amavisd-new? Lo usas, que tal te ha parecido? Usas otra alternativa parecida, cual?
Si te resulto útil este articulo, se social, haz un tweet, compártelo con otros por medio de los botones o sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como instalar Clamav en Linux Centos paso a paso

Usas Linux y crees que no estas expuesto a virus? En cierta forma no es verdad, aunque nada que ver con las escandalosas cifras de cantidad de virus para Microsoft Windows para Linux también existen virus. Estos virus siguiendo unas políticas de seguridad como por ejemplo no trabajar desde la cuenta root todo el tiempo, en lo posible usar sudo cuando necesitemos privilegios o usar un antivirus como Clamav. Como ya habras adivinado, el articulo de hoy es como instalar paso a paso Clamav en un servidor Linux Centos 7 (el mismo procedimiento serviría para un Linux RedHat 7).
Clamav es un antivirus opensource que lleva años en su misión de eliminar virus, troyanos, gusanos, etc. de una forma optima y que ademas de en Linux también lo puedes usar en Microsoft Windows aunque eso se sale de nuestro tema. Comencemos entonces.

Requerimientos



-Creamos un archivo de configuración de repositorio
vi /etc/yum.repos.d/dag.repo
[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag/
gpgcheck=1
gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
enabled=1

-Instalamos clamd
yum install clamd

-Aceptamos la llave cuando se nos pregunte
Retrieving key from http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
Importing GPG key 0x6B8D79E6:
 Userid     : "Dag Wieers (Dag Apt Repository v1.0) <dag@wieers.com>"
 Fingerprint: ebc6 e12c 62b1 c734 026b 2122 a20e 5214 6b8d 79e6
 From       : http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
Is this ok [y/N]: y

-Para evitar problemas después de un boot del servidor
mkdir /var/run/clamav/
chown -R clamav:clamav /var/run/clamav/

-Iniciamos el servicio y lo activamos para su ejecución cada vez que hagamos boot
systemctl start  clamd.service
systemctl enable clamd.service

-Actualizamos firmas de virus
freshclam

Y con esto ya tenemos nuestro antivirus en un servidor Linux Centos 7. En próximos artículos lo integraremos con otras soluciones. Usas antivirus en Linux? Cual? No lo usas, porque?
Si te resulto útil este articulo, se social, haz un tweet, compártelo con otros por medio de los botones o sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Llevando el control de tu negocio con Dolibarr ERP/CRM

DriveMeca Dolibarr logo
Pon orden en tu negocio con una herramienta ERP/CRM y si esta es opensource, mejor. El articulo de hoy tratara de como instalar paso a paso Dolibarr ERP/CRM en un servidor Linux Centos 7. Este puede estar local o en la nube dependendiendo de tus necesidades. 
Con una herramienta como esta puedes llevar en regla todas tus ventas, proveedores, empleados, clientes, etc. Es un sistema modular que crecerá junto contigo y si acaso no encuentras el modulo que necesitas, lo puedes programar tu mismo o ver si alguien ya lo programo y lo tiene a la venta en la pagina de módulos de Dolibarr. Las posibilidades son muchas para que puedas tener el control de tu negocio.

Requerimientos

  • Linux Centos 7 server instalacion basica
  • MariaDB server
  • PHP 5 o superior


-Deshabilitamos SELinux previendo posibles errores de nuestra instalación

-Instalamos dependencias
yum -y install wget httpd php php-mysql php-gd mariadb mariadb-server

-Iniciamos el servicio de MariaDB y lo activamos para que siempre cargue al hacer boot
systemctl start  mariadb.service
systemctl enable mariadb.service

-Aseguramos su instalacion colocandole una contraseña a la cuenta root de MariaDB. Los demás parámetros los dejamos con los defaults. OJO, por default root de MariaDB no tiene contraseña
mysql_secure_installation 

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] 
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] 
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] 
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] 
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] 
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

-Entramos y nos creamos una db para dolibarr
mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 11
Server version: 5.5.37-MariaDB MariaDB Server

Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database dolibarr;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> exit;
Bye

-Iniciamos el servicio de apache y lo activamos para que cargue al hacer boot
systemctl start httpd.service
systemctl enable httpd.service

-Entramos al directorio raiz de apache y descargamos el tgz de dolibarr
cd /var/www/html
wget -c http://downloads.sourceforge.net/project/dolibarr/Dolibarr%20ERP-CRM/3.6.1/dolibarr-3.6.1.tg

-Descomprimimos el archivo y le cambiamos el nombre al directorio
tar xzvf dolibarr-3.6.1.tgz
mv dolibarr-3.6.1 db

-Nos creamos un archivo vació de configuración y le damos permisos a apache a todos los ficheros de dolibarr
touch db/htdocs/conf/conf.php
chown -R apache.apache db

-Abrimos un browser y nos conectamos al servidor apache http://ip-servidor-web/db/htdocs/install
Se hará una comprobación. Todo deberá estar ok o tendremos que resolverlo antes de continuar. Damos click en el botón Start
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-Verificamos los datos de instalación y colocamos la contraseña de root de MariaDB. Damos click al botón Next step
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-Se verifica la conexión con MariaDB. Damos click al botón Next step
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-Se crean las tablas en la db. Damos click al botón Next step
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-Nos creamos una cuenta admin para dolibarr. Damos click al botón Next step
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-Se crea la cuenta admin y se los alerta de crear un archivo para no dejar la instalación lista para otra persona la ejecute. Damos click al link Go to Dolibarr (setup area)
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-Nos devolvemos a la terminal y ejecutamos
touch db/doc/install.lock

-
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-Primer paso ya dentro, crear los datos de nuestra empresa/negocio dándole click a Compañy/Foundation debajo del menú Setup
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-En esta pantalla actualizaremos nuestros datos. Al terminar damos click al botón Save
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-Apenas guardemos los datos los veremos actualizados. En caso de querer hacer otro cambio, damos click al botón Modify
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-Siguiente paso, elegir módulos a activar. Damos click al menú Modules debajo de Setup. Cada modulo tiene un botón ON/OFF debajo de la ultima columna con el cual podemos habilitarlo o deshabilitarlo con solo darle click. Si tenemos dudas de su función, en la segunda columna nos dará una breve descripción
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-En la medida que los habilitemos, estos tendrán su botón ON en color verde
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-Podemos mirar las otras secciones por si necesitamos algún otro modulo
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-En la ultima sección veremos el link a la pagina web de módulos de Dolibarr, les había comentado que hay módulos comerciales?
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-Por ultimo, si queremos cambiar el idioma a Español, damos click a Display debajo de Setup y al terminar cambios damos click al botón Save
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

-Ya en Español, se vera así
DriveMeca instalando Dolibarr ERP/CRM en un servidor Linux Centos 7 paso a paso

Esto fue sencillo cierto, lo siguiente es crear proveedores, clientes, etc para que puedas comenzar a manejar todos los procesos de tu negocio de forma sistematizada. Ya haz usado Dolibarr? Que tal te ha parecido?
Si te resulto útil este articulo, se social, haz un tweet, compártelo con otros por medio de los botones o sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Manejando hosts virtuales con Apache Web Server

DriveMeca configurando hosts virtuales con Apache Web Server
Tienes un único servidor pero quieres publicar varias paginas web con diferentes dominios? Bienvenido a los servidores virtuales, si, también podemos virtualizarlos contando solo con una ip y un Apache Web Server.
Esta es una forma rápida y económica de optimizar recursos al poder tener varias paginas en un mismo servidor Linux. Todas las paginas estarán en sus propios directorios, manejaran sus propios archivos y logs. Para este articulo crearemos 2 sitios, sitio-virtual-1.com y aw.com. Que esperamos, comencemos.

Requerimientos

-Instalamos Apache

yum install httpd

-Creamos los directorios, uno para cada sitio web

mkdir /var/www/html/ps
mkdir /var/www/html/aw

-Nos creamos los archivos html para cada sitio web en su respectivo directorio. En este caso para sitio-virtual-1.com

vi /var/www/html/ps/index.html<html>
<head>
<title>www.sitio-virtual-1.com</title> </head> <body> 
<h1>Este es el sitio virtual 1 en apache</h1> </body> 
</html>

-Creamos el de aw.com

vi /var/www/html/aw/index.html<html> <head> 
<title>www.sitio-aw.com</title> </head> <body> 
</body> <h1>Este es el sitio aw en apache</h1> 
</html>

-Damos permisos a apache
chown -R apache:apache /var/www/html

-Modificamos el httpd.conf para crear los hosts virtuales. Cada bloque tiene su propia configuración de un sitio web

vi /etc/httpd/conf/httpd.conf
..
..
..
<VirtualHost *:80>
ServerAdmin webmaster@sitio-virtual-1.com 
DocumentRoot /var/www/html/ps 
ServerAlias sitio-virtual-1.com 
ServerName www.sitio-virtual-1.com 
ErrorLog /var/log/httpd/sitio-virtual-1-error.log
</VirtualHost>


<VirtualHost *:80>
ServerAdmin webmaster@aw.com
DocumentRoot /var/www/html/aw
ServerName www.aw.com
ServerAlias aw.com
ErrorLog /var/log/httpd/aw-error.log
</VirtualHost>

-Reiniciamos apache
systemctl restart httpd.service

Muy bien, ya tenemos un servidor web multi dominio, en la medida que necesitemos mas paginas, solo necesitamos agregar otro bloque VirtualHost.
Manejas hosts virtuales web?, lo haces con apache?, ya conocías la forma?
Si te resulto útil este articulo, se social, haz un tweet, compártelo con otros por medio de los botones o sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como hacerle root a un celular Samsung GT-S6310L en tiempo record

DriveMeca Android Root
Opensource no solo debería ser Linux, todo debería ser así, como es el caso de los teléfonos, si lo compre y es mio, porque no puedo decidir que ROM colocarle (y de paso evitar todo ese spam que le meten los proveedores). Ok, para esto el primer paso es hacerle root al teléfono celular lo cual nos permitirá tener control completo del celular, pero OJO, un error y tendremos un hermoso ladrillo pisapapeles así que no me hago responsable si algo te sale mal.
Hoy lo haré con un teléfono celular Samsung GT-S6310L con Android 4.1.2. Es un celular relativamente económico que al hacerle root nos permitirá ensayar aplicaciones no permitidas sin esto. Mas adelante es posible que haya alguna ROM de CyanogenMod (al momento hay una beta con muchos errores aun)

-Descargamos la aplicación framaroot (versión 1.9.3 actualmente) en nuestro pc o si estamos leyendo el articulo en el celular, en el raíz de la sd

-Si estamos en el pc, conectamos el celular vía USB y copiamos framaroot en el raíz de la memoria sd

-Activamos en la configuración del teléfono Settings - Security - Unknown sources

-Ejecutamos file manager y ejecutamos framaroot desde la sd

-Le decimos que lo abra cuando nos pregunte

-Instalamos SuperSU presionando con el dedo sobre Install SuperSU
DriveMeca haciendole root a un Samsung GT-S6310L paso a paso

-Escogemos un exploit (Aragorn o Gandalf) si falla uno, probamos con el otro hasta que diga successfull

-Reiniciamos el teléfono y aceptamos la actualización al cargar nuevamente android. Entramos al listado de aplicaciones, ya alli entramos a SuperSU para verificar que estemos ya como root
DriveMeca haciendole root a un Samsung GT-S6310L paso a paso

-SuperSU nos mostrara que estamos en modo root con Superuser activo
DriveMeca haciendole root a un Samsung GT-S6310L paso a paso

A partir de este momento cuando alguna aplicación requiera permisos de root para ejecutarse nos saldrá una ventana en la cual podremos o no aprobarlo. También dentro de SuperSU podemos ver logs de tareas hechas como root, app que se han ejecutado, etc.
Que tal te ha parecido, sencillo cierto? Ya le hiciste root a tu teléfono? cual tienes? usas alguna ROM?, cual?
Si te resulto útil este articulo, se social, haz un tweet, compártelo con otros por medio de los botones o sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Optimiza tu servidor Apache con URL amigables

DriveMeca optimizando un servidor web Apache en Linux Centos 7
Un buen diseño de tu pagina web sera primordial si quieres llegar a muchos pero de nada te servirá si tu servidor web no esta preparado para servir las paginas de una forma que tenga un buen SEO (Search engine optimization). Hablándolo un poco mas claro, es la forma en que se optimizan las paginas web para que sean encontradas por los buscadores (google, bing, yahoo, etc). Las paginas para tener un buen SEO deben acercarse lo mas posible a una forma "natural" del habla y de como los usuarios, es decir tu, buscas con palabras claves.

Ejemplo de mal SEO
https://draft.blogger.com/.g?bbloggerlogID=8744887760408486317#editor/target=post;postID=3299305910614033731

Correcto uso de SEO
http://www.tienda.com/contactenos

Para nuestro articulo usaremos Apache 2.4 en un servidor Linux Centos 7 el cual ya por default trae el modulo mod_rewrite. Este modulo es el que permite el uso de URL amigables con buen SEO y se activa de la siguiente forma.


-Modificamos httpd.conf y habilitamos la opción AllowOverride. Salimos guardando cambios
vi /etc/httpd/conf/httpd.conf
<Directory "/var/www/html">
    Options Indexes FollowSymLinks

    AllowOverride All

    Require all granted
</Directory>

-Reiniciamos el servicio
service httpd restart

Con esto ya esta listo nuestro servidor web Apache para ser indexado de forma correcta por un buscador y poder alcanzar una buena visibilidad en internet con nuestros links.
Usas mod_rewrite? con que versión de Apache? Que otra optimizacion para SEO usas en tu servidor web?
Si te resulto útil este articulo, se social, haz un tweet, compártelo con otros por medio de los botones o sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como deshabilitar SELinux sin reiniciar tu servidor

A cuantos les ha pasado que tienen un error en su servidor linux RedHat/Fedora/Centos por horas (o hasta mas tiempo) y no logran dar con su solución hasta que descartando cosas, deshabilitan SELinux y todo se soluciona. Si, se que es una importante solución de seguridad pero a veces son mas los dolores de cabeza que los alivios que nos da por eso hoy mostrare como habilitarlo o deshabilitarlo según sea necesario.
Hay dos formas de hacerlo, temporalmente, es decir, mientras estamos trabajando dura el efecto hasta que reiniciemos el servidor o definitivo; este cambio quedara aun si reiniciamos el servidor. Ambas soluciones serán mostradas y serán ejecutadas desde la cuenta root (o por medio de sudo) desde una consola de texto.

Deshabilitar o habilitar  SELinux desde consola sin reiniciar el equipo

-Deshabilitamos SELinux con el siguiente comando
setenforce  0

-Lo habilitamos con el siguiente comando
setenforce  1

Deshabilitar SELinux definitivamente

-Modificamos el config de SELinux pasándolo a modo disabled
vi /etc/selinux/config 

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected. 
#     mls - Multi Level Security protection.

SELINUXTYPE=targeted

Reiniciamos el equipo y con esto ya queda deshabilitado SELinux, en caso de volverlo a habilitar editamos el config y lo activamos en modo enforcingpermissive según nuestra necesidad
Usas SELinux? No lo usas, porque? Has tenido problemas con SELinux, cuales?
Si te resulto útil este articulo, se social, haz un tweet, compártelo con otros por medio de los botones o sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Tu propia nube en minutos

Trabajar en la nube se ha vuelto algo normal hoy en dia, ya sea desde tu casa o desde la oficina. Tipos de servicio hay varios, la mayoría privados y por los que hay que pagar (aunque Amazon te regala el primer año bajo ciertas condiciones). Pero si quieres algo mas personal ademas de no tener que pagarle a alguien entonces sigue leyendo porque hoy instalaremos paso a paso ownCloud 7 bajo Linux Centos 7. ownCloud es una especie de sitio para trabajo en grupo donde podrás compartir documentos, calendario, fotos, música, etc. Todo esto mediante permisos, grupos, lo que hace la colaboración entre varias personas algo fácil.

Requerimientos



-Deshabilitamos SELinux y reiniciamos después del cambio
vi /etc/selinux/config
SELINUX=disabled

-Verificamos estemos con las ultimas actualizaciones
yum -y update

-Instalamos dependencias
yum install wget httpd mariadb-server php-gd php-pdo php-mysql

-Instalamos repositorio de ownCloud
cd /etc/yum.repos.d/
wget http://download.opensuse.org/repositories/isv:ownCloud:community/CentOS_CentOS-7/isv:ownCloud:community.repo

-Lo instalamos
yum -y install owncloud

-Iniciamos el servicio MariaDB
systemctl start mariadb.service

-Le damos mayor seguridad a MariaDB colocando una contraseña a la cuenta root. Las demás preguntas la dejamos con sus valores por default
/usr/bin/mysql_secure_installation
In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] 
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!

By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] 
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] 
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] 
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] 
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

-Reiniciamos el servicio de Apache
systemctl restart httpd.service

-Abrimos un browser y navegamos al servidor de ownCloud http://ip-servidor/owncloud. En la pagina que veremos creamos un usuario administrador, el sistema nos dirá que tan fuerte es la contraseña elegida. Elegimos MariaDB como db dándole click. Escribimos los datos de la cuenta root (o la que vayamos a usar) de MariaDB, un nombre de db para ownCloud y damos click al botón Finish setup

-Ya configurado, la primera pagina nos invita a instalar un cliente para mantener sincronizados nuestros archivos. Lo podemos hacer ahora o mas tarde, según nuestro gusto. Cerramos la ventana de clientes dándole click a la x

-La interfaz de ownCloud es muy sencilla, a la izquierda tenemos todas las funciones que podemos hacer

-Y a la derecha dándole click al nombre de la cuenta con que estemos conectados podemos acceder a personalizar nuestro perfil entre otras acciones

-Por cierto, entrando a Personal (nuestro perfil) podemos cambiar el idioma a Español

Eres usuario de servicios en la nube? de cuales? Ya conocías ownCloud? Sobre que Linux lo tienes instalado?
Si te resulto útil este articulo, se social, haz un tweet, compártelo con otros por medio de los botones o sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como instalar Trisquel 7 paso a paso

DriveMeca Trisquel Logo
Eres un purista del Opensource? si tu respuesta es positiva debes darle una mirada a Trisquet, una distribución basada en Ubuntu 14.04 que SOLO usa paquetes totalmente libres, es decir, código libre de reproducir, modificar, etc. Trisquel acaba de estrenar su versión 7 y hoy te mostrare paso a paso como instalarla.

-Descargamos el ISO desde este URL. Como en anteriores artículos, recomiendo usar la opción de bittorrent, así no recargas servidores ademas de ser mas rápido. No tienes un cliente bittorrent? En este articulo te muestro como instalar FrostWire, un buen cliente que hasta puedes usarlo en Android

-Generamos un DVD o USB booteable e iniciamos el equipo

-Escogemos el idioma de la instalación y presionamos Enter
DriveMeca instalando Trisquel 7 paso a paso

-Entramos por la segunda opción (o por la primera si queremos darle un vistazo antes de instalarlo). Presionamos Enter
DriveMeca instalando Trisquel 7 paso a paso

-Trisquel nos da la bienvenida y la posibilidad de elegir idioma de instalación. Damos click al botón Continuar
DriveMeca instalando Trisquel 7 paso a paso

-Se hace un pre chequeo de espacio libre en disco duro y el que estemos conectados a internet. Es recomendable activar la descarga de actualizaciones. Damos click al botón Continuar
DriveMeca instalando Trisquel 7 paso a paso

-Momento para particionar el disco duro, elegimos todo el disco (primera opción) y usar LVM lo cual mas adelante nos facilitara poder agregar espacio en disco. Damos click al botón Instalar ahora
DriveMeca instalando Trisquel 7 paso a paso

-El sistema nos sugiere el país donde estamos ubicados. De esto dependerá la zona horaria (fecha y hora) que se activara en el equipo. Damos click al botón Continuar
DriveMeca instalando Trisquel 7 paso a paso

-Activamos la distribución del teclado. Damos click al botón Continuar
DriveMeca instalando Trisquel 7 paso a paso

-Escribimos nuestros datos a la vez que una contraseña lo suficientemente fuerte. Damos click al botón Continuar
DriveMeca instalando Trisquel 7 paso a paso

-Comienza la instalación. Hora de ir por un café ;-)
DriveMeca instalando Trisquel 7 paso a paso

-Muy bien, hemos terminado la instalación. Damos click al botón Reiniciar ahora y retiramos el DVD/USB con el que instalamos
DriveMeca instalando Trisquel 7 paso a paso

-Después de reiniciar nos logueamos con el usuario creado. En este ejemplo trato de deshabilitar la voz robotica (una buena idea pero a mi concepto, en español se escucha horrible y es mas estorbo que ayuda) pero sin lograrlo
DriveMeca instalando Trisquel 7 paso a paso

-Ya dentro en el desktop, voy al menú Configuraciones - Acceso universal y deshabilito Lector de pantalla
DriveMeca instalando Trisquel 7 paso a paso

-Segundo paso actualizar el sistema corrigiendo bugs y posibles problemas. Abrimos una consola de texto y escribimos

sudo apt-get update
sudo apt-get dist-upgrade

DriveMeca instalando Trisquel 7 paso a paso

-Muy bien, ya tenemos un SO Linux con software totalmente libre
DriveMeca instalando Trisquel 7 paso a paso

Conocías esta distribucion? ya la haz usado, que tal te pareció?
Si te resulto útil este articulo, se social, haz un tweet, compártelo con otros por medio de los botones o sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark