scieee Open visual document viewer

Despliegue de infraestructura y servicios de red en la residencia universitaria “ALBERTO JIMÉNEZ FRAUD”: despliegue de infraestructura, virtualización en contenedores y desarrollo del frontend de la aplicación de gestión "panel de residente"

Garau Madrigal, Melchor Alejo

Abstract

En la Residencia Universitaria “Alberto Jiménez Fraud”, se tratará la renovación de la instalación de internet por cable y el diseño y configuración de una instalación inalámbrica (WiFi), que facilite la conexión a internet de los residentes, con la adición de nuevos servicios para los mismos y, además, de mejorar la administración de la red. Aprovechando algunos servicios existentes, que se fueron añadiendo sobre la marcha, y otros nuevos, fruto de este trabajo y del trabajo complementario a este, se realizará un despliegue de servicios virtualizados de fácil administración. De entre los nuevos servicios, destacamos el “Panel del residente” que permitirá gestionar y centralizar los servicios actuales y los nuevos por venir, para uso de los residentes. La aplicación de la nueva infraestructura de red está dando buenos resultados entre los residentes. Para los administradores de la red, la gestión y monitorización de todo el equipamiento se ha simplificado usando un solo panel de administración. Los servicios virtualizados han sido simplificados de cara al mantenimiento, actualización y mejora de éstos, de tal manera que son más ágiles realizar cambios en ellos sin tener que realizar grandes cortes en el despliegue final.

Full text

ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA GRADO EN INGENIERÍA DEL SOFTWARE DESPLIEGUE DE INFRAESTRUCTURA Y SERVICIOS DE RED EN LA RESIDENCIA UNIVERSITARIA “ALBERTO JIMÉNEZ FRAUD”: DESPLIEGUE DE INFRAESTRUCTURA, VIRTUALIZACIÓN EN CONTENEDORES Y DESARROLLO DEL FRONTEND DE LA APLICACIÓN DE GESTIÓN “PANEL DEL RESIDENTE” NETWORK INFRASTRUCTURE AND SERVICES DEPLOYMENT AT THE MÁLAGA UNIVERSITY’S DORMITORY “ALBERTO JIMÉNEZ FRAUD”: NETWORK INFRASTRUCTURE DEPLOYMENT, CONTAINER VIRTUALIZATION AND FRONTEND DEVELOPMENT OF THE MANAGEMENT APPLICATION “PANEL DEL RESIDENTE” Realizado po MELCHOR ALEJO GARAU MADRIGAL Tu o izado po PEDRO MERINO GOMEZ ALMUDENA DIAZ ZAYAS VICTORIANO FRANCISCO GIRALT GARCÍA Depa amen o TECNOLOGIA ELECTRONICA UNIVERSIDAD DE MÁLAGA MÁLAGA, SEPTIEMBRE 2018 Fecha de de ensa: El sec e a io del T ibunal! 3 4 Resumen: En la Residencia Uni e si a ia “Albe o Jiménez F aud”, se a a á la eno ación de la ins alación de in e ne po cable y el diseño y con igu ación de una ins alación inalámb ica (WiFi), que acili e la conexión a in e ne de los esiden es, con la adición de nue os se icios pa a los mismos y, además, de mejo a la adminis ación de la ed. Ap o echando algunos se icios exis en es, que se ue on añadiendo sob e la ma cha, y o os nue os, u o de es e abajo y del abajo complemen a io a es e, se ealiza á un despliegue de se icios i ualizados de ácil adminis ación. De en e los nue os se icios, des acamos el “Panel del esiden e” que pe mi i á ges iona y cen aliza los se icios ac uales y los nue os po eni , pa a uso de los esiden es." La aplicación de la nue a in aes uc u a de ed es á dando buenos esul ados en e los esiden es. Pa a los adminis ado es de la ed, la ges ión y moni o ización de odo el equipamien o se ha simpli icado usando un solo panel de adminis ación. Los se icios i ualizados han sido simpli icados de ca a al man enimien o, ac ualización y mejo a de és os, de al mane a que son más ágiles ealiza cambios en ellos sin ene que ealiza g andes co es en el despliegue inal." Palab as cla e: Despliegue de ed, edes inalámb icas, WiFi, despliegue de se icios, con enedo es, docke , aplicación web, esidencia, uni i" Abs ac : In he Uni e si y’s Residence “Albe o Jiménez F aud”, we will make no only an upg ade o he wi e ne wo k in as uc u e, bu also a design and con igu a ion o a b and new wi eless ne wo k in as uc u e (WiFi) in which esiden s will be able o use in e ne easily. New se ices will be added o he esiden s, and he ne wo k adminis a ion will be imp o ed oo. Wi h ha new ne wo k in as uc u e and bene i ing om some al eady exis ing se ices, ones c ea ed o e he days and o he s being new, as a esul o his p ojec and he complemen a y p ojec , a deploymen o i ualised se ices will be done, and will be easily adminis able. 5 Be ween he new se ices, “Panel del esiden e” is he mos ema kable which will allow o manage and cen alise he cu en se ices and he new ones ye o come, whose a ge use s a e he esiden s." The esul s o applying he new ne wo k in as uc u e a e being eally posi i e among he esiden s. Fo he ne wo k adminis a o s, he new in as uc u e can now be managed om one dashboa d which allow hem o simpli y he asks o moni o ing and con igu ing all he equipmen . The main enance, upda e and imp o emen o he se ices ha e been simpli ied inally, allowing mo e agile changes in he se ices and a oiding big ou ages o he se ices in he p oduc ion en i onmen ." Keywo ds: " Ne wo k deploymen , wi eless ne wo ks, WiFi, se ices deploymen , con aine s, docke , web applica ion, esidence, uni i" 6 1. In oducción#9" Con ex o#9" Mo i ación y obje i os#10" Es ado del a e#11" Tecnologías#12" 2. Diseño, con igu ación y despliegue de la in aes uc u a de ed#13" Desc ipción del es ado inicial de la ed#13" Ob ención de equisi os de la nue a ins alación#19" Toma de decisiones en base a los equisi os#20" Diseño y con igu ación de la ed ija#23" Diseño de la ed WiFi#25" Despliegue de nue o cableado pa a el WiFi#29" Con igu ación de la ed WiFi#30" 3. Requisi os del sis ema so wa e de ges ión#33" Análisis#33" Me odología del desa ollo so wa e#33" Requisi os#34" Modelo#38" Desc ipción de la API#41" 4. Desa ollo del on end del so wa e de ges ión#44" Tecnologías, modula idad y conside aciones#44" Desc ipción de la in e az de los módulos#47" ‣Módulo común#47" ‣Página inicial - Página de inicio de sesión#50" ‣Página esumen del blog#52" ‣Módulo pa a consumo de in e ne #54" ‣Módulo pa a his o ial de llamadas#59" ‣Módulo pa a pa es in o má icos#61" ‣Módulo pa a no i icaciones#64" 5. Despliegue de se icios#67" Es ado ac ual de los se icios#67" ‣dnsmasq#67" ‣Con olado Uni i#68" ‣Se ido Web#68" ‣Moni o ización de se ido es#69" 7 Nue os se icios#70" ‣Se ido VoIP#70" Mig ación de se icios exis en es a Docke #71" P epa ando nue os se icios pa a i ualiza #76" ‣T æ ik#77" ‣Medido de uso de in e ne #77" ‣Au en icación SAML#78" Despliegue de los se icios#79" ‣T æ ik#81" ‣Bases de da os#82" ‣Se icios web#84" ‣As e isk#88" ‣Se icios en la pue a de enlace#89" 6. Conclusiones y abajos u u os#91" 7. Re e encias#93 8 1. In oducción Con ex o En los úl imos años, el a ance en las ecnologías de la in o mación y la comunicación (TIC) ha sido eno me indudablemen e. Tal es que, ac ualmen e, la mayo ía de abajos dependen de ellos (de alguna o ma), e incluso nues as idas se han is o in luenciadas po las TIC. Además, en el á ea de la educación, las nue as ecnologías es án en ando en las me odologías de enseñanza, haciendo imp escindible su uso en las aulas, biblio ecas y en los hoga es de los es udian es." La mode nización de las ecnologías en las emp esas e ins i uciones publicas es necesa io pa a segui la ola de “la mode nización” y sob e i i en es e mundo in o ma izado en cons an e cambio. Los es udian es uni e si a ios dependen, po an o, de es as ecnologías y equie en que los espacios pa a ellos engan de una conexión su icien e pa a sus a eas. Además las inno aciones ayudan al con ol de las ins alaciones y acili an los despliegues de WiFi y ele onía VoIP." La Residencia Uni e si a ia Albe o Jiménez F aud, sob e la que se cen a la ac i idad de es e p oyec o, albe ga unos 250 miemb os de la Uni e sidad. La mayo ía son es udian es de g ado, pe o ambién hay o os es udian es y p o eso es. En un luga como es e esul a impensable no ene una ins alación TIC adecuada pa a el uso y dis u e de los esiden es, pa a pode abaja y, además, pa a pode i i . Un en o no como es e, pe mi e o ece un conjun o de se icios a los es udian es, y dan cabida a eno a o o ipo de se icios que ac ualmen e no o ecen nada desde el pun o de is a in o má ico." An es del p oyec o, la esidencia (de es a o ma nos e e imos a la esidencia mencionada an e io men e) no disponía de un se icio WiFi su icien e pa a an as pe sonas y el se icio de ele onía, que se p opo cionaba a a és de la adicional ed de ele onía conmu ada. En cambio, la ins alación de cable de in e ne e a bas an e acep able, pe o su adminis ación e a algo manual. Todo es o hacía muy complejo la adminis ación y el man enimien o del despliegue de comunicaciones de la esidencia." 9 •Se ido DNS: el p opio dnsmasq hace de se ido DNS ambién, incluye ambién los disposi i os conec ados, cada uno ob enía un dominio p opio local." Como se puede obse a , el se ido necesi a dos a je as de ed, y así es. Una es la que conec a con la in aes uc u a in e na, an e io men e comen ada; y la o a es la que conec a con el se icio de in e ne o ecido po Ono/Voda one. Es e se icio inicialmen e e an 50Mbps simé icos y se consiguió amplia a 200Mbps simé icos, ambos de ib a óp ica." A modo de ejemplo, pa a ilus a la in aes uc u a, un usua io que se conec a po cable o po alguno de los pun os de acceso (que se comen a á en b e e), ecibía una di ección IP del se ido DHCP. Al en ia un paque e, pasaba po los swi ches has a llega al se ido , que aplicaba las eglas de NAT ( aduci la IP de o igen y el pue o) y emi ía el paque e hacia la pue a de enlace de Ono y ol ía a aplica o o NAT, pa a acaba inalmen e en in e ne ." T a emos aho a la si uación del despliegue de WiFi. Había epa idos po a ios apa amen os unos ou e s neu os como pun os de acceso. Con ou e neu o nos e e imos a ou e s que uno puede comp a en cualquie luga , que no son de ninguna emp esa ele ónica y que si en pa a cualquie ipo de se icio que abaja a ni el de capa de ed. Los pun os de acceso son los apa a os que abajan sólo has a ni el de enlace y emi en la señal inalámb ica. Se conec an al ou e a a és de un cable E he ne , y en algunos casos, a a és de o o pun o de acceso." Es os ou e s neu os ienen inco po ados ambién la uncionalidad de pun o de acceso (o AP pa a aco a ). Repa idos po la esidencia, se podían encon a pun os de acceso de di e sos modelos: la mayo ía e an TP-Link WR841N(D), algunos TP-LINK WR1043ND que son mas po en es, y algún que o o O isLink (de modelo desconocido) de peo po encia que el es o. La colocación de és os e a alea o ia, incluso algunos los mo ían los p opios esiden es sin no i ica lo. En ambos casos, hacían que en algunas zonas no hubie a cobe u a a penas, y en o as, los APs se in e i ie an en e ellos." Pa a inales del p ime cua o de 2016, se consiguió comp a unos pun os de acceso Uni i AP-LR. Con ellos, se consiguió mejo a la cobe u a, pe o aún así no e a su icien e." 16 En el g á ico supe io se puede obse a lo que se denominan como hea maps de cobe u a de WiFi en uno de los mejo es bloques en cuan o a cobe u a. El g á ico jun a las es plan as de un bloque (nume ado como el 2º) y solo mues a la po encia de señal de odos los pun os de acceso pe enecien es a la esidencia. Como se puede obse a , una mi ad del bloque se e bas an e des a o ecida po una calidad de señal muy in e io ; mien as que en la o a mi ad, la señal llegaba a casi odos los luga es. O o ac o impo an e a ene en cuen a es que los apa amen os de la izquie da (en el g á ico, los que es án más abajo) es án dando jun o a la calle y las in e e encias de los o os pun os de acceso de los bloques de pisos hace que la conexión sea peo ." Los modelos de ou e s neu os que se han mencionado an e io men e, su obje i o no es el me cado p o esional como se demanda en un luga como es e. En palab as de la web o icial del TP-Link WR841N, ”Excelen e capacidad pa a mi iga la pé dida de da os a la ga dis ancia y a a és de obs áculos en una pequeña o icina o en una i ienda g ande”[12], aunque no desc ibe el modelo que se enia en la esidencia, da una idea de que el obje i o no es el uso p o esional. Po an o, es os ou e s neu os no e an los ideales pa a o ece una conexión po WiFi en la esidencia." Como medida empo al, se pe mi ió a los esiden es ae sus p opios apa a os pa a que ellos se pudie an conec a po WiFi, an e la al a de una ins alación adecuada. Es a decisión aía consigo una se ie de p oblemas, pasando po que la mayo ía de 17 Hea map de cobe u a - Rojo mas po encia, Azul menos po encia esiden es no saben como ins ala lo y hace lo unciona , además, si alguno se descon igu aba, podia hace que deja a de i la conexión de in e ne en pa e o oda la esidencia." Los dueños, muchos de ellos, solían ae nos sus apa a os pa a que se lo dejá amos p epa ado pa a usa , pe o o os lo enchu aban di ec amen e y p o ocaban "el caos”. En el caso de que alguno se descon igu ase (incluyendo a los APs de la esidencia) podían p o oca el mencionado “caos”. Con es o nos e e imos a que dichos apa a os ol ían a su con igu ación inicial, donde enían un DHCP ya que ac uaban como ou e s. Pa a ac ua como APs, se enia que conec a el cable e he ne en el swi ch pa a LAN (jus o lo con a io a lo común que es conec a lo en el pue o WAN o de in e ne ). La con igu ación po de ec o es o ece un se ido DHCP que unciona an o po su WiFi como po su swi ch LAN, haciendo que los equipos de la esidencia ue an a conec a se a es e ou e (sin in e ne ) en luga del se ido de la esidencia." Es a si uación hace in iable el modelo ac ual de ins alación WiFi, haciendo abaja a los beca ios en exceso, cuando las al e na i as p o esionales no equie en de an o abajo. Como ejemplo, los APs Uni i, aquellos mencionados an e io men e que se comp a on, se manejan desde un panel de adminis ación web cen alizado, ayudando eno memen e en el abajo de adminis ación de la ed." La ed WiFi de la esidencia se o ecía sob e una ed abie a, y las edes de cada esiden e que aía su p opio apa a o e a a elección de él mismo, aunque la mayo ía e an con con aseña. El mayo p oblema de es as edes es que al se abie as no ienen ningún ci ado y ”la cap u a de es os paque es de in o mación es muy sencilla; u ilizan p og amas que cap u an los paque es que iajan po la ed, y que no son complicados de u iliza ”[13]. Incluso se pueden ealiza “honeypo ”s que consis e en una pe sona (lad ón) que “c ea una ed WiFi abie a, muchas eces haciéndose pasa po un come cio o luga conocido, pa a que nos conec emos a ella. E in en a á oba nos la mayo can idad de in o mación posible”[14]." Po úl imo, aunque el equipamien o pa a la in aes uc u a de cable e a bueno, alguno de los swi ches deja on de unciona momen áneamen e, en cie as ocasiones. Además, uno de los con e sa es de ib a no e a gigabi (1000Mbps), lo que podia p o oca un cuello de bo ella." 18 Ob ención de equisi os de la nue a ins alación Después de analiza el es ado inicial de la ins alación, sus pun os posi i os y nega i os, se puede ealiza una búsqueda de equisi os sob e como debe ía queda la ins alación inal, que pe mi i á guia en las decisiones pa a la implemen ación de la ins alación." Los usua ios inales de la ins alación se án los esiden es, a cada uno de los cuales se les quie e p opo ciona conec i idad Wi-Fi, E he ne y un elé ono VoIP. Suponiendo que cada esiden e end á al menos dos disposi i os (un o denado y un elé ono), y sabiendo que la esidencia puede albe ga unas 250 pe sonas, la ins alación debe ía sopo a 500 disposi i os conec ados simul áneamen e." Los esiden es, como se ha comen ado an e io men e, no solo es udian, ambién i en, po lo que la ins alación debe ía se capaz de sopo a a esiden es con casos de uso como ideojuegos online o ideos y música en s eaming. La na egación po in e ne ambién es un equisi o, pe o equie e menos ecu sos que lo an e io po lo que se conside a ya incluido." La segu idad es uno de los pun os mas impo an es ac ualmen e. La ed WiFi, que se p e e que se á la más usada, debe es a p o egida con WPA2-PSK o WPA2- En e p ise (p o ocolos de p o ección y ci ado de una ed WiFi)." Pa a e i a un lujo de paque es innecesa ios en e disposi i os po WiFi, educiendo el uso de la ed, se debe ía pode usa un mecanismo de aislamien o en e disposi i os y bloquea los mensajes de “b oadcas ” pa a és os. Al se una ed g ande, man ene el uso de los APs al mínimo es impo an e pa a ene una ed es able y usable. Así se e i a ían p oblemas como el del Ch omecas a p incipios de 2018[15], en el que sa u aba la ed WiFi de los hoga es po en ia demasiados paque es po la ed WiFi, sa u ándola." Con el obje i o de sepa a el á ico de cada una de las edes y aumen a la segu idad, se debe ía implemen a di e sas VLANs, aislando los disposi i os po di e sos segmen os. Dicha sepa ación pod ía se un segmen o pa a la ins alación VoIP, o a pa a el manejo de los swi ches y APs, y una úl ima pa a el acceso a in e ne de los usua ios. Con las VLANs, se pueden c ea edes i uales que iajan 19 po la misma ins alación pe o dando la sensación de que son ins alaciones dis in as y sepa adas con un único pun o en común." Toma de decisiones en base a los equisi os Con o me a los equisi os an e io es, en es e apa ado se de alla án las decisiones mas écnicas pa a el despliegue que in lui án en los siguien es apa ados." Lo p ime o que se pensó ue que había que pensa cuan os pun os de acceso iban a hace al a y de que ma ca y modelo se comp a ían. Y sob e lo p ime o dependende ian las necesidades de los swi ches. Teniendo cla o es as decisiones, se pod ía empeza a pensa el es o de apa ados de diseño y con igu ación." Se a a desc ibi la es uc u a de los edi icios de la esidencia b e emen e pa a que se en ienda la g an p oblemá ica de una ins alación WiFi en ella. La esidencia se dis ibuye en 8 bloques: 7 bloques de 12 apa amen os y uno de 6 apa amen os. Cua o an a una mi ad (izquie da del mapa), los o os cua o a la o a (de echa del mapa); sepa ados po un pasillo ancho. Sie e de los ocho bloques es á di idido en dos, y en medio de la sepa ación, se encuen a un pequeño pasillo." Los lados izquie dos de cada bloque (mi ando desde la en ada, abajo de la imagen hacia a iba) iene es apa amen os en la plan a baja (de 2 pe sonas) y es apa amen os en la segunda plan a (de 4 pe sonas), con dos plan as cada uno (dúplex). En los lados de echos de cada bloque, en cambio, hay dos apa amen os en la plan a baja, dos en la p ime a plan a y dos en la segunda; odos de es pe sonas. El bloque con una sola mi ad, sigue la es uc u a del lado izquie do." 20 Residencia Uni e si a ia[30] En cada apa amen o, solo hay una oma de pa ed de cable E he ne . Eso incluye a los apa amen os de dos plan as, que solo hay oma en la plan a supe io ." Resumiendo es os da os, enemos que la esidencia puede albe ga como máximo a unas 260 pe sonas como máximo en 90 apa amen os." Es e es el e o a sol en a : analiza cual se ia la can idad de pun os de acceso necesa ios pa a una ins alación a la al u a pa a es a esidencia, con an os huecos y an espa cida." " Una de las p ime as ideas que se ba ajó, ue ins ala un pun o de acceso de pa ed en cada apa amen o, al igual que algunos ho eles acaban haciendo (según in o mó un come cial de Ono/Voda one). De es a o ma, se consegui ía una g an cobe u a en odos los apa amen os. En con a enemos que al se algo que es á en la pa ed, y se debe ía coloca en un luga p óximo a la oma de cable, enemos el p oblema de que pod ía su i muchos golpes de los esiden es. O o mo i o po lo que se es u o en con a es que la mayo ía de ellos (de los modelos que se obse a on) emi en la señal WiFi p incipalmen e pa a una plan a, po lo que los esiden es de los dúplex (los apa amen os de dos plan as) pod ían su i de mala cobe u a en la plan a in e io . Po lo que se desca ó la idea de es e ipo de pun os de acceso." Decidimos que usa íamos modelos de APs mas adicionales, que se pa ezcan a los que la p opia Uni e sidad es á usando ac ualmen e. Con es os modelos, los APs se pod ían coloca en luga es donde su an menos de golpes acciden ales, incluso debe ían bas a pa a llega a la plan a in e io de los dúplex. Es e ipo de APs son bas an e mas po en es que los an e io es, incluyendo los modelos pensados pa a baja densidad de disposi i os. Es o nos lle ó a la idea de que un pun o de acceso po apa amen o iba a se demasiado, ya que es os modelos emi en con mayo po encia, pod ían llega a más luga es, pe o a la ez pod ía habe mucha in e e encia en e ellos." 21 Siguiendo con el mismo modelo de pun o de acceso, plan emos si pone un pun o de acceso po cada dos apa amen os o un pun o de acceso po cada es. Aho a en a en juego como se ia la cobe u a de los pun os en un en o no eal pa a sabe esponde a es a p egun a, po lo que hay que decidi ma ca y modelo de AP pa a pode i a la siguien e ase." Aunque pa íamos de la idea de usa Cisco Me aki pa a los pun os de acceso, acabamos decidiendo que iba a se mejo opción usa Ubiqui y Uni i po ene ya algún equipamien o de esa emp esa de an es, además de habe comp obado que su endimien o e a el adecuado pa a el ipo de despliegue que se necesi aba." Aho a quedaba elegi qué swi ches íbamos a usa pa a el despliegue, pa a complemen a la ins alación. Inicialmen e se sugi ió usa swi ches de Cisco, pe o como los pun os de acceso iban a se de Ubiqui y Uni i, iba a se mejo opción usa swi ches de la misma ma ca pa a ene una mejo in eg ación en la ins alación y en el panel de adminis ación de Ubiqui y." Un equisi o indispensable pa a los swi ches es que debían de se de 48 pue os mínimo, y ene 4 de es os. El po qué se debe a que, como se comen ó en el apa ado “Desc ipción del es ado inicial de la ed”, hay que epa i in e ne a 48 apa amen os pa a una mi ad y o os 42 pa a la o a mi ad de la esidencia. Además, al añadi pun os de acceso, se necesi a án más cables pa a és os. Poniéndonos en el peo caso de un AP pa a cada dos apa amen os, se necesi a ían 24 cables ex a en la p ime a mi ad y 21 cables ex a pa a la segunda. El o al se esume en la siguien e abla:" Po an o, dos swi ches pa a cada mi ad: uno dedicado a apa amen os y o o dedicado a los pun os de acceso." Mi ad 1 Mi ad 2 Apa amen os 48 42 Pun os de acceso 24 21 To al pue os en swi ches 72 63 22 Además, exis en dos pun os de acceso ue a de los apa amen os: uno en la sala de es udios y o a en el salón de ac os. Pa a hace llega in e ne a es a sección, con un swi ch de 8 pue os bas aba (es lo más pequeño que se puede encon a )." Resumiendo, se decidió lo siguien e espec o a la ins alación nue a de ed:" •1 AP po cada dos o es apa amen os" •APs de Ubiqui y Uni i" •4 swi ches de 48 pue os de Ubiqui y Uni i - 2 po mi ad" •1 swi ch de 8 pue os de Ubiqui y Uni i" Diseño y con igu ación de la ed ija Es e es uno de los pun os más impo an es de la ed, ya que es la pa e de la in aes uc u a que sopo a al es o. Po lo que un buen diseño ha á que dé un buen esul ado la ed po cable." Como se comen ó al p incipio de la sección “Desc ipción del es ado inicial de ed”, el diseño inicial ue c eado po un g upo del Se icio Cen al de In o má ica de la 23 G á ico que desc ibe la dis ibución de la ed ija (o de cable) Uni e sidad, po lo que imos adecuado eplica la es uc u a pa a el nue o despliegue, pe o adap ándolo a los nue os disposi i os y sus posibilidades." La nue a dis ibución, que se desc ibe isualmen e en el g á ico de la an e io , consis e en que el se ido se conec a al p ime swi ch de la p ime a mi ad. És e se decidió que epa ie a la conexión a los 48 APs de la misma mi ad. Po enlace de ib a, se conec aba con el segundo swi ch de es a p ime a mi ad y con el swi ch de ecepción (que luego se comen a á). Los swi ches de es e modelo ienen odos 4 pue os adicionales. Po lo que, es os pue os se usan pa a los enlaces de ib a swi ch-swi ch." El segundo swi ch enia odas sus pue os ocupados con los 48 apa amen os. Po lo que se conec a con el p ime swi ch de la o a mi ad de la esidencia median e enlace de ib a, usando esos pue os adicionales." El de la segunda mi ad epa e conexión a los 42 apa amen os de es a mi ad de la esidencia. Y, po enlace de ib a, se conec aba con el segundo swi ch." El segundo swi ch de es a mi ad epa e la conexión a los pun os de acceso de es a segunda mi ad." Po úl imo, el swi ch de ecepción. Como se comen ó, iba a se inicialmen e un swi ch de pocos pue os, pe o a la esidencia apa eció un Uni i EdgeSwi ch de 48 pue os. És e es de o a linea de p oduc os, po lo que no se conec a con el panel de Uni i, y se con igu a manualmen e median e su p opio panel. Con inuando con la desc ipción de la opología, es e swi ch po ib a ecibe la conexión y la epa e a los pun os de acceso de la sala de es udios y el salón de ac os, además de es elé onos VoIP." Respec o a la con igu ación de la ed, dis inguimos 4 edes, que se implemen an sob e VLANs:" •Red de adminis ación: es la ed que usan los swi ches, pun os de acceso y el con olado Uni i pa a comunica se y con ola la ed." •Red WiFi: es la ed que usan odos los usua ios que se conec an po WiFi." •Red cableada: es la ed que usan odos los usua ios que se conec an po cable al elé ono del apa amen o[16], los elé onos o ecen un pue o ex a pa a conec a se po cable a la ed, y és e e ique a el á ico de ese pue o de o ma dis in a al del VoIP." 24 •Red VoIP: los elé onos VoIP son los que usa án es a ed pa a la comunicación con la cen ali a y en e los elé onos." Una ez desc i os el obje i o de las edes, se a a desc ibi la con igu ación más écnica de cada una, median e la siguien e abla:" En la abla an e io , se puede e cuales son las edes IP 4 (desc i as po IP de la ed y másca a), la pue a de enlace, el nume o de la VLAN, si los swi ches hacen aislamien o en e disposi i os y si el DHCP es es á ico. Con es o úl imo se es á e i iendo a que el DHCP en modo es á ico no o ece una IP si no es á den o de una lis a de inida manualmen e. De es a o ma, es más di ícil que una pe sona se conec e a una de esas edes y que le uncione." Diseño de la ed WiFi Pa a empeza con esa ase, el Se icio Cen al de In o má ica nos p opo cionó un mapa de cobe u a que ealiza on median e una simulación con el so wa e Ekahau sob e la banda 2,4GHz, suponiendo que los pun os de acceso se ian los Uni i AC Li e. Además, nos ecomenda on usa es e modelo de pun os de acceso ya que eían que iban a se idóneos pa a el despliegue." Sob e es e modelo de APs, uno solo es capaz de sopo a a 200 clien es en condiciones no males an o en 2,4GHz como en 5GHz, según el documen o de especi icaciones del modelo[17], además de que su alimen ación se ealiza sob e el p opio cable de in e ne (Powe o e E he ne )." La simulación, ealizada po el SCI, consis ía en coloca dos pun os de acceso po módulo o mando una diagonal. Con módulo se e ie e a una mi ad de un bloque, y la diagonal es coloca uno en la plan a baja y en un lado del módulo, y el o o en la segunda plan a en el lado opues o del módulo. El dibujo de la es a siguien e página Adminis ación WiFi Cableada VoIP Red IP 4 10.10.10.0/24 10.10.0.0/21 10.10.20.0/24 10.10.11.0/24 Pue a de enlace 10.10.10.254 10.10.0.1 10.10.20.1 10.10.11.254 VLAN No 10 15 7 Aislamien o No Si No No DHCP Es á ico Si No No Si 25 Pa a su uncionamien o, se equie e de un se ido RADIUS, que pe mi e iden i ica al usua io. Es e se ido lo p o ee la Uni e sidad, y los pun os de accesos in en an au en ica di ec amen e con és e. La ed edu oam usa un sis ema de au en icación po uni e sidades, y pa a conec a se con o os países, se hace a a és de los se ido es del NREN (Na ional Resea ch and Educa ion Ne wo k) del país co espondien e. Po an o, nues o se icio se conec a a un se ido RADIUS que edi ecciona las pe iciones al se ido co espondien e dependiendo del dominio que enga el email del usua io." Pa a los in i ados, o aquellas pe sonas que no hayan con igu ado aún la ed edu oam, se implemen a á un po al cau i o en es a ed pa a pode iden i ica a cada uno de los usua ios y limi a el uso que hacen de la ed." Todo el á ico de la ed WiFi a po la VLAN 10, que se explicó en “Diseño y con igu ación de la ed ija”.& 32 3. Requisi os del sis ema so wa e de ges ión Análisis Vi imos en un mundo donde odo es á en in e ne , que nos o ece la comodidad de pode hace o e cosas desde u o denado o mó il, cen alizado en nues os disposi i os. Pa a la esidencia, pode o ece un conjun o de se icios y que se puedan e desde u apa amen o es posible g acias a la nue a ins alación de cable e inalámb ica, y las acilidades que o ecen los con enedo es. Además, ag upa di e sos se icios, inicialmen e sepa ados, en un solo luga ayuda a isibiliza los. Y pode in o ma iza algún se icio que ac ualmen e no lo es, pe mi e simpli ica las ges iones de ellas y da comodidad de uso." Ac ualmen e enemos da os de uso de á ico po disposi i o, un se icio de pa es in o má icos, el blog de emas elacionados con la esidencia, o nue os da os como los que o ece el se icio de ele onía aho a son elemen os que pod ían es a p esen es en dicho so wa e que pueden in e esa a los esiden es. Tene los en un mismo luga puede acili a a los usua ios encon a odo es o y pode e esa in o mación en cualquie luga , sea en la esidencia o ue a." Además, es e so wa e no debe ía se ce ado, si en el u u o se quie e ex ende , debe ía pode se ex ende sin mucha di icul ad. Pa a es e abajo no se a a pode aba ca muchas de las ideas que puedan su gi , es e pun o es impo an e pa a que los u u os es udian es que abajen en el á ea de in o má ica de la esidencia puedan amplia lo con las ideas no con empladas en dicho abajo o con sus p opias ideas." Me odología del desa ollo so wa e Pa a es a ase del abajo, se usa á una me odología basada en Sc um. La oma de equisi os se ealiza á median e ob ención de lo que se denominan “Use S o ies”, que pueden se uno o a ios equisi os de las me odologías mas clásicas. De los equisi os, se ob end á un modelo pa a la base de da os que se i á pa a el backend que ealiza An onio pa a almacena in o mación. Con el modelo ealizado, se de ini á un conjun o de endpoin s de la API pa a que no haya disc epancias en e 33 el backend y el on end, que ealizo yo. Esos endpoin s son las u as disponibles en el se ido que pe mi en ealiza el in e cambio de in o mación y ealiza acciones en e el backend y el on end." El p oceso de desa ollo del se ido web se pod á encon a en la sección «Desa ollo del backend de la apliación "Panel del esiden e”» del abajo de An onio Ángel. El abajo del on end, en cambio, se encon a á en la siguien e sección. De es a o ma, cada uno abaja á independien emen e en cada una de sus a eas, pe o pod á da opinión sob e las his o ias de usua io o la especi icación de los endpoin s en cualquie momen o." En la ul ima ase, hab á que hace un p oceso de p uebas manuales pa a comp oba que odo unciona co ec amen e y que la in eg ación en e ambos componen es es co ec a." Requisi os En es e apa ado, se expond án los equisi os ecabados pa a es a aplicación web. Al segui una me odología Sc um, los equisi os se án “his o ias de usua io”, que son pun os más gené icos, que incluyen más in o mación sob e lo que se pide, pe o pe mi e pode modi ica los o ex ende los más ácilmen e que los equisi os clásicos. Es os equisi os es án muy bien es uc u ados y de inidos, pe o que en muchas ocasiones ealiza un cambio sob e ellos conlle a a hace una ees uc u ación de algunos de ellos, al y como hemos comp obado en los abajos de los es udios de la ca e a." Desde la p ime a e sión has a la inal, han habido di e sos cambios y mejo as en es as his o ias de usua io, siguiendo la agilidad de la me odología SCRUM, que han pe mi ido ob ene el siguien e es ado de ellos. Es os son los “ equisi os” inales de la aplicación:" •Aspec os gene ales de la aplicación web •La aplicación web debe se modula , pe mi iendo su ex ensión ácilmen e." •La aplicación debe pode usa se desde una na egado web en cualquie disposi i o." 34 •La aplicación es á pe ec amen e en dos pa es, se debe ga an iza la in e ope abilidad en e ambas median e el es ilo a qui ec ónico REST y usando el o ma o de in e cambio de da os JSON:" -La pa e isual - In e az de Usua io - con la lógica de con ol de la in e az, a la que llama emos on end." -La pa e de lógica de negocio y base de da os, con las ope aciones especí icas de és a, a la que llama emos backend." •Pe misos de la aplicación •En la aplicación se dis inguen a ios oles, cada uno de ellos de e mina á las acciones que el usua io puede lle a a cabo en es a. Los oles p incipales se án:" -Adminis ado " -Residen e" -Pe sonal de la UMA no esiden e" -Pe sonal de adminis ación" •Los pe misos se dis ingui án cada módulo, den o de un módulo hab á páginas y den o de cada página hab á uno o a ios pe misos. Po an o, se di á que un ol end á X pe miso sob e el módulo A y la página B." •La isibilidad de los módulos y los dis in os apa ados den o de un módulo dependiendo de los pe misos que enga el usua io debe pode se ob ene median e la API." •Módulo de consumo de in e ne •La aplicación pe mi i á e el consumo de in e ne de cada uno de los disposi i os ligados a un esiden e. Cada usua io pod á iden i ica a la aplicación cuales son sus disposi i os en ando a es e módulo con cada uno de sus disposi i os y con su cuen a. Se mos a án g á icos de consumo de in e ne po cada uno de sus disposi i os iden i icados e in o mación elacionada a cada uno, como consumo ag egado, di ección IP, e c." •Los adminis ado es pueden e odos los disposi i os asociados, pa a e in o mación sob e ellos o ealiza acciones sob e ellos." •Si un usua io eclama que su disposi i o, siendo suyo, no puede encon a lo en la página, po qué alguien se ha ap opiado de él, pod á no i ica lo a los beca ios de in o má ica y ealiza el cambio de “dueño”." 35 •Sob e consumo ag egado, se pod á e dicho consumo en un ango de echas, que a de 1 día has a 1 semana, con una p ecisión de 1h has a 1 día, o de 1 día has a 1 mes con p ecisión de 1 día." •Pa a los da os en iempo eal, el ango oscila á en e dos alo es X e Y. X se á del momen o ac ual has a 1 día, 23 ho as y 59 minu os an es; el alo de Y se á de 1h an es has a 2 días. La di e encia en el ango debe se mínimo de 1 minu o. La p ecisión se á de 1s has a 1 ho a." •Módulo de esumen pa a el Wo dP ess •Una sección que mues e un esumen de las úl imas no icias del blog, ca gando el RSS de és e, y mos ando un enlace pa a accede a él. También se mos a ía los mé odos pa a man ene se in o mado." •Módulo de his o ial de llamadas •Un usua io esiden e se á capaz de e el his o ial de llamadas de su apa amen o." •El pe sonal de adminis ación debe se capaz de e el his o ial de llamadas de cualquie apa amen o." •En cualquie caso, debe habe un il ado po echa y núme o de elé ono del o o ex emo." •Módulo de incidencias in o má icas •La no i icación y ges ión de incidencias in o má icas debe hace se a a és de la aplicación. Exis i á un o mula io que un usua io del sis ema pueda ellena pa a no i ica la a e ía o el p oblema, o simplemen e hace una consul a in o má ica. Los adminis ado es pueden i ac ualizando el es ado de la incidencia y los usua ios, hace su seguimien o." •En la página de una incidencia, los adminis ado es se án capaces de modi ica el es ado del mismo. Al ealiza un cambio de es ado, deben esc ibi un mensaje que explique el mo i o." •El usua io puede desca a en cualquie momen o una incidencia, explicando la azón de al desca e." •Además, los adminis ado es pueden e cuales son las incidencias ac i as y esuel as." •Los es ados que puede ene una incidencia son:" -Pendien e: nue a incidencia, espe ando a que algún beca io lo ea" 36 -Espe ando: incidencia lis a pa a se a eglada, pe o no pueden i aún (no pueden i po no se la ho a de disponibilidad o no es án disponibles ningún beca io)" -T abajando: algún beca io es á abajando en ello" -Espe ando a usua io: se espe a alguna espues a del usua io po algún mo i o" -Resuel o: la incidencia se ha esuel o" -Desca ado: el usua io ha desca ado la incidencia" -No se a egla á: po algún mo i o ( azonable), la incidencia no se a a a egla " •No i icaciones y módulo de no i icaciones •La aplicación en ia á no i icaciones a los usua ios an es dis in os e en os que ocu an en el sis ema. Es a con a á con dis in os mé odos de no i icación:" -Co eo ins i ucional UMA, mé odo de no i icación po de ec o." -Bo de eleg am, el bo manda á a los usua ios con los que man iene con e sación las no i icaciones opo unas" •Cada usua io puede selecciona qué medios de no i icación desea, y ene a ios (o ninguno ac i o). Como mínimo se end án las no i icaciones in-app." •Den o de la aplicación hab á un “cen o de no i icaciones”, desde donde se pueden consul a odas las no i icaciones (pendien es, is as…)." •Una no i icación ya is a se á bo ada al cabo de un iempo p uden e. (1-3 meses)." •Ges ión de la sesión •Cualquie usua io de la aplicación a excepción del pe sonal de adminis ación, debe iden i ica se en la aplicación usando sus c edenciales de iDUMA. El pe sonal de adminis ación emplea á unas c edenciales pa a la au en i icación usando un di ec o io p opio." •La sesión se manda á en cada pe ición en la cabece a HTTP en la o ma de oken JWT. La alidez de un JWT se á de 2 días." -En una espues a HTTP se manda á una cabece a de ex ensión cuando el oken es é a pun o de expi a , es o es, cuando le queden 1h. " 37 -Se usa á una cabece a HTTP con alo a 1, y aconseja al clien e que pida un oken nue o en una u a especí ica (desc i a más abajo) y empleando el oken que iene aún álido." -La u a se á / enew_ oken, y a es a se le ha á simplemen e una pe ición GET (con el campo de la cabece a Au ho iza ion: Bea e JWT_TOKEN) y la espues a se á un JSON: { oken: NEW_TOKEN }" -Hab á una u a disponible que le pe mi i á eno a el oken al clien e, empleando access oken pa a en onces aún álido. El oken nue o que se p opo cione, end á una alidez de 2 ho as desde el momen o de su expedición. Si el oken ya ha sido eno ado, el a iso de expi ación se ha á cuando a es e le queda 30min en el caso del oken de 2h." •El mecanismo de pe sis encia del oken JWT en el clien e se á empleando la API local s o age/session s o age del na egado web." -local s o age pe mi e man ene la sesión incluso si cie a la pes aña o el na egado " -session s o age, en cambio, cie a la sesión al ce a las pes aña de la web" -Pe mi e implemen a el mecanismo de “ ecue dame”" •Si un clien e ealiza una pe ición al se ido pa a ealiza una acción, pe o el usua io que lo ealiza no iene pe misos, debe alla la pe ición indicando que no iene pe misos pa a ealiza dicha acción." •En el on end, si in en a accede a una página que no iene pe misos, apa ece á que la página no exis e." Modelo Pa a es e p oyec o, el modelo de da os debe pode pe mi i almacena oda la in o mación desc i a an e io men e en una base de da os. Pe o, los da os de consumo y llamadas ele ónicas se encuen an disponibles en o as base de da os, a las que la aplicación se conec a á pa a ob ene esa in o mación." El modelo siguien e solo ep esen a á los da os que maneja á di ec amen e la aplicación web, o os da os como el his o ial de llamadas o consumos de in e ne se encuen an en o as bases de da os." 38 39 Modelo elacional de la base de da os - An onio Ángel El modelo lo ha ealizado An onio Ángel, aunque el modelo inicial ue un abajo en equipo." El cen o del modelo es la en idad Usua io. Es a en idad almacena la su icien e in o mación del usua io pa a que pueda usa la aplicación. El NIU, su nomb e y, si es esiden e, el núme o de apa amen o son los da os necesa ios. Pa a los usua ios de la adminis ación de la esidencia, al no se pe sonal de la uni e sidad, se debe o ece un inicio de sesión al e na i o. Eso es á ecogido en la en idad C edenciales, cuyo NIU se á uno cualquie a que no in e ie a con los de la Uni e sidad (como po ejemplo núme os bajos como el 1, 2, 3…)." Los pe misos es án ecogidos en las en idades Rol y Pe miso (con la elación de muchos a muchos ep esen ada po la en idad ol_has_pe miso). Po an o un ol de e minado end á un conjun o de pe misos, y esos pe misos se pueden i epi iendo en e los di e sos oles. A su ez, cada Usua io es á elacionado con el ol al que pe enece. Los pe misos con ienen es cla es que pe mi en de e mina a donde pe enece el pe miso y cual es. Los a ibu os module_name y page_name iden i ican donde pe enece el pe miso pe mission. El módulo iden i ica un g upo de da os y acciones elacionados, como puede se los pa es de in o má ica. La página, que es á más elacionado con el on end, pe mi e pode en a en una o a ias secciones del módulo." Sob e no i icaciones, es as se almacenan en la base de da os en la en idad No i icacion. En ella se almacenan el í ulo, la echa y si se ha leído o no, además de a quién a di igido la no i icación. Opcionalmen e se puede almacena un cue po, con con enido que desc iba más la no i icación, y un enlace, en caso de que se conozca el o igen de la no i icación." El sis ema de no i icaciones iene di e sos canales pa a dis ibui las, como se ha comen ado ya. Pa a con igu a las, se han c eado cua o en idades de las cuales es “he edan” (usando el mismo concep o de he encia de O ien ación a Obje os) de una. Es a supe -en idad es base_no i icación que elaciona un usua io con una con igu ación, además de indica si es á ac i o o no ese canal. De es a, sale una con igu ación pa a Teleg am, o o pa a los Co eos y una úl ima pa a no i icaciones 40 PUSH (aunque no se usen, el sis ema es a p epa ado pa a añadi es e nue o canal). Pa a el canal de co eos elec ónicos no se almacena ningún da o adicional, pe o pa a pode lo iden i ica den o del backend, se debe c ea dicha en idad. Pa a Teleg am, hay que almacena el cha _id (o use _id, que son el mismo iden i icado ) pa a pode en ia mensajes di ec os al usua io." En el sis ema de pa es in o má icos ambién se debe modela , y lo encon amos con las en idades Pa eIn o ma ica y Seguimien o. El p ime o, Pa eIn o ma ica, almacena la in o mación necesa ia pa a un pa e. Con iene el ipo de pa e (is_wi i, is_wi e y is_o he ) donde se puede selecciona más de un ipo a la ez. También incluimos una desc ipción del p oblema o consul a, que es obliga o ia, la echa de c eación, el es ado en el que se encuen a el pa e y una disponibilidad en o ma de ho a ios almacenados como json (a ailabili y_json). Es e úl imo pe mi e al usua io que c ea el pa e deja ano ado su disponibilidad ho a ia pa a que se pueda esol e lo an es posible. El o ma o del JSON se especi ica á en la API. Po úl imo, cada pa e es á elacionado con un usua io, que es su c eado . El seguimien o si e pa a e el his o ial de modi icaciones del es ado del pa e, y pode isualiza los cambios del mismo. En un seguimien o, almacenamos la echa de cuando se ealizó esa modi icación, un mensaje que indica el mo i o del cambio, y, si hay un cambio de es ado, se almacena ambién el es ado en el que se encon aba el pa e an es de modi ica . De es a o ma, se puede obse a el lujo de ansiciones de es ado del pa e." La úl ima en idad es Disposi i o. Es a en idad pe mi e elaciona un usua io con un disposi i o de la esidencia. Pe mi e o ece la u ilidad de e los consumos de in e ne al sabe cuales son los disposi i os del usua io. Lo impo an e de la en idad es la MAC (o di ección MAC) que es la que pe mi e la iden i icación. Los o os dos a ibu os si en como caché, pa a acceso ápido de esos da os." Desc ipción de la API La base común en e el backend y el on end es la API que expone el p ime o que consumi á el segundo. Se desc ibi á cual es es a especi icación, que 41 Pa a Reac , se han de inido algunos componen es que se pueden eu iliza an as eces como sea necesa io. Algunos son componen es de Boo s ap con e idos pa a su ácil uso en Reac , como bo ones[56], modal[57] o collapse[58]." Pa a comunica se con la API del backend, se ha de inido una pequeña biblio eca que simpli ica la comunicación con és e. El uso de es os mé odos den o de una acción de edux (código que pe mi e modi ica el es ado del módulo) debe me e se den o de un deco ado (del pa ón de diseño deco ado ) que cap u a los e o es y los almacena en edux, de es a o ma se e i a epe i código pa a e o es, y cualquie componen e puede conoce que ha habido un e o usando siemp e el mismo mecanismo ( e el es ado de los e o es)." Es e módulo, además, escucha a las nue as no i icaciones que puedan apa ece mien as el usua io usa la aplicación. Ya que es un compo amien o que se a a compa i en e odos los módulos, se ha decidido coloca lo en es e componen e común. Al ecibi una nue a no i icación, la mos a á en una esquina del na egado (como una no i icación), a la ez que inc emen a á el con ado de no i icaciones no leídas (se encuen a en la pa e supe io de una página, a la de echa)." Sob e es a cabece a, el bo ón de “Sali ” pe mi e ce a sesión en cualquie momen o. El ex o de la izquie da “Inicio” indica el nomb e del módulo en el que e encuen as. Es a cabece a siemp e apa ece en odos los módulos." También se ha colocado una ba a de na egación en e los dis in os módulos, y el mismo módulo en el que uno se encuen a. Se encuen a a la izquie da del na egado (cap u a de echa abajo), y en los mó iles se mues a median e un bo ón que apa ece al lado del ex o de la izquie da de la cabece a (cap u a de echa a iba)." Po úl imo, ambién se enca ga de p epa a la de ección del idioma del na egado pa a pode mos a los ex os en 48 el idioma del usua io (si es á disponible)." Hay un componen e llamado App que es el enca gado de ealiza la mayo ía de las a eas desc i as an e io men e. La ba a de na egación, la cabece a, las no i icaciones, los es ilos base (CSS), el sis ema de u as, que mues a las páginas dependiendo de la u a del na egado , y la comp obación de pe misos son a eas que ealiza es e componen e. App se mues a siemp e y es an eceso de cualquie página del sis ema de u as." En el caso de que una página no exis a (o el usua io no la pueda e ), la página que se mues a ambién es a incluida en es e módulo. También, du an e la comp obación de los pe misos y de la sesión, si ocu e un e o , se mos a á o a página que es á incluida en es e modulo común ambién." 49 ‣Página inicial - Página de inicio de sesión" 50 (↑) Página de inicio de sesión, con las dos modalidades" (↓) Página inicial después del p oceso de inicio de sesión Pa a que los usua ios puedan inicia sesión a a és del mecanismo de au en icación SAML de la Uni e sidad, se ha p epa ado un bo ón que pe mi e empeza el p oceso de au en icación. Con un sencillo click, edi igi á a la u a / albe ginia que es el que empieza odo el p oceso. Al inal del p oceso, como se ha desc i o, la aplicación web ecibi á un oken den o de los pa áme os de la URL, que la aplicación almacena á den o del localS o age o sessionS o age, dependiendo de si se ha ap e ado el bo ón de eco da o no ( espec i amen e). En el caso de que el usua io inie a de algún o a página y haya acabado en la página de inicio de sesión po habe le caducado la sesión, se in en a á edi igi a la página en la que se encon aba an e io men e." En la página de inicio de sesión ambién encon amos un modo al e na i o de inicio de sesión. Es e modo es pa a la adminis ación de la esidencia, ya que no son usua ios de la Uni e sidad, necesi an de un mé odo al e na i o de inicio de sesión. Es e mé odo es el adicional usua io y con aseña, con las mismas uncionalidades que el an e io mé odo, aunque el oken de la sesión se ob iene en la misma espues a de comp obación de las c edenciales. Esa comp obación se ealiza di ec amen e al backend de la aplicación web." El bo ón de abajo de ambas cap u as pe mi e cambia en e ambos mé odos de inicio de sesión, que se ealiza al momen o." Si hay ya un usua io que haya iniciado sesión, es a página se con ie e en una especie de esc i o io con enlaces a los di e sos módulos y páginas donde el usua io iene pe misos pa a accede , además de un módulo ex a con enlaces ápidos a páginas de la web de la Uni e sidad que pueden se ú iles a los usua ios." 51 ‣Página esumen del blog" " 52 Es e módulo es un acceso pa a el blog en Wo dP ess. Al en a , se le mos a á al usua io una lis a de úl imas en adas del blog, a modo de esumen sin ene que en a en el blog pa a isualiza los. Al clicka en una “ a je a” de un pos , se ab i á una nue a pes aña con la en ada comple a. Encima de es e lis ado, se encuen an dos bo ones: g ande y azul pa a i al blog, mas pequeño y g is pa a i a o a página." Es a o a página explica al usua io di e sas mane as de ecibi no i icaciones cada ez que se publica una en ada." 53 ‣Módulo pa a consumo de in e ne " 54 Panel con disposi i os y g á icos G á ica de iempo eal con selec o de ango de iempo " " 55 Da os ho a a ho a de la úl ima semana sob e elocidad media Da os ho a a ho a de la úl ima semana sob e consumo ag egado " 56 G á ica día a día del mes sob e consumo ag egado Panel de adminis ación (lis ado de disposi i os) " En el módulo de consumo de in e ne , un esiden e es capaz de isualiza di e sas g á icas sob e los da os que se ob ienen del uso de in e ne que ealizan sus disposi i os. En la pa e supe io de la página encon a á una lis a de pes añas con cada uno de los disposi i os asociados a su cuen a. Al hace click en alguno, apa ece án las g á icas. Además, la URL se modi ica á pe mi iendo eca ga la página o lle a la a o a pes aña (copiando y pegando) sin pe de el disposi i o seleccionado. En caso de en a con una URL in álida o con un disposi i o que no es del esiden e, no ha á nada." La p ime a g á ica que encon amos mues a en iempo eal el consumo de ancho de banda del disposi i o. En la g á ica, hay un campo que pe mi e selecciona el ango de echas a mos a en el g á ico. El ango usa echas ela i as al momen o ac ual, es e es el mo i o po el cual la echa más p óxima a la ac ual es á más a la de echa, y la más lejana a la izquie da, exp esando así el paso del iempo y siguiendo el mismo esquema que la g á ica. El campo escala sus alo es máximo y mínimo de acue do a los alo es ac uales, pe mi iendo da mayo p ecisión cuando ambos alo es del campo son p óximos, y meno p ecisión cuando la di e encia es mayo . El alo más an iguo que se puede ob ene es de 1 día." 57 Panel de adminis ación con il ado (más bo ones de la abla) ‣Módulo pa a no i icaciones" " 64 Con igu ación de no i icaciones Con igu ación de no i icaciones, con el código de ac i ación pa a Teleg am " 65 Lis ado de no i icaciones sin lee Lis ado de odas las no i icaciones El módulo de no i icaciones pe mi e al usua io con igu a los canales de no i icaciones y e sus no i icaciones, sin lee o odas." En la con igu ación, con un simple click se puede ac i a o desac i a los canales de no i icación disponibles. En cada canal se incluye una b e e desc ipción de a donde se en ían las no i icaciones y debajo la casilla pa a ac i a o desac i a dicho canal. En el caso de Teleg am, an es de pode usa ese canal hay que con igu a lo. Pa a ello, al y como se mues a en la segunda cap u a, el usua io debe habla al bo (el que apa ece es un ejemplo, no es uno eal) y le debe en ia el código que apa ece en pan alla, y después debe ap e a el bo ón de “Comp oba ac i ación” que le no i ica á si el p oceso ha uncionado co ec amen e." En el lis ado de no i icaciones sin lee , que co esponde con la e ce a cap u a, pe mi e e dichas no i icaciones e in e ac ua con ellas. Si las no i icaciones con ienen un enlace, se mos a á como “Ve más”. Al ap e a el enlace, se ma ca á como leído. En el es o de no i icaciones, se puede ma ca como leído con el bo ón e de. El bo ón ojo de “Desca a ” pe mi e elimina la no i icación comple amen e del sis ema." En el lis ado de no i icaciones, el usua io puede e odas las no i icaciones (leídas y sin lee ), y hace las mismas ope aciones que en el lis ado de no i icaciones sin lee ." 66 5. Despliegue de se icios Es ado ac ual de los se icios Empeza emos desc ibiendo los se icios ac uales en la esidencia, como es án ins alados y uncionando, y como pod ía ayuda el uso de i ualización median e con enedo es." Ac ualmen e, en la esidencia, enemos un conjun o de se icios que sus en an la esidencia o complemen an las ac i idades de los esiden es. Una buena pa e son se icios web, pe o o os son se icios de sis emas y edes." ‣dnsmasq" Tenemos p ime o el se icio de DHCP + Caché DNS que, como se ha mencionado di e sas eces en la sección 2 (Diseño, con igu ación y despliegue de la in aes uc u a de ed). Es un se ido que o ece DHCP (pa a IP 4) a las dis in as edes de la esidencia, pa a que los disposi i os eciban su IP asignada (es á ica o dinámicamen e). Además, iene un se ido DNS que almacena localmen e copias de en adas DNS pa a una mayo espues a a ni el local, además de ene en su egis o los disposi i os que se les ha asignado una IP po DHCP (y hayan dado un nomb e de disposi i o - conocido como hos name). Es un elemen o esencial de la ed que pe mi e a odos pode con igu a sus disposi i os au omá icamen e, incluyendo elé onos VoIP, swi ches y APs." Vi ualizado se i ía pa a hace lo po able, ácilmen e ins alable y se educi ían los iempos de despliegue en caso de allo. Pe o nos qui a ía de ac ualizaciones 67 dnsmasq Con olado Uni i nginx php- pm MySQL Wo dP ess Medido de consumo de in e ne Pos g eSQL + imescaleDB ne da a G á ico con los se icios ac uales que se pueden i ualiza , ag upados en columnas po elación au omá icas de segu idad que ienen con Ubun u Se e y la es abilidad que o ece es e paque e, además de la ue e dependencia con las in e aces de ed del sis ema hos . La con igu ación del se ido , eniendo una copia de los a chi os de con igu ación, solo se ía copia y pega . Con es os p os y con as, eo que no se ia necesa io i ualiza el se icio ya que ac ualmen e como es á, a bien y no da p oblemas." ‣Con olado Uni i" El siguien e se icio es el con olado Uni i. Es el que se enca ga de ges iona los APs y los swi ches (menos el de la zona de ecepción). Además nos pe mi e pode e el es ado de odos ellos, con igu a los, ac ualiza su i mwa e…, a a és de un panel web. El con olado usa di e sos pue os pa a el con ol de los disposi i os." También pod ía se buen candida o pa a i ualiza , pe o debido a que, al igual que el se ido DHCP, necesi a acceso di ec o a la ed de los swi ches y APs, di icul a su p oceso. Exis e dos mé odos pa a pode usa es e se icio en un con enedo : uno es usa las mismas edes que el del sis ema (exac amen e igual que como es á aho a) y que no es compa ible con o ques ado es de con enedo es como Kube ne es o Docke Swa m, o usa una ed macVLAN[19] que pe mi e conec a el con enedo di ec amen e a una ed eal y es compa ible con o ques ado es. Aunque, en mi opinión, posiblemen e sea más di ícil mon a odo el sis ema i ualizado que deja el se icio al y como es á. Exis e un ejemplo de con enedo que pe mi e ambos modos de ed[20]." ‣Se ido Web" También enemos una web. La web es á di idido en di e sos elemen os, po lo que p ime o desc ibi emos el se ido web al que se conec an odos los usua ios. El se ido es un nginx[21] que si e a chi os es á icos que se encuen an en la ca pe a de a chi os web. Además enemos un Wo dP ess donde se publican algunas ci cula es, in o mación que o ecen los beca ios (si lo desean) o cie as no icias elacionadas con la esidencia. Es e usa ambién nginx, aunque delega g an pa e del abajo a PHP po se una aplicación web hecha en PHP." Es e se icio se pod ía di idi en un p oxy in e so (un se ido web que edi ecciona pe iciones web a o os se ido es dependiendo de cual sea), o o pa a los a chi os 68 es á icos de la web y o o pa a Wo dP ess con un apache + mod_php (ya que Wo dP ess se lle a muy bien con es e ipo de con igu aciones). Pa a el p oxy in e so se usa ía æ ik[22] que se de ine como “The Cloud Na i e Edge Rou e ”[22]. Es e so wa e pe mi e el au o-descub imien o de se icios y su con igu ación median e pa áme os que se o ecen den o del mismo descub imien o. Con es e æ ik, añadi y qui a pa es de la web se á an ácil como ejecu a y pa a con enedo es. Pa a los a chi os es á icos, se pod ía usa nginx ambién, ya que es bas an e lige o. Pa a Wo dP ess[23], ya se ha desc i o que con enedo se pod ía usa . Además és e equie e de una base de da os MySQL[24] o Ma iaDB[25], po lo que añadi uno al despliegue es bas an e ácil: con solo esc ibi lo en un a chi o que desc ibe los se icios es su icien e (más adelan e se comen a á sob e es o)." Den o del se ido web, ambién enemos una pequeña web que mues a el consumo de ancho de banda que es á haciendo el disposi i o con el que accedes al mismo, siemp e que el disposi i o es á den o de la esidencia. Pa a su uncionamien o, equie e de una aplicación que cap u e el á ico, lo clasi ique, calcule el consumo y lo almacene en una base de da os. Es e se icio pasa á a se pa e de la aplicación web que se desc ibi á más adelan e en es e abajo." Po lo que la pa e de la web, se desc ibi á en esa sección como queda ía, pe o la aplicación que mide el uso se a a coloca en un con enedo en el se ido /pue a de enlace. Además, es a aplicación equie e de una base de da os Pos g eSQL[26] con la ex ensión imescaleDB[27], ya que almacena la in o mación con iempo y dicha ex ensión pe mi e maneja los da os de una o ma muy cómoda pa a ag upa po iempo." ‣Moni o ización de se ido es" Pa a moni o iza el es ado del se ido , usamos una aplicación llamada ne da a[28]. Es capaz de ob ene mé icas de odo ipo y mos a las en una web." Exis e una e sión pa a con enedo de es e so wa e. Aunque es e con enedo no es capaz de accede a oda la in o mación que nos pod ía in e esa de la pue a de enlace (no es capaz de lee da os de las a je as de ed)[29]. Po lo que pa a es e se ido se deja á como se encuen a ac ualmen e, sin con enedo , y se enlaza ía con æ ik (el p oxy in e so) median e con igu ación manual. Si se ins ala un nue o 69 se ido , es posible que sea más cómodo pa a és e usa la e sion del con enedo , ya que no in e esa ía ene an a in o mación más allá de los p opios con enedo es y el es ado del sis ema." Pa a esumi , se a a expone una abla con los componen es que es a án i ualizados y los que no, con lo que lle amos desc i o has a el momen o:" Nue os se icios Sob e la ma cha, han ido apa eciendo nue os se icios que son necesa ios pa a algunas pa es que se desc ibi án en es e abajo pos e io men e o en el abajo de An onio Ángel C uzado Cas illo." ‣Se ido VoIP" El p ime se icio que se a a añadi es el de la cen ali a VoIP usando el p og ama As e isk. Es e se icio es el que pe mi e a los elé onos VoIP pode se comunica con o os elé onos de la esidencia y con el se icio de ele onía de Voda one (al ex e io de la esidencia). Más de alles sob e es e se icio lo pod án encon a en la sección «Con igu ación de as e isk» del mencionado abajo de An onio Ángel." Y, ¿pod ía se i ualizado es e se icio? Como un se icio que puede i 100% sob e la ed de in e ne , pod ía se i ualizado sin p oblemas. Un de alle a ene en cuen a es que, po como es el p o ocolo SIP, es posible que as e isk equie a de muchos pue os e íme os. Aunque no debe ía se p oblema ya que se pueden con igu a qué pue os e íme os usa y se pueden “publica ” odos ellos ácilmen e. O usa una con igu ación de ed “hos ”, donde las edes del con enedo son las mismas que las En con enedo es Fue a de con enedo es æ ik (p oxy in e so - cloud na i e edge ou e ) dnsmasq (DHCP + DNS) nginx (pa a a chi os es á icos) Con olado de Uni i Wo dP ess con apache + php ne da a en la pue a de enlace Ma iaDB o MySQL Medido de uso de in e ne Pos g eSQL + imescaleDB ne da a en o os se ido es 70 del se ido , pe o disminuyendo el aislamien o. Además, pa a es e se icio, ambién equie e de una base de da os MySQL (o Ma iaDB) pa a almacena cie a con igu ación y da os sob e las llamadas." O o se icio que a a hace al a es el backend de la aplicación web. También añadi el sis ema de au en icación con la UMA, que eque i á de un se ido edis." Es e se icio es á pensado pa a i ualiza se en con enedo es. No equie e de más ex as a pa e de pone se de ás del p oxy in e so ( æ ik). También se eque i á una base de da os Pos g eSQL pa a almacena da os de la aplicación, y pa a ob ene los da os del medido de uso de ancho de banda. Y ambién necesi a á acceso a la base de da os de As e isk pa a alguno de sus se icios. Además de la mencionada base de da os edis, que se usa en el sis ema de au en icación." Un elemen o impo an e del backend es el módulo de inicio de sesión con la Uni e sidad median e SAML[44], que se desplega á po sepa ado." Mig ación de se icios exis en es a Docke En es e apa ado se desc ibi á la me odología seguida pa a pasa los se icios ac uales a imágenes de Docke , se explica á el uncionamien o que iene Docke y algunos de los p oblemas que han ocu ido en el p oceso." " 71 Compa a i a en e con enedo es y máquinas i uales[31] An es de empeza con la mig ación, se explica á como unciona Docke pa a que se en ienda an es de explica el abajo ealizado pa a mig a los." Docke es un se icio de con enedo es, que no son mas que una especie de máquinas i uales, pe o más lige os. Los con enedo es i ualizan pa e del sis ema ope a i o, en con aposición a las máquinas i uales que i ualizan ha dwa e. Todos compa en el mismo ke nel, pe o solo son capaces de e lo que el c eado de la imagen y del con enedo quie en que ean és os. Es o pe mi e i ualiza se icios y que se ejecu en en segundos, que puedan se ácilmen e escalables (aumen a o educi éplicas del mismo se icio) e independien es del sis ema ope a i o en el que se ejecu an (Linux o Windows en caso de Docke )." La base de los con enedo es son los que Docke llama “imágenes”. Es el sis ema de a chi os inicial que end á el con enedo cuando se ejecu e po p ime a ez. Con iene una base de biblio ecas y ejecu ables que pe mi en al con enedo unciona con lo que se desee. Las imágenes se mon an sob e capas, po lo que pe mi e ene a ias imágenes que compa en una misma base, y educi espacio. Po lo que un “con enedo ” no es más que una imagen en ejecución. En un con enedo se puede con igu a qué a chi os puede e y donde almacena los, además de qué edes puede e . También o ece la posibilidad de limi a el uso de CPU y de memo ia de cada uno de ellos." Con la ayuda de un o ques ado , como Kube ne es o Docke Swa m, Docke puede ele a su uncionalidad a mul iples nodos (se ido es que ejecu an con enedo es) que abajan conjun amen e pa a ejecu a odos los con enedo es, pe mi iendo escalabilidad y al a disponibilidad. Con un o ques ado , uno pod ía mon a un “cloud” como los que se encuen an en los se icios PaaS (Pla o m as a Se ice)." Pa a nues o caso, no se usa á dicha uncionalidad po que la in aes uc u a no es an g ande que la di e encia en e usa un o ques ado y no usa lo son pocas." T a ando el ema de cómo mig a lo se icios, se segui á es os pasos:" 1. Analiza los componen es que con o man el se icio (analizado en los apa ados an e io es)" 2. Busca si exis en imágenes en h ps://s o e.docke .com[33] con el componen e lis o pa a usa se y analiza si alen la pena" 72 3. P epa a el a chi o pa a gene a la imagen (Docke ile) y los a chi os ex a pa a con igu a el componen e" 4. P oba su uncionamien o" A la ho a de busca imágenes exis en es, se in en a án que odos se basen en la misma imagen, que suele se Debian S e ch, en la echa de esc i u a de la memo ia." El p ime componen e que se con e i á es el se ido nginx. En la ienda de Docke , se encuen a la imagen o icial de nginx[34] y con una e sión en Debian. Es a imagen iene con una con igu ación po de ec o del se ido , según se puede lee en la misma página [34]." Pa a nues o caso, enemos que añadi le algún que o o a chi o de con igu ación pa a pode pe sonaliza los a chi os de e o (e o es como es os códigos de es ado HTTP: 404, 401, 500…)[35]. El se ido ac ual iene sopo e pa a PHP median e la e sión php- pm que usa el p o ocolo Fas CGI, po lo que hay que añadi lo ambién a la imagen. Po lo que, se necesi a án dos a chi os de con igu ación: uno que con enga la con igu ación pa a que nginx se pueda conec a con php- pm ( as cgi- php.con ), o o con la con igu ación po de ec o de nginx con los añadidos (de aul .con )." El a chi o que gene a la imagen se queda ía de la siguien e o ma:" Desc ibiendo lo que hace el a chi o, la p ime a linea indica cuál es la base de es a nue a imagen, que es nginx. Nó ese que al inal es á :la es , que indica qué e ique a ( e sión) de la imagen se a a usa . Los dos siguien es son los que copian los a chi os de con igu ación al in e io de la imagen. El úl imo indica que en el pue o 80 ( cp) nginx a a es a escuchando pa a pe iciones." Es os a chi os se pueden encon a adjun o, den o de la ca pe a de web-nginx en eposi o ios." 73 he amien a docke -compose y como usa lo en un despliegue en local y en uno en la esidencia." docke -compose es una he amien a de Docke que pe mi e de ini componen es y sus necesidades, y elaciona odos en e ellos, usando un simple a chi o de de inición. Con sencillos comandos, puedes ejecu a a ios con enedo es, y ac ualiza los cuando haya cambios de con igu ación o una nue a imagen. Es una o ma sencilla de pode ejecu a di e sos con enedo es y ag upa los." Pa a es e abajo, se usa á dicha he amien a pa a hace los despliegues an o de p uebas como el en o no eal." Pa a pe mi i dis ingui en e di e sos en o nos donde se hace el despliegue, docke -compose nos pe mi e usa a iables de en o no pa a da alo a pa es del a chi o de de inición, con lo que pa a cie os alo es de los componen es que dependen de donde se despliegue se de ini án con esas a iables. De es a o ma, no hay que modi ica los a chi os docke -compose.yaml (los de despliegue) pa a adap a los a cada en o no. Se usa á un a chi o plan illa, como el de la imagen an e io , que con enga odas las a iables de en o no sin ellena pa a su copia y uso en cada en o no." 80 æ ik Bases de da os Web As e isk Se icios pa a la pue a de enlace æ ik Ma iaDB" Redis" pos g eSQL Nginx" php- pm" Wo dp ess" Saml" Backend As e isk Speedy" Componen e backend G á icos de dependencias en e g upos de se icios (a iba) y los se icios den o de cada g upo (abajo) Pa a el despliegue, se di idi án 5 g upos los dis in os componen es de la siguien e o ma:" •Bases de da os:" •Ma iaDB" •Redis" •pos g eSQL" •T æ ik" •Web •nginx (pa a a chi os es á icos y el on end de la aplicación web)" •php- pm (pa a ejecu a sc ip s en PHP en nginx)" •wo dp ess (apache + PHP pa a usa lo en Wo dp ess)" •saml (modulo de au en icación SAML con la Uni e sidad)" •Backend aplicación web" •as e isk •Se icios pa a la pue a de enlace •speedy (medido de ancho de banda po disposi i o)" •Componen e ex e no del backend de la aplicación web" Cada g upo de se icios co esponde un un iche o docke -compose.yaml pa a el despliegue de los mismos." " ‣T æ ik" El a chi o de despliegue pa a æ ik es cie amen e sencillo, pe o c ea la base pa a que los componen es que quie an publica un se icio a a és del p oxy in e so, puedan hace lo." Hablamos de una ed in e na en e con enedo es que conec a dichos se icios con æ ik. De es a o ma, dichos se icios solo son accesibles di ec amen e (sin ene que pasa po æ ik) desde los con enedo es conec ados a dicha ed (llamada ae ik_ne )." 81 El con enedo iene un a chi o de con igu ación (mon ado como olumen) que e pe mi e p epa a lo que la aplicación denomina “en y poin s” y el au o- descub imien o de los se icios. Con en y poin s nos e e imos a qué pue os a a escucha el p oxy in e so pa a o ece sus se icios. En es e caso, usa emos el es ánda pue o 80/ cp pa a HTTP, 443/ cp pa a HTTPS y el pue o al e na i o 8080/ cp pa a el panel de mé icas de æ ik (de inido en la sección po s en la cap u a de código). En cambio, el au o-descub imien o pe mi e econ igu a el p oxy in e so cuando apa ece un nue o con enedo con la con igu ación co ec a y descon igu a lo cuando se pa a." Pa a su uso en Docke , hay que e ique a los con enedo es (en web se explica á cuáles son) con cie a con igu ación que incluye la egla que debe aplica se a una pe ición pa a edi igi a ese se icio, la ed in e na (si el con enedo iene más de una) y una pa a ac i a dicho con enedo pa a que el p oxy in e so edi ija las pe iciones - en la con igu ación es á pues a pa a que no haga eso po de ec o, y pe mi e il a con enedo es con se icios web de los que no. Y pa a que odo es o uncione, necesi amos pasa el socke de Docke al con enedo de æ ik, de ahí que en la sección de olúmenes se mon e el socke ." ‣Bases de da os" Pa a el g upo de con enedo es de las base de da os, se i á explicando po cada base de da os, y mos ando la pa e co espondien e del a chi o docke - compose.yaml pa a educi las medidas de la imagen." La base de da os Ma iaDB se despliega con la con igu ación de la imagen supe io . " Pa a empeza , la base de da os se inicia con unos a gumen os (colocados en commands) pa a que use UTF8 como codi icación de ex o po de ec o, en 82 conc e o la codi icación u 8mb4, que iene sopo e comple o de la codi icación, a di e encia de o os modos que en MySQL (y Ma iaDB) no sopo an odo el es ánda ." Pa a pe sis i los da os de la base de da os, usamos un olumen, en conc e o lo que se denomina bind moun ya que enlaza algo exis en e den o del con enedo . La u a de los da os se encuen a den o de una a iable de en o no que se puede encon a en el a chi o comen ado an e io men e." También se mon a la ca pe a sql que se encuen a en el mismo luga del a chi o de despliegue. Los iche os SQL de esa ca pe a se ejecu a án en el se ido cuando se es én c eando los a chi os de la base de da os (cuando es la p ime a ejecución po ejemplo). Pe mi e da un alo inicial a la base de da os." Po úl imo, el usua io po de ec o es oo y la con aseña se de ine den o de o a a iable de en o no." La siguien e base de da os es la de pos g eSQL con la ex ensión de imescaleDB." La con igu ación es pa ecida a la de Ma iaDB: una u a donde pe sis i los da os, una ca pe a pa a que al c ea las es uc u as de almacenamien o de la BD se ejecu en di e sos SQL y la con aseña del usua io po de ec o. En es e caso, el usua io po de ec o es pos g es." Po úl imo enemos edis. Al se una base de da os an sencilla, no hace al a con aseña. El olumen mon ado es de uso empo al ya que edis po de ec o no pe sis e el con enido de la base de da os. 83 Si hicie a al a, en [40] e explican como ac i a lo." La ed que c ea es e a chi o de despliegue, pa a su uso ue a de él, es da abases_ne . Se usa á pa a conec a o os con enedo es a la ed de bases de da os, al y como e emos aho a en los p óximos pá a os." ‣Se icios web" Aho a desc ibi emos la con igu ación de despliegue de la pa e de la web. Al igual que en la an e io pa e, se i á di idiendo en pa es po cada uno de los con enedo es." El se ido nginx, pa a a chi os es á icos, se de ine al y como apa ece en la imagen supe io ." Lo p ime o son los olúmenes. El p ime o es la u a, ue a del con enedo , donde se encon a án los a chi os es á icos que se se i án en nginx, cuyo alo se de ine median e una a iable de en o no. El segundo olumen es pa a una cache que iene con igu ado nginx. En es e caso usamos un olumen que ges iona en e amen e Docke ya que no es necesa io accede a esos da os ni hace copias de segu idad. El nomb e ncache es el nomb e que iene el olumen." 84 En la sección de edes (ne wo ks) de inimos a qué edes iene acceso el con enedo , que en es e caso es la ed que conec a con æ ik y una ed in e na de es e despliegue. El úl imo si e pa a conec a se con php- pm." La sección depends_on de ine que es e con enedo debe ejecu a se después de lo que haya den o (en es e caso, php- pm)." La sección labels de ine las e ique as del con enedo (siemp e que no se despliegue en Docke Swa m o Kube ne es). Aquí de inimos la con igu ación que usa á æ ik pa a con igu a lo que ellos denominan el backend y el on end. El on end es la con igu ación que pe mi e de ini un se icio y el backend son los se ido es disponibles que si en ese con enido o se icio. De es a o ma, puede habe más de un se ido pa a el mismo se icio que pe mi e hace dis ibución de ca ga y es a mejo p o egido an e allos. En lo que se puede obse a de la imagen, la p ime a e ique a dice a æ ik que ese con enedo se puede usa pa a con igu a un nue o backend y/o on end. La segunda le da un nomb e al backend (pa a pode lo iden i ica ). La e ce a es la egla que pe mi i á iden i ica qué pe iciones an di ec os a es e se icio. Hos :${DOMAIN} indica que odas las pe iciones cuyo hos (el dominio al que se accede) sea el de la a iable de en o no DOMAIN en onces i á a ese se icio. El o den de aplicación de eglas, po de ec o, es del más la go al más pequeño, y es e al se una egla pequeña se comp oba á en las ul imas posiciones (meno p io idad). La úl ima e ique a si e pa a deci cuál ed es la que se conec a con æ ik, pa a pode acaba de con igu a el backend." Pa a php- pm, no se equie e de mucha con igu ación pa a hace lo unciona ." Mon amos la misma u a de a chi os que en nginx, po si se desea ejecu a sc ip s en PHP, de es a o ma coinciden las u as en e nginx y php." Las edes que se conec a son la ed in e na (pa a conec a se con nginx) y el de base de da os, po si se desea conec a con alguna de las bases de da os." 85 Pa a wo dp ess, usamos la siguien e con igu ación." P ime o, se mon a la ca pe a donde se encuen en los a chi os de Wo dP ess. Nó ese que la u a den o del con enedo acaba en no icias- a j. La u a es á mal esc i a ( a j en luga de aj que iene de Residencia Albe o Jiménez F aud) ya que cuando se con igu ó inicialmen e, ni a An onio ni a mi nos dimos cuen a del allo y aho a cambia la u a de un Wo dP ess uncionando es muy complicado." Las edes a las que se conec a son la de las base de da os, pa a conec a se con Ma iaDB, y la de æ ik, pa a pode se publica ." Sob e las e ique as, muchas ya se conocen, aunque se an a explica los mas di e en es. P ime o, la egla es más la ga y con iene aho a un Pa hP e ix. En e ambos, se sepa a median e un pun o y coma (;) que signi ica Y. Po an o, es a egla al comple o es “ odas las pe iciones al dominio ${DOMAIN} y cuya u a empiecen po /no icias- a j”." Las es siguien es e ique as, después de la egla, son pa a con igu a unos a chi os de e o . Así, cuando sal a un e o 404 (no encon ado), un e o 500 (e o in e no) o 502 (cuando el con enedo es á pa ado - no apa ece en la cap u a) se se i á lo que esul e de hace la pe ición al nginx en la u a /e o es/404.h ml, /e o es/500.h ml y / e o es/502.h ml espec i amen e." Aho a es el u no del módulo de au en icación SAML." 86 En es e con enedo , el olumen es pa a el ce i icado necesa io pa a el co ec o uncionamien o de la au en icación SAML. Se gene an con un simple comando en la he amien a po e minal de OpenSSL, po ejemplo, y con eso ya se ía su icien e. El ce i icado debe llama se ce .pem, y la cla e p i ada, key.key." Las edes uel en a se la de base de da os y la de æ ik. Como la au en icación usa edis pa a almacena empo almen e unos da os, debe pode se conec a a él." Po úl imo, las e ique as odas son conocidas, aunque se comen a á la e ique a de la egla. En es e caso la pa e de Pa hP e ix iene dos alo es sepa ados po una coma (,) que iene a deci O. Es a egla signi ica “las pe iciones al dominio $ {DOMAIN} que engan como p e ijo de u a /mellon o /albe ginia”." 87 El backend de la aplicación web (que podéis e más de alles en «Desa ollo del backend de la apliación "Panel del esiden e”» en el abajo de An onio Ángel) necesi a conec a se a odas las base de da os desplegadas (pos g eSQL, Ma iaDB y edis), po lo que se le ha asociado a la ed de base de da os. Además, como se debe publica la API den o de la web, se iene que añadi las e ique as co espondien es (labels) pa a que æ ik lo de ec e y con igu e un camino pa a pode publica dicha API." Po comple i ud, comen a é ambién la pa e inal del a chi o docke - ile.yaml. En él podemos e como se de inen las dis in as edes, donde la de æ ik y la de las bases de da os se ma can como ex e nas ya que no los maneja es e a a és de es e g upo." Los olumenes que maneja Docke se ienen que de ini ambién en el a chi o." ‣As e isk" La cen ali a de ele onía po IP (VoIP) as e isk se desplega á como su p opio g upo de se icios. Un equisi o indispensable pa a el uncionamien o co ec o de as e isk es que debe usa el modo de ed hos (opción ne wo k_mode), en el que ealmen e es deshabi a el aislamien o de edes y el con enedo iene acceso a las edes del 88 se ido di ec amen e. El con enedo ejecu a po de ec o una shell de comandos, po lo que pa a ejecu a as e isk enemos que deci le exac amen e que debe ejecu a . Eso se consigue en la opción cmd. El alo es una lis a de a gumen os que el con enedo in e p e a á y ejecu a á. Con la opción “- ” de as e isk conseguimos que uncione sin que el con enedo se de enga, ya que el se ido se ejecu a en lo que se conoce como “ o eg ound” (el p oceso que ejecu as es el se ido , en luga de c ea o o p oceso que se ejecu a á de ondo que ealiza á esa a ea). En caso de no pone lo, as e isk c ea un segundo p oceso donde ejecu a á el se ido de ondo, y el que se ha c eado po mo i o de ejecu a el comando se cie a. Al ce a ese p oceso, que en Docke es el p incipal, el con enedo se pa a ya que solo iene en cuen a dicho p oceso como comp obación del es ado, e igno a p ocesos secunda ios. Po úl imo, queda con igu ación pa a que la cen ali a se pueda conec a con la base de da os Ma iaDB, necesa ia pa a almacena cie a in o mación." Más de alles sob e la con igu ación de la cen ali a la podéis encon a en «Con igu ación de as e isk» del abajo de An onio Ángel." ‣Se icios en la pue a de enlace" Pa a e mina , habla emos de los con enedo es que se desplega án en el se ido / pue a de enlace, que es dis in o al es o de con enedo es. En es e, como se comen ó, iene el medido de á ico po disposi i o (speedy) y, como se puede obse a en la imagen, ambién iene un ozo del backend de la aplicación web." 89 [49] h ps://code. isuals udio.com/ - IDE de Mic oso gené ico, al que se le pueden inse a complemen os pa a desa ollo web" [50] h ps://sass-lang.com - CSS wi h supe powe s [51] h ps://unix.s ackexchange.com/a/198591 - Wha is bind moun ? ( espues a en Unix & Linux S ack Exchange)" [52] h p://man7.o g/linux/man-pages/man8/moun .8.h ml - Manual de moun en Linux, incluye sección pa a bind moun s llamada “Bind moun ope a ion”" [53] h ps://bind s.o g - Implemen ación de bind moun pa a sis emas o os ope a i os median e FUSE (ú il pa a macOS o F eeBSD)" [54] h ps://gi -scm.com/docs/gi submodules - Desc ipción y documen ación de los submódulos en el sis ema de con ol de e siones gi [55] h ps://gi hub.com/OAI/OpenAPI-Speci ica ion/blob/mas e / e sions/2.0.md - Especi icación de OpenAPI 2.0/swagge " [56] h p://ge boo s ap.com/docs/4.1/componen s/bu ons/" [57] h p://ge boo s ap.com/docs/4.1/componen s/modal/" [58] h p://ge boo s ap.com/docs/4.1/componen s/collapse/ [59] h ps://help.ubn .com/hc/en-us/a icles/115002806907-UniFi-High-Densi y- WLAN-Scena io-Guide (6 de agos o 2018) [60] Mell, P., & G ance, T. (2011). The NIST de ini ion o cloud compu ing." 96