Ir al contenido principal

Instalación de un Servidor Web en Centos 7

Vamos a montar un Servidor Web sobre un Centos 7.

Partiremos desde el punto en el que ya tenemos:
  • 1 Centos 7 como Máquina Virtual sobre XenCenter
  • La configuración de Red Funcionando.



COMANDO IFCONFIG

Un ejemplo de configuración de la RED estática en Centos 7 podría ser la siguiente ubicada en la siguiente ruta /etc/sysconfig/network-scripts/ :

BOOTPROTO=static
ONBOOT=yes
IPADDR0=192.168.0.77
PREFIX0=24
GATEWAY0=192.168.0.1
DNS1=192.168.0.2


Como muchos ya saben, y si no ya lo comento yo, en la instalación de Centos 7 no vienen los mismos comandos que en Centos anteriores o como en otros Linux.

Para empezar, ha desaparecido ifconfig.
Este comando se ha quedado obsoleto, y a partir de ahora deberemos usar el comando ip addr (detalles de la tarjeta de red), ip link (estadisticas de las intefaces de red):

ip addr





ip link







Para poder volver a usar los comandos antiguos, solo debes instalar el siguiente paquete:

yum install net-tools

Y ya puedes usar el comando:

ifconfig







SERVIDOR WEB

Vamos a comenzar a instalar el Servidor Web.

1 - Instalar Apache en Linux CentOS 7, abrir puertos http y https cortafuegos.



Comenzamos instalado Apache. Nos pedirá alguna confirmación, a la cual le diremos que si (y).


yum install httpd







Para INICIAR y PARAR los servicios recien instalados usaremos los comandos:

systemctl start httpd.service
systemctl enable httpd.service


Si queremos permitir que se realicen conexiones externas al servidor web a través del puerto http 80 y el puerto seguro https 443, ejecutaremos los siguyientes comandos:
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd –reload





** IMPORTANTE: Recuerda que deberas tener credenciales de administrador para usar estos comandos.


Ahora solo tenemos que poner en el navegador de cualquier equipo de la red la ip de nuestro servidor web, y veremos la siguiente página:






2Instalar PHP para Apache en Linux CentOS 7



Ahora procederemos a instalar el módulo de PHP ejecutando el siguiente comando:

yum -y install php



 


Trás la instalación, reiniciamos los servicios de Apache y verificamos el correcto funcionamiento del modulo de PHP.

systemctl restart httpd.service





Verifiquemos el correcto funcionamiento del modulo PHP y su correcta integración con Apache.






Vamos a crear un fichero de la siguiente forma:
vi /var/www/html/info.php






Escribimos dentro del fichero el siguiente contenido:
phpinfo();
?>





Guardamos los cambios y lo comprobamos en el navegador mediante http:///info.php







Podemos ver en este fichero la información con respecto a nuestro nuevo servidor Web.




Procedemos a instalar el conector de PHP a la Base de Datos que instalaremos posteriormente, MySQL.
yum -y install php-mysql


Por último instalamos otros modulos que nos harán falta para PHP, el conector de PHP a LDAP, a XML, ....
yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel






Al final, siempre reiniciaremos el servicio de Apache.
systemctl restart httpd.service





3 - Instalar MySQL Server en Linux CentOS 7, configurar acceso externo



Para instalar el servicio de Base de Datos MySQL Server, debemos hacerlo mediante repositorio a través de wget.


Para ello primero debemos instalar wget:
sudo yum install update
sudo yum install wget



 




Descargamos el paquete RPM desde el repositorio de MySQL Server, lo desplegamos e instalamos:
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm





 



Ya ponemos verificar la correcta instalación de los repositorios (NO DE SQL, sino de los repositorios).






Ahora si podemos proceder a instalar MySQL de forma habitual tras la descarga de sus repositorios.
Debemos aceptar la instalación y aprobar la instalación de sus dependencias.
También nos pedirá conformidad para agregar la llave GPG.
sudo yum install mysql-server  









Una vez finalizada la instalación, iniciamos el servicio:
sudo systemctl start mysqld




Por seguridad, ejecutaremos el siguiente comando, elcual resolverá algunos problemas de seguridad:
  • Cambia la contraseña de root de mySQL
  • Elimina cuentas de usuario anónimo
  • Deshabilita conexiones de root exterior del localhost
  • Elimina la Base de Datos de prueba
  • Recargar los privilegios de las tablas


sudo mysql_secure_installation







La configuración que se expone a continuación es opcional, ya que depende mucho de las necesidades de acceso al servidor de Base de Datos.


Vamos a permitir el acceso desde fuera al servidor de Base de Datos MySQL Server en un Centos de Linux abriendo el muerto de MySQL en el cortafuego:
firewall-cmd --permanent --zone=public --add-service=mysql







Para permitir el acceso al servidor de Base de Datos desde otros equipos de la red debemos realizar los siguientes pasos. Estos pasos solo loindicaremos, y no los vamos a realizar porque en nuestro caso no conviene:
mysql -u root -p


Nos solicita usuario y contraseña de root, y nos aparece la consola de SQL:
sql> grant all on *.* to root@'%' identified by 'contraseña' ;
sql> flush privileges;
sql> quit






4 - Instalar PHPAdmin en Linux CentOS 7 para Administrar MySQL vía Web



Primero instalamos el repositorio de donde vamos a instalar PHPAdmin y luego realizamos la instalación en sí.
sudo rpm -iUvh http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm



Nos aseguramos que el nuevo repositorio se ha instalado correctamente:
sudo yum -y update









Y realizamos la instalación en si:
sudo yum -y install phpmyadmin


Accedemos al fichero /etc/httpd/conf.d/phpMyAdmin.conf y le damos permiso de acceso a las IP desde donde podremos acceder.
No vamos a poner ninguna IP ejemplo en este caso, pero debe de estar claro que un ejemplo de IP a poner sería la IP de nuestro PC desde donde vamos a gestionar remotamente el servidor.
Require ip x.x.x.x
Allow from x.x.x.x


Reiniciamos el servicio de Apache y comprobamos el acceso desde un navegador de la red a PHPAdmin:
systemctl restart httpd.service









Comentarios

Entradas populares de este blog

Configuración y Uso de Pandora FMS 5.0 SP3

CONFIGURACIÓN DE LA RED Lo primero que se debe de hacer es conocer la red que necesitas monitorizar, las distintas redes que posees y configurar las interfaces del CentOS donde tienes instalado Pandora FMS para que este sistema pueda verlas. Si haces un ping a alguna de estas redes, este debería responderte. Un ejemplo de como configurar distintas redes en CentOS sería el siguiente, donde las X son las que corresponda a tú red: # cd /etc/sysconfig/network-scripts/ # cat ifcfg-eth0 DEVICE=eth0 HWADDR=00:0C:29:75:A5:F2 TYPE=Ethernet BOOTPROTO=static IPADDR=10.x.x.155 BROADCAST=10.x.x.254 GATEWAY=10.x.x.1 NETMASK=255.255.255.0 DNS1=10.x.x.x DOMAIN=dominio.local DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no UUID=920d0ead-e3ad-4c99-8c79-617812986fb4 ONBOOT=yes # cat ifcfg-eth0:0 DEVICE=eth0:0 HWADDR=00:0C:29:75:A5:F2 TYPE=Ethernet BOOTPROTO=static IPADDR=10.x.x.155 BROADCAST=10.x.x.254 GATEWAY=10.x.x....

Mensajería OpenFire: Instalación y Configuración

Exportamos una nueva OVA de DEBIAN. Configuramos su interfaz: # rm /etc/udev/rules.d/70-persistem-net.rules # reboot Preparamos la conexión remota: # apt-get install ssh #ifconfig -a Instalación paso a paso: $ ssh root@192.168.1.198 Necesitaremos en la instalación de  mensajería   OpenFire : Servidor LAMP •           Linux •           Apache •           MySQL •           PHP phpadmin y Java # apt-get install apache2 php5 mysql-server phpmyadmin # apt-get install openjdk-6-jdk Descarga y puesta en funcionamiento de OpenFire: # wget http://download.igniterealtime.org/openfire/openfire_3.9.1_all.deb # dpkg -i openfire_3.9.1_all.deb Para saber que está funcionando: # netstat...

pfsense: Proxy Squid3 instalación y configuración

Nuestra máquina de pfsense con 2 adaptadores , uno en adaptador puente y otra en solo anfitrión: Me conecto desde el interfaz anfitrión al pfsense desde el navegador: Nos movemos a: System / Package/Available Packages/instalamos squid3 Service / Proxy server Configuramos en la pestaña de General las siguientes opciones: LAN Proxy Port: 3128 Allow users on interface(picado) Transparent Proxy(picado) Enabled logging(picado) Log Store Directory: /var/squid/logs Administrator email: email administrador Language: es SAVE Nos aseguramos que squid está corriendo: Status / Service Con esta configuración debemos tener internet en nuestro cliente Windows. RESTRICCIONES Y PERMISOS Podemos configurar las restricciones en la pestaña Service / Proxy server / (pestaña)ACLs Por ejemplo, restringimos el acceso a google.es: En Service / Proxy server / Local Cache o...

FireWall de PFsense: NAT

NAT Network address transletion - Traducciones de direcciones de red Se diferencia de la tabla filter, que con estas reglas se redirecciona. Si queremos que nuestro servidor web de servicio al exterior, tiene una dirección interna, pero si sale con esta IP, al salir se corta la IP. Que el router coja esta IP interna de este servidor Web y la cambie por la IP publica del route se llama NAT. Esto que hace el router automáticamente es lo que vamos a hacer ahora. SNAT: source NAT(origen) DNAT: destination NAT(destino) SNAT, cambiamos el origen. Windows manda el paquete y llega a pfsense, y este cambia el origen PAQUETE: origen: wXP (192.168.56.2) ↔ WAN (80.21.21.21) destino: google.es DNAT, cambiamos el destino Queremos dar servicio web, pero mi servidor esta en una red privada, en la 10.0.0.2. Al dar la IP de mi WAN, debo hacer que llegue a mi servidor. Cada vez que llegue un paquete a la Wan al puerto, en este caso, 80, l...

FireWall de PFsense: Reglas de Filtro 1/3

FILTER RULES (Reglas de Filtro) Para instalar el PFsense te recuerdo el enlace donde se explica en mi blog: http://mjesussuarez.blogspot.com.es/2013/12/instalacion-y-uso-de-pfsense.html A partir de este punto, entramos en PFsense a partir de la IP LAN: 192.168.56.2 Las 2 opciones mas interesantes de ver sobre cortafuegos en PFsense es NAT y Rules . Aunque usaremos también los Aliases . Dentro de interfaces tenemos LAN y WAN, pero también podemos asignar interfaces, como por ejemplo una zona demilitarizada(DMZ) para alojar en esta rama un Servidor Web . Para crear una interfaz nueva debemos ir a Interfaces / assign / VLANs . Pero que es una VLAN . Significa que físicamente están todas las redes unidas, pero Virtualmente se han formado LANs independientes y que no se ven unas a otras, o si se ven, pero están separadas virtualmente como si estuvieran separadas de forma física. Pero este tema lo trataremos mas adelante, ahora haremos...