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';