lunes, 30 de noviembre de 2015

Instalación de Apache, MariaDB y PHP en Centos 7

LAMP es derivado de las primeras letras Linux, Apache HTTP, MySQL/MariaDB, y PHP/Perl/Python.
En este turorial ve la manera de instalar un servidor  LAMP en RHEL/CentOS/Scientific Linux 7.
El  hostname y dirección IP son server.lamp.local y 192.168.1.101/24 respectivamente.

Instalación de Apache

Apache es un servidor web open-source y multi-plataforma. Provee muchas prestaciones como servidor web incluido CGI, SSL y dominios virtuales.
Los siguientes comandos deben ser corridos con privilegios root.
Para instalar Apache, ingresar el siguiente comando en el terminal:
yum install httpd -y
Iniciar los servicios Apache y configuración para que se levante automáticamente cuando se inicie el Sistema Operativo:
systemctl start httpd
systemctl enable httpd
Las configuraciones en el firewall para poder tener acceso remoto:
firewall-cmd --permanent --add-service=http
systemctl restart firewalld

Probando Apache

Abrir el navegador con la dirección http://localhost/ o http://dirección-ip/.
Apache HTTP Server Test Page powered by CentOS - Mozilla Firefox_001

Instalar MariaDB

MariaDB remplaza a MySQL. 
Ahora, comenzamos instalando MariaDB con lo siguiente:
yum install mariadb-server mariadb -y
Iniciamos el servicio de MariaDB y lo configuramos para se levante automaticamente al reiniciar el servidor:
systemctl start mariadb
systemctl enable mariadb

Configuramos la contraseña root MySQL

Por defecto, la contraseña root en MySQL es vacía. Para prevenir accesos no autorizados a MySQL, ingresamos una contraseña para root. Ingresar el siguiente comando para configurar la contraseña de root:
mysql_secure_installation
/usr/bin/mysql_secure_installation: line 379: find_mysql_client: command not found
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] y ## Enter Y and press Enter
New password:   ## Enter new password
Re-enter new password:  ## Enter password again
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] y  ## Enter Y and press Enter
 ... 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] y  ## Enter Y and press Enter
 ... 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] y  ## Enter Y and press Enter
 - 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] y  ## Enter Y and press Enter
 ... 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!

Instalar PHP

Instalamos PHP con el siguiente comando:
yum install php php-mysql php-gd php-pear -y

Probamos PHP:

Creamos un archivo de ejemplo “testphp.php” en la carpeta root de Apache con las siguientes líneas:
nano /var/www/html/testphp.php
Adicionamos lo siguiente.

Reiniciamos el servicio httpd:
systemctl restart httpd
En el navegador dirigimos un link http://server-ip-address/testphp.php. Esto debe mostrar el Acerca de php.
phpinfo() - Mozilla Firefox_002

Servidor Zabbix en Centos 7

Que es Zabbix ?

Zabbix es una solución de distribución libre para monitorear el performance y disponibilidad de servicios de red, dispositivos y otros recursos IT.

Instalación del Servidor Zabbix

Se requiere para la instalación CentOS 7 minimal.

Prerequisitos

Antes de la Instalación del Servidor Zabbix, hay que realizar la instalación de Apache, MariaDB y PHP.

Configuración en el Servidor

Zabbix no esta disponible en los repositorios de CentOS, por esto debemos adicionar EPEL, para lo cual ejecutamos

yum install epel-release
rpm --import http://repo.zabbix.com/RPM-GPG-KEY-ZABBIX
rpm -Uv  http://repo.zabbix.com/zabbix/2.4/rhel/7/x86_64/zabbix-release-2.4-1.el7.noarch.rpm
Ahora, instalamos el Servidor Zabbix
yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-java-gateway
Editamos el archivo /etc/httpd/conf.d/zabbix:
nano /etc/httpd/conf.d/zabbix.conf
Modificamos nuestra zona, en mi caso América/Guayaquil
php_value date.timezone America/Guayaquil
Reiniciamos Apache
systemctl restart httpd
Creación de la base de datos y usuario para Zabbix

Ingresamos a MariaDB digitando el comando:
mysql -u root -p
Creamos la base de datos zabbixdb y un usuario para la base de datos zabbixuser
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 5.5.41-MariaDB MariaDB Server
Copyright (c) 2000, 2014, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> create database zabbixdb character set utf8;
Query OK, 1 row affected (0.05 sec)
MariaDB [(none)]> grant all privileges on zabbixdb.* to 'zabbixuser'@'localhost' identified by 'password';
Query OK, 0 rows affected (0.21 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> exit
Bye
Importamos los templates de Zabbix a la Base de Datos
mysql -u zabbixuser -p zabbixdb < /usr/share/doc/zabbix-server-mysql-2.4.5/create/schema.sql
mysql -u zabbixuser -p zabbixdb < /usr/share/doc/zabbix-server-mysql-2.4.5/create/images.sql
mysql -u zabbixuser -p zabbixdb < /usr/share/doc/zabbix-server-mysql-2.4.5/create/data.sql
Configuramos el Servidor Zabbix
Editamos el archivo /etc/zabbix/zabbix_server.conf
nano /etc/zabbix/zabbix_server.conf
Configuramos el nombre de la base de datos, usuario, contraseña que acabamos de crear. Si las lineas están comentadas, descomentarles y colocar los valores.
[...]
DBName=zabbixdb
[...]
DBUser=zabbixuser
[...]
DBPassword=password
[...]
Guardamos y cerramos el archivo.

Ahora revisamos la configuración del monitor del Servidor Zabbix editando el archivo /etc/zabbix/zabbix_agentd.conf

vi /etc/zabbix/zabbix_agentd.conf
[...]
## Line 85 - Specify Zabbix server ##
Server=127.0.0.1
[...]
## Line 126 - Specify Zabbix server ##
ServerActive=127.0.0.1
[...]
## Line 137 - Specify Zabbix server Hostname or IP address ##
Hostname=server1.unixmen.local
[...]
Guardamos y cerramos el archivo.

Configuraciones PHP

Editamos el archivo php.ini

nano /etc/php.ini

Recomiendan configurar los valores de esta manera

max_execution_time = 600
max_input_time = 600
memory_limit = 256M
post_max_size = 32M
upload_max_filesize = 16M
date.timezone = America/Guayaquil
Guardamos y cerramos el archivo

Ajustes en el Firewall y SELinux

Los puertos que se utilizan son 10050 y 10051
firewall-cmd --permanent --add-port=10050/tcp
firewall-cmd --permanent --add-port=10051/tcp
reiniciamos los servicios para que los cambios surtan efecto
systemctl restart firewalld
Si se usa SELinux, correr el siguiente comando para que Apache pueda comunicarse con Zabbix
setsebool -P httpd_can_connect_zabbix=1
Reiniciamos los servicios para comenzar con la configuracion de Zabbix
systemctl restart httpd
systemctl restart mariadb
systemctl enable zabbix-server
systemctl enable zabbix-agent
Configuración de Zabbix mediante la consola Web

Para ingresar a la consola, abrimos el navegador con:
http://dirección-ip/zabbix


Installation - Google Chrome_001
El instalador revisará los prerequisitos necesarios. Si todo esta en OK, click Next para continuar, caso contrario hay que regresar a instalar los paquetes necesarios.
Installation - Google Chrome_002
Ingresamos el nombre de la Base de Datos, usuario y contraseña para luego dar click en "Test connection". Si se ingresaron los valores correctos, se mostrará un mensaje de : OK.
Click Next para continuar.
Installation - Google Chrome_004
Ingresar el nombre del servidor y Click en Next:
Installation - Google Chrome_005
Revisar los parámetros, si todo está bien, click Next para continuar o click Previous para cambiar los parámetros.
Installation - Google Chrome_006
Con el mensaje Congratulations! hemos completado la instalación. Click en Finish para completar la instalación.
Installation - Google Chrome_007
Ahora ser redirijirá a la pagina para la consola web de  zabbix. Ingresar el usuario y contraseña.
Por defecto el usuario y contraseña es admin/zabbix.
Zabbix - Google Chrome_008
Así es como el dashboard luce:
Unixmen Monitoring Server: Dashboard - Google Chrome_001





miércoles, 11 de noviembre de 2015

Instalación de plugins para CACTI

Para la instalación de un plugin se deberá seguir los siguientes pasos:

1. Descargar el plugin, el repositorio oficial de plugins para CACTI esta en http://docs.cacti.net/plugins

2. Extraerlo por ejemplo mediante el comando


    tar -zvxf plugin.tar.gz

3. Copiamos la carpeta hacia /usr/share/cacti/plugins

4. Abrimos CACTI en nuestro navegador

5. En el menú de la parte izquierda escogemos la opción Plugin Management

6. En la pantalla nos asoma el plugin que acabamos de copiar, la instalación es tan sencilla como dar clic en el botón flecha abajo y lo habilitamos con el botón de la flecha derecha verde

Con esto en la parte superior tendremos una nueva pestaña del plugin instalado.

https://miraspi.wordpress.com/2013/02/04/graficos-de-trafico-de-red-en-cacti/

martes, 10 de noviembre de 2015

Instalación de CACTI en Linux Centos 7

Partimos en primer lugar de la instalación mínima de Linux Centos 7. La herramienta CACTI es una solución de monitorización y supervisión de red con un sistema de gráficos, esta herramienta es de código abierto y permite a un usuario sondear servicios a intervalos regulares para crear gráficos sobre los datos resultantes usando RRDTool, métricas como la utilización de ancho de banda, carga de CPU, procesos en ejecución, espacio en disco duro, etc.

Se requieren los siguientes paquetes:

  • Apache
  • MySQL
  • PHP
  • PHP-SNMP
  • NET-SNMP
  • RRDTool
Instalación


Para proceder con la instalación primeramente realizamos un update del S.O
# yum update
# yum install nano wget

Instalación de Apache

# yum install httpd httpd-devel

Instalación de MySQL

# yum install mariadb-server

Instalación de PHP

# yum install php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli

Instalación de PHP-SNMP

# yum install php-snmp

Instalación de NET-SNMP

# yum install net-snmp-utils net-snmp-libs

Instalación de RRDTool

# yum install rrdtool

Iniciamos los servicios de Apache, MariaDB y SNMP

# systemctl start httpd.service
# systemctl start mariadb.service
# systemctl start snmpd.service

Configuración para que se levanten los servicios automáticamente

# systemctl enable httpd.service
# systemctl enable mariadb.service
# systemctl enable snmpd.service

Instalación de CACTI

En primera instancia habilitamos el Repositorio EPEL

# wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
# rpm -ivh epel-release-7-5.noarch.rpm

# yum install cacti

Configuramos la base de datos para la instalación CACTI

Seteamos la clave

# mysqladmin -u root password ESCRIBIMOS-LA-CLAVE

Creación de la Base de Datos para CACTI

# mysql -u root -p

> create database cacti;

> GRANT ALL PRIVILEGES ON *.* TO 'usuario'@'localhost'
-> IDENTIFIED BY 'mipassword' WITH GRANT OPTION;

> FLUSH privileges;

> quit;

Instalación de las tables de CACTI en MariaDB

# rpm -ql cacti | grep cacti.sql

tendremos una salida parecida a esta:

/usr/share/doc/cacti-0.8.8b/cacti.sql

Una vez localizado el cacti.sql corremos el siguiente comando para instalar las tablas

# mysql -u usuario -p cacti < /usr/share/doc/cacti-0.8.8b/cacti.sql

Configuración MariaDB para CACTI

# nano /etc/cacti/db.php

/* Nos aseguramos de los valores en la base de datos /host/user/password */
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "usuario";
$database_password = "su-contraseña";
$database_port = "3306";
$database_ssl = false;

Configuramos el Firewall

# firewall-cmd --permanent --zone=public --add-service=http
# firewall-cmd --reload

Configuramos el servidor Apache

# nano /etc/httpd/conf.d/cacti.conf

Revisamos que quede así:

Alias /cacti    /usr/share/cacti


       
                # httpd 2.4
                Require all granted
       
       
                # httpd 2.2
                Order deny,allow
                Deny from all
                Allow from all
       


Finalmente, reiniciamos Apache

# systemctl restart httpd.service

Configuramos Cron para CACTI

# nano /etc/cron.d/cacti

Revisamos que no se encuentre comentada la línea

#*/5 * * * *    cacti   /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1

Corremos el instalador de CACTI

Ingresamos mediante el navegador a http://direccion-ip/cacti/install y seguimos los pasos de instalación, al finalizar el usuario es admin y la contraseña es admin; luego el sistema nos dará el chance de cambiar la contraseña.

Fuente