Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Aplicaciones de Internet 1 | P á g i n a UNIVERSIDAD DE GUANAJUATO DIVISIÓN DE INGENIERÍAS CAMPUS IRAPUATO-SALAMANCA LIC. EN ING. EN SISTEMAS COMPUTACIONALES APLICACIONES DE INTERNET PROFESOR: ING. YAIR ALEJANDRO ANDRADE AMBRIZ NO. DE PRÁCTICA: 02 NOMBRE DE LA PRÁCTICA: CONFIGURACIÓN DE SERVICIOS Y CRUD EN SLACKWARE ESTUDIANTE: MANRÍQUEZ COBIÁN ROGELIO NUA: 345988 FECHA DE ENTREGA: 04 DE ABRIL DEL 2022 Aplicaciones de Internet 2 | P á g i n a DESARROLLO Para poder realizar cualquier instalación de paquetes en nuestra máquina de slackware tenemos que ingresar al siguiente directorio con “cd”, además de abrir el archivo mirrors, para quitar un comentario que nos permita acceder a los paquetes alojados de una región cercana a nuestro país. Para realizar una prueba de que funciona, haremos un update a nuestra máquina virtual: Vemos que se puede actualizar los paquetes de nuestra máquina de slackware, utilizando el comando de slackpkg. Instalar Apache2 Con ayuda de nuestra herramienta de slackpkg instalaremos Apache2 que tiene por nombre httpd, vemos que se instaló de manera correcta: Aplicaciones de Internet 3 | P á g i n a Ahora, iremos a la siguiente ruta con ayuda del siguiente comando: nano /etc/httpd/httpd.conf En este archivo, veremos diferentes configuraciones principales que tiene el servidor de Apache, nosotros agregaremos dos líneas de las cuales nos servirán para que nuestro servidor funcione de manera óptima. Luego de esto, haremos la configuración de permisos para que podamos editar algún archivo de configuración siendo root, sin embargo, para otros usuarios solo tendrán permisos de lectura, después, iniciamos nuestro servidor con el comando mostrado. Para observar que funciona todo, haremos algunos cambios al siguiente archivo html y modificaremos un poco su contenido: Para ver que el servidor apache funciona correctamente, ingresaremos a nuestro localhost desde un navegador y veremos que el archivo html que modificamos, se verá en el navegador. Aplicaciones de Internet 4 | P á g i n a Instalación PHP Para instalar el paquete, usaremos nuevamente slackpkg install php y luego veremos esta ventana emergente para elegir el paquete de instalación. Luego, para que Apache funcione junto con PHP debemos ingresar a la siguiente ruta /etc/httpd/httpd.conf, aquí agregaremos el siguiente módulo de index.php, quedando de la siguiente manera: Aplicaciones de Internet 5 | P á g i n a Dentro del mismo archivo, iremos hasta el apartado de AddType y agregaremos la última línea que aparece en la imagen, para poder utilizar las distintas versiones de php. Y también, en el archivo, iremos al final de la hoja y desenmarcamos la línea de contiene el Include, para para utilizar los módulos que contiene php para el correcto funcionamiento. Ahora ingresaremos al archivo de mod_php.conf que está dentro de nuestro directorio de httpd, y escribiremos las siguientes líneas en los apartados que vemos en la imagen LoadModule php7_module lib/httpd/modules/libphp7.so SetHandler application/x-httpd-php Ahora, ingresaremos a la siguiente ruta que se muestra en la imagen: Lo que haremos será crear el archivo index.php y aquí agregaremos la siguiente línea de código: Aplicaciones de Internet 6 | P á g i n a Para verificar que php trabaja junto con apache de manera correcta, volveremos a ingresar a nuestro localhost en algún navegador para ver que la info de php se ve en el navegador Aplicaciones de Internet 7 | P á g i n a Instalación de MySQL Ahora, necesitamos instalar una base de datos para nuestro entorno en slackware, lograremos la instalación con el siguiente comando mostrado: Otorgaremos, permisos al usuario en mysql y ejecutaremos el Daemon para MariaDB: Y lo iniciamos con el siguiente comando el Daemon de MariaDB: Para tener una instalación segura en mysql, ingresaremos el siguiente comando y seguiremos los pasos a seguir en la instalación: Aplicaciones de Internet 8 | P á g i n a Una vez ya realizada la instalación ingresaremos a nuestro mysql con este comando, y nos pedirá la contraseña root para acceder, después de ello, veremos que sí ingresamos a mysql de manera correcta y para ver que hay bases de datos de prueba, utilizaremos el comando show tables; Aplicaciones de Internet 9 | P á g i n a Instalación UFW Primeramente, descargaremos el paquete del ufw, desde el siguiente link de descarga: ufw-0.30-x86_64-1dj.txz Slackware Current Download (pkgs.org) Luego, usaremos el siguiente comando para instalar nuestro paquete: Después de ello, haremos una prueba de uso para el status de ufw como se muestra: Vemos que está inactivo, lo que haremos será agregar una regla que usaremos después, y luego habilitaremos el servicio para después observar que la configuración quedó de manera correcta: https://slackware.pkgs.org/current/slackel-x86_64/ufw-0.30-x86_64-1dj.txz.html Aplicaciones de Internet 10 | P á g i n a Instalación de SSH Para realizar una conexión SSH lo que debemos hacer es que nuestra máquina servidor que es el Slackware, deberemos cambiar la configuración de la tarjeta de red, cambiándola a “Adaptador de puente” Después de cambiar esto, deberemos de instalar el paquete de openssh-server para nuestro slackware, después de su instalación, debemos observar cual es nuestra IP, con el comando ifconfig una vez identificada nuestra IP lo que se hará a continuación será abrir una terminal en nuestra computadora principal de uso y escribir el siguiente comando que se muestra en la imagen: La estructura del comando está conformada por: • ssh – utilizar el servicio ssh • -p – indicamos el número de puerto para la conexión • rogermx@IP – indicamos a que usuario nos queremos conectar a la dirección IP de la máquina server. Vemos que la conexión fue satisfactoria y vemos ahora que en nuestro prompt ha cambiado y tenemos control total sobre la máquina server. Aplicaciones de Internet 11 | P á g i n a Ahora, veremos algunos ejemplos para ver que tenemos acceso a las carpetas asginadas: Luego, crearemos un archivo de c++ para ver observar si se crea luego en nuestra máquina server: Una vez creado, vamos a nuestra máquina server y accedemos a la ruta donde fue creado el archivo y vemos que realmente se creó: Nosotros podemos utilizar nuestra máquina server de manera remota únicamente a manera de consola teniendo los permisos asignados que nos permitió el usuario root. Si queremos terminar nuestra sesión en nuestra computadora principal con la del servidor, únicamente debemos escribir el siguiente comando, y veremos que la conexión a la dirección IP se ha cerrado. Aplicaciones de Internet 12 | P á g i n a Pruebas con NMAP En nuestra máquina cliente deberemos instalar la herramienta de nmap para poder hacer un análisis de puertos a nuestra máquina cliente de slackware El primer ejemplo, será un escaneo de puertos de manera rápida con el siguiente comando: Vemos que tenemos habilitados los puertos 22 y 80 de nuestro servidor en la máquina. Ahora con el mismo comando, agregaremos los siguientes parámetros de los cuales haremos un análisis más profundo a la dirección IP de nuestra máquina; el parámetro - O indica el sistema general de nuestra máquina server. Ahora, agregaremos el parámetro -v para que nos despliegue el número de versión de nuestro sistema operativo:Aplicaciones de Internet 13 | P á g i n a Luego añadimos el parámetro -sV para determinar la información de versión y servicio de los puertos que tiene habilitados nuestra máquina server. Aplicaciones de Internet 14 | P á g i n a Por último, haremos otra prueba dónde agregamos el parámetro -A donde nos habilita más opciones de detección de SO, escaneo de scripts y rastreo de rutas: Aplicaciones de Internet 15 | P á g i n a CRUD A continuación, veremos el uso de nuestro CRUD con las operaciones: CREATE – READ – UPDATE – DELETE: Agregaremos un nuevo usuario en nuestro formulario y cuando demos click en el botón Enviar este se insertará de manera correcta a nuestra fila en la parte de “Contenido de BD” con anterioridad ya hemos agregado a varios usuarios y los mostramos. Ahora, editaremos el usuario con ID 2, mostraremos un formulario previamente rellenado con la información para luego editar el nombre.Lo cambiaremos por el nombre de Raul Silva Ramirez y vemos que volvemos al index.php con el nombre actualizado. Al momento de dar click en el botón Modificar veremos un mensaje rápido en que si se actualizó el dato en la base de datos. Aplicaciones de Internet 16 | P á g i n a En sección de nuestro “Contenido de la BD” tenemos el botón eliminar que hará dicha función y vemos que al dar click se elimina completamente el usuario y veremos un mensaje en el formulario. Por último, se estará compartiendo el código cómo imágenes para su revisión: Aplicaciones de Internet 17 | P á g i n a editar.php <?php if(isset($_GET["id"]) && isset($_GET["nombre"])) { $id = $_GET["id"]; $nombre = $_GET["nombre"]; ?> <!doctype html> <html lang="en"> <head> <!-- Required meta tags --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <!-- Bootstrap CSS --> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrit> <title>CRUD</title> <!--CREATE, READ, UPDATE, DELETE--> </head> <body> <div class="container"> <div class="row"> <div class="col-lg-12"> <h1>Editar valor a BD</h1> <form id="formulario2" method="POST"> <div class="form-group"> <label for="id">ID</label> <input type="text" name="id" id="id" value="<?php echo $id ?>" class="form-control" placeholder="ID" readonly> <br> <label for="nombre">Nombre</label> <input type="text" name="nombre" id="nombre" value="<?php echo $nombre ?>" class="form-control" placeholder="Nombre" required> <br> <button class="btn btn-primary">Modificar</button> <a href="index.php" class="btn btn-danger">Cancelar</a> <p id="respuesta2"></p> </div> </form> Aplicaciones de Internet 18 | P á g i n a </div> </div> </div> <button style="display:none;" id="actualizado"></button> <!-- Optional JavaScript --> <!-- jQuery first, then Popper.js, then Bootstrap JS --> <script src="https://code.jquery.com/jquery-3.3.1.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384- UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384- JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script> <script src="index.js"></script> </body> </html> <?php }else{ header("Location: index.php"); } ?> Aplicaciones de Internet 19 | P á g i n a index.js $("#formulario2").submit(function(event){ event.preventDefault(); $.ajax({ type: "POST", url: "actualizar.php", data: $("#formulario2").serialize(), success: function(data) { $(document).ready(function (){ $("#respuesta2").show(30000).html(data).delay(20000).fadeOut( 10000); window.location.href = "index.php"; }); } }); }); Aplicaciones de Internet 20 | P á g i n a actualizar.php <?php if(isset($_POST["nombre"]) && isset($_POST["id"])) { $nombre = $_POST["nombre"]; $id = $_POST["id"]; $dbname = "prueba"; $user = "root"; $password ="root"; try{ $dsn = "mysql:host=localhost;dbname=$dbname"; $dbh = new PDO($dsn, $user, $password); }catch(PDOException $e) { echo $e->getMessage(); } $stmt = $dbh->prepare("UPDATE clientes SET nombre=? WHERE clientes_id=?"); $stmt->bindParam(1, $nombre); $stmt->bindParam(2, $id); if ($stmt->execute()) { echo " actualizado correctamente a BD"; }else{ echo "Error al actualizar a la BD"; } $dbh = null; }else{ header("Location: index.php"); }
Compartir