Diferencia entre revisiones de «Implementación Servidor de Base de Datos»
Línea 1: | Línea 1: | ||
==Hardware== | ==Hardware== | ||
− | + | Para almacenamiento se instalaron 2 discos SATA de 750GB y 2 discos SATA de 2TB, los mismos fueron configurados en RAID 1 para incorporar un nivel de tolerancia a fallos. | |
==Entorno LAMP== | ==Entorno LAMP== | ||
===Sistema Operativo - CentOS=== | ===Sistema Operativo - CentOS=== | ||
+ | Traté de instalar CentOS 7 pero existe problema de compatibilidad con el hardware por la ausencia de controladores para el almacenamiento, lo que impedía el reconocimiento de los discos instalados. Por esto se procedió a instalar CentOS 6.9 que incluye los controladores y tiene soporte hasta 2020. | ||
Configurar una IP estática para el servidor | Configurar una IP estática para el servidor | ||
Línea 15: | Línea 16: | ||
IPADDR=192.168.1.24 | IPADDR=192.168.1.24 | ||
NETMASK=255.255.255.0 | NETMASK=255.255.255.0 | ||
+ | Actualizar los repositorios y software | ||
+ | [root@dbs ~]# yum -y update | ||
+ | Sincronizar el reloj del sistema | ||
+ | [root@dbs ~]# yum install ntp ntpdate ntp-doc | ||
+ | [root@dbs ~]# ntpdate -u ec.pool.ntp.org | ||
===Servidor HTTP - Apache 2.2=== | ===Servidor HTTP - Apache 2.2=== | ||
Línea 85: | Línea 91: | ||
yum install centos-release-scl | yum install centos-release-scl | ||
yum install python27 | yum install python27 | ||
− | |||
[Webmin] | [Webmin] | ||
Línea 102: | Línea 107: | ||
iptables -I INPUT 7 -i eth0 -p tcp --dport 10000 -m state --state NEW,ESTABLISHED -j ACCEPT | iptables -I INPUT 7 -i eth0 -p tcp --dport 10000 -m state --state NEW,ESTABLISHED -j ACCEPT | ||
− | |||
− | |||
− | |||
− | CREATE DATABASE kmwiki; | + | ====Wiki==== |
− | GRANT ALL PRIVILEGES ON kmwiki.* TO 'wiki'@'localhost' IDENTIFIED BY 'k159265M'; | + | CREATE DATABASE kmwiki; |
+ | GRANT ALL PRIVILEGES ON kmwiki.* TO 'wiki'@'localhost' IDENTIFIED BY 'k159265M'; |
Revisión del 21:01 23 oct 2017
Sumario
Hardware
Para almacenamiento se instalaron 2 discos SATA de 750GB y 2 discos SATA de 2TB, los mismos fueron configurados en RAID 1 para incorporar un nivel de tolerancia a fallos.
Entorno LAMP
Sistema Operativo - CentOS
Traté de instalar CentOS 7 pero existe problema de compatibilidad con el hardware por la ausencia de controladores para el almacenamiento, lo que impedía el reconocimiento de los discos instalados. Por esto se procedió a instalar CentOS 6.9 que incluye los controladores y tiene soporte hasta 2020.
Configurar una IP estática para el servidor
[root@dbs ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 HWADDR=00:22:64:42:A8:E9 TYPE=Ethernet UUID=996ecfe7-1886-47ad-b13c-adfb678cfc29 ONBOOT=yes NM_CONTROLLED=no BOOTPROTO=static IPADDR=192.168.1.24 NETMASK=255.255.255.0
Actualizar los repositorios y software
[root@dbs ~]# yum -y update
Sincronizar el reloj del sistema
[root@dbs ~]# yum install ntp ntpdate ntp-doc [root@dbs ~]# ntpdate -u ec.pool.ntp.org
Servidor HTTP - Apache 2.2
#yum -y update #yum install httpd #service httpd start #chkconfig httpd on
Es necesario permitir el acceso al puerto 80 en el firewall local.
iptables -I INPUT 5 -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT service iptables save
Motor de Base de Datos - MariaDB
Para poder instalar MariaDB es necesita declarar el repositorio, para esto creamos un nuevo archivo:
# vi /etc/yum.repos.d/MariaDB.repo
Con el siguiente contenido
[mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.1/centos6-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1
Luego es posible instalar el software con yum.
#yum install MariaDB-server MariaDB-client -y #service mysql start # chkconfig --level 35 mysql on # service mysql status # mysql_secure_installation muyuyoFCD.753
Permitir acceso al puerto 3306 en el firewall local, para conexiones remotas a la base.
iptables -I INPUT 6 -i eth0 -p tcp --dport 3306 -m state --state NEW,ESTABLISHED -j ACCEPT service iptables save
Lenguaje Server-Side Script - PHP
En el repositorio oficial de CentOS 6.9, la versión más reciente disponible de PHP es 5.3; por lo que es necesario agregar los repositorios EPEL y Remi para poder instalar versiones actuales.
# wget http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm # wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm # rpm -Uvh epel-release-6-8.noarch.rpm remi-release-6.rpm # yum install yum-utils # yum-config-manager --enable remi-php56 [Selección de versión] # yum install php php-mysql php-gd
Manejo de Base de Datos - PHPMyAdmin
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm yum -y update yum -y install phpmyadmin
Modificamos el archivo de configuración:
vi /etc/httpd/conf.d/phpMyAdmin.conf
Agregar accesos a las redes locales de la FCD (192.168.100.0 y 192.168.200.0)
Cambiar el alias de acceso
Reiniciar Apache para validar los cambios
service httpd restart
Adicionales
Protección contra intrusos - Fail2ban
yum install fail2ban cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local vi /etc/fail2ban/jail.local
Gestión del Servidor - Webmin
yum install centos-release-scl yum install python27 [Webmin] name=Webmin Distribution Neutral #baseurl=http://download.webmin.com/download/yum mirrorlist=http://download.webmin.com/download/yum/mirrorlist enabled=1
Instalar la llave
wget http://www.webmin.com/jcameron-key.asc rpm --import jcameron-key.asc
Ahora podemos instalarlo con yum.
yum install webmin
Permitir acceso en el puerto correspondiente en el firewall local
iptables -I INPUT 7 -i eth0 -p tcp --dport 10000 -m state --state NEW,ESTABLISHED -j ACCEPT
Wiki
CREATE DATABASE kmwiki; GRANT ALL PRIVILEGES ON kmwiki.* TO 'wiki'@'localhost' IDENTIFIED BY 'k159265M';