You are on page 1of 11

Aplicaciones Web 2 GM

Despliegue de un
servidor web (Linux
+ Apache + MySQL +
phpMyAdmin) en
CentOS 6.9

Manuel Lpez Camarena 1


Aplicaciones Web 2 GM

NDICE

IntroduccinPag3
Paso 1. Configuracin de red.Pag3
Paso 2. Instalacin y configuracin de Apache..Pag3
Paso 3. Instalacin y configuracin de un intrprete PHP.Pag8
Paso 4. Instalacin y configuracin de MySQL...Pag9
Paso 5. Instalacin y configuracin de PHPMyAdmin.Pag10

Manuel Lpez Camarena 2


Aplicaciones Web 2 GM

Introduccin.

PartimosdeunamquinavirtualLinuxconCentOS6.9x64instalada,con
conexinvaethernet.Dentrodelamquinacontamosconeleditordetextoplano
nano,yconlapolticadeSELinuxdesactivada.
NuestroobjetivoespreparareldesplieguedeunservidorwebconApache,
MySQL,PHPyPHPMyAdminparapodercomenzarausaraplicacioneswebcomo
WordpressoJoomla.

Paso1.Configuracindered.

Laprimerapartedelaconfiguracindelareddebemoshacerlaennuestro
sistemadevirtualizacin(VMWare)antesdearrancarlapropiamquina.Debemos
configurarelmododeconexindelamquinaenelmejorajusteennuestrared.
EnnuestrocasodebemosusarelmodoNAT.

Utilizamoselcomando
# ip link show

Nossaldrunalistadelastarjetasdereddenuestroequipoaunquestasnoestn
configuradas.Aqupodremoscorroborarlacorrectaexistenciadenuestratarjeta
eth0.

Manuel Lpez Camarena 3


Aplicaciones Web 2 GM

Elsiguientepasosetratadeeditarelarchivodeconfiguracindelatarjetaeth0.
Paraelloabrimoselsiguientearchivoconnuestroeditornano.

#nano /etc/sysconfig/network-scripts/ifcfg-eth0

Enestearchivodebemoscomprobarlosvaloresde3parmetros;bootproto(el
mododeobtencindeIP),onboot(arranqueautomticodelatarjetaeth0),
nm_controlled(aplicaonolaconfiguracindelasistentedered).Losvaloresdeben
dequedaras:

Conestodamosporconcluidalaconfiguracindelatarjetadered.Para
comprobarlacorrecin,usamoselcomando# ifconfig yvemossiladireccin
IPesunaIPcorrectaconsalidaainternet,porejemplo,conelusodelcomando

# yum update

Conesecomandoutilizado,salimosainternetacomprobarsihayactualizaciones,
porloquesinodaningntipodeerror,podremosconfirmarlacorrectaconexin,y
porlotanto,finalizadadeunavezportodaslaconfiguracindered.

Paso2.InstalacinyconfiguracindeApache.

Apacheesunservidorwebhttpquetenemosqueinstalarennuestramquina
servidorparaprocederconeldesplieguedenuestrasaplicacionesweb.Sufuncin
esbsicamentedeaceptarpeticiones(odenegarlas,dependedesisecumplecon
lasnormasdeseguridadestablecidas)depginaswebalosclientesquese
conectenanuestrositioweb.
Parainstalarlo,hacemosusodelsiguientecomando:

# yum -y httpd

UnavezhayamosinstaladoelservidorApache,debemoshacerqueelservicio
inicie,sininiciar,aunquelotengamosinstalado,noservirdenada.Paralevantar
elservidorApacheusaremoselsiguientecomando.

# service httpd start

Manuel Lpez Camarena 4


Aplicaciones Web 2 GM

Conesto,enteoradeberamoshaberiniciadoelservidorApachesinohaocurrido
ningnerror.Podemoscomprobarelestadodelservidorcon

# service httpd status

EstecomandonosdevolverunalneadetextoquenosdirsielservidorApache
seestejecutando,sinoseencuentra,ocualquiertipodeerrorquehayamos
tenidoenelprocedimiento.
Lomscmodoseraconfigurarelservicioparaqueseiniciecadavezque
iniciamosnuestramquina(normalmente,losequiposquealojanunservidorweb
noseapagan,yencasodeapagarse,sebuscaqueelservicioserestablezcacon
eliniciodelequipo,deahlautilidad)

# chkconfig httpd on

ConApachecorrectamenteiniciado,procederemosaabrirelpuerto80paraque
losclientespuedanaccederasanuestrositioweb.

ElarchivoiptablesdeLinuxeselfirewalldeLinuxintegradodirectamenteensu
kernel.Desdel,podremosabrirelpuertoquenecesitemos.Podemosabrirlocon
nanodesdelasiguienteruta.

# nano /etc/sysconfig/iptables

Debemosencontrarnosconundocumentotalqueas.

Debemosfijarnosbienenlasiguientedirectiva:

- A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j


ACCEPT

Manuel Lpez Camarena 5


Aplicaciones Web 2 GM

EsadirectivaabrelaspeticionesdelpuertoTCP22.Teniendoencuentaque
queremoshacerlomismoconelpuerto80,tambinTCP,lonicoquedebemos
haceresincluirunadirectivaigualaesa,justodebajo,cambiandoel22porel80,
demaneraquequedeas.

Teniendoencuentaqueelfirewalldeiptablesesunservicio,recargamosel
servicioparaaplicarloscambios.

# service iptables reload

Unavezreiniciadoelservicio,enunnavegadorwebdeamquinaanfitriona,
ponemosladireccinIPdelamquinaCentOS.Nossaldrlapginapordefecto
deApacheenCentOSporquenotenemosarchivoshtmlquemostrar.

Manuel Lpez Camarena 6


Aplicaciones Web 2 GM

Paraprevisualizarquetodoestcorrecto,creamosunarchivosimpledeHTML
paraverquelomuestrecorrectamente.

DebemosiralacarpetadeApachedondealojalosarchivos.htmlparamostrar,
creandoconnanounarchivoquesellameindex.htmlparamostrardeinicio.

# nano /var/www/html/index.html

Elcontenidodelarchivopuedesercualquierestructurahtmlvlida,aunque
nosotrosusaremosunaestructurasimpleproporcionadaporelprofesor.

VolvemosareiniciarApacheparaaplicartodosloscambios.

# service httpd restart

AhoraprobamosaintroducirdenuevoladireccinIPdelamquinaCentOS,ahora
veremoscomolapginaquenosmuestraesnuestroarchivoindex.html

Conesto,habremosacabadoconlainstalacinbsicadeApacheyvisualizado
contenidohtmlennuestroservicioweb.

Manuel Lpez Camarena 7


Aplicaciones Web 2 GM

Paso3.InstalacinyconfiguracindeunintrpretedePHP.

NecesitamoscontarconunintrpretePHPparanuestroservidorApachepara
poderutilizararchivosphpdewebenlugardeHTML.

Loprimeroquenecesitamosdescargarelgestordedescargaswgetparapoder
obtenerarchivosdedirectoriosespecficos.Hacemosusodelcomando:

# yum -y install wget

NecesitaremosobtenerlosficherosdeconfiguracindesdelosrepositoriosEpely
Remi,hacemosusodelcomandowgetsobreesosrepositoriosparaobtenerlos.

# wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-
release-6-8.noarch.rpm

# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-


release-6.rpm

Elsiguientepasoserinstalarlaherramientayumutilsparaaadirpluginsayum
paraseleccionarlosrepositoriossinuncomandoespecficodelosrepositorios
aadidos.

# yum install yum-utils

ContinuamoshabilitandoelrepositoriodeRemiquecontienelosarchivosdephpy
einstalamoslossiguientespaquetes.

# yum-config-manager --enable remi-php56

# yum -y install php php-mcryp php-cli php-gd php-curl php-


mysql php-ldap php-zip php-fileinfo

ParaprobarqueelintrpretedePHPhasidoinstaladocorrectamenteharemosuna
pruebacreandounarchivollamadotest.phpconlasiguienteestructuraen
/var/www/html.

Manuel Lpez Camarena 8


Aplicaciones Web 2 GM

Sitodohaidocorrectamente,siponemosenelnavegadordelamquinaanfitriona
ladireccinIPdelservidorseguidode/test.phpnosapareceralgocomo:

Paso4.InstalacinyconfiguracindeMySQL.

Paragestionarlainformacindenuestrawebnecesitaremosungestordebasede
datos,eligiendoMySQL.ParainstalarMySQL,primeronosharemosconlos
repositoriosnecesariosparapoderobtenerlo.

# wget http://dev.mysql.com/get/mysql57-community-release-
el6-7.noarch.rpm

# yum localinstall mysql57-community-release-el6-7.noarch.rpm

Pasamosacomprobarsilosrepositoriosestncorrectamenteinstaladosbuscando
unaspalabrasclavesenlalistaderepositorios,paraversinosdevuelvelacorrecta
existenciadeestosrepositoriosennuestroequipo.

# yum repolist enabled | grep mysql.*-community.*

Sitodoestcorrecto,vamosconlainstalacindelgestorMySQL.

# yum install mysql-community-server

Manuel Lpez Camarena 9


Aplicaciones Web 2 GM

IniciamoselservicioMySQLyluegocomprobamoslacorrectaversin.

# service mysqld start

# mysql --version

Porltimo,debemosiniciarsesinenelgestordebasedatosparapodergestionar
lasbases.Debemoselegirnuestrapropiacontrasea,yaqueelserviciodepors
traeunatemporalparaqueestaseacambiadaluegodelprimeriniciodesesin.
Paraencontrarlacontraseatemporal,labuscamosenelficherolog
correspondiente.

Apuntamoslacontraseayprocederemosaentrarenlainstalacindeseguridad
deMySQL,dondepodremoscambiarlacontrasea,ytrasaceptarunaseriede
condiciones,tendremoselservicioMySQLlisto.

# mysql-security-installation

Paso5.InstalacinyconfiguracindePHPMyAdmin.

Procederemosconlaltimainstalacindelproceso.PHPMyAdminesuna
herramientaparalagestindedatosdeMySQLdesdelapropiaweb.

LosrepositoriosdondeseencuentransonrepositoriosdeEpelyRemiinstalados
conanterioridad,aunqueloptimoserabuscarlaversinquesenospermiteyver
siesosrepositoriossonloscorrectos.Encualquiercaso,paracomprobarlos
repositoriossimplementeusamos

# yum repolist

ParainstalarPHPMyAdmindesdeelrepositorioRemihacemosusodelsiguiente
comando

# yum --enablerepo=remi install phpmyadmin

SernecesarioparareiniciarelservidorApache,ytrashacerlo,siponemosenel
navegadordelanfitrionnuestraIPdelservidorseguidode/phpMyAdmin,
aparecerunapginadequeelaccesoestprohibido.Estosetrataporqueel
archivodeconfiguracindePHPMyAdmindeniegatodaslasconexionesdesdela
quesequieraentrarpordefecto.Slotendremosquecambiaresoyyapodremos
entrarennuestrogestordebasededatosponiendoloanteriorenelnavegador.

Manuel Lpez Camarena 10


Aplicaciones Web 2 GM

Paracambiarlo,nosiremosaeditarelsiguientearchivo.

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

Dentrodeesearchivo,buscamoslasdirectivasOrderDeny,AllowyDenyfrom
Allylascomentamos,paraquetodaslasconexionesseanaceptadas.Lo
hacemosdeestamaneraporquenosencontramosenunentornomedianamente
segurocomolaredlocaldenuestraclase,peroparaaplicarloenunservidorreal,
loptimoyseguroseracrearunadirectivaconAllowxsiendoxladireccinIP
delequipodesdeelquequeramosacceder.

Comprobamosdenuevoentrandoenhttp://NuestraIP/phpMyAdminydebera
aparecerlosiguiente.

Iniciamossesincomorootyconlacontraseaqueeligisemosenlainstalacin
deseguridaddeMySQL.

Conesto,habremosacabadocontodoeldesplieguedeloscomplementosde
nuestroservidorweb.

Manuel Lpez Camarena 11

You might also like