| CFGS DESARROLLO DE APLICACIONES WEB |
|---|
![]() |
| DESPLIEGUE DE APLCIACIONES WEB |
| CYBERSEGURIDAD |
| DAWES Tema 2. INSTALACIÓN, CONFIGURACIÓN Y DOCUMENTACIÓN DE ENTORNO DE DESARROLLO Y DEL ENTORNO DE EXPLOTACIÓN |
Este documento es una guía detallada del proceso de instalación y configuración de un servidor de aplicaciones en Ubuntu Server utilizando Apache, con soporte PHP y MySQL
Nº de RAM = 2048 MB Nº de Procesadores = 2 Red = adaptador puente
Cuando nos pregunte como se llamara nuestra cuenta, le decimos que miadmin con contraseña paso
Marcamos la casilla de instalar ssh
Gestion de particiones

sudo apt update
sudo apt upgrade
Nombre de la máquina: XXX-Limpia
Memoria RAM: 2G
Particiones: 150G(/) y resto (/var)
Configuración de red interface: xxxx
Dirección IP :10.199.9.114/22
GW: 10.199.8.1/22
DNS: 10.151.123.21
Debemos marcar la casilla de instalar ssh en la instalación por defecto, pero sino lo hemos hecho
sudo apt install openssh-server
Para comprobar si lo tenemos o no
sudo systemctl status ssh
Comprobamos nuestro nombre
uname -a
Si deseamos cambiarlo
sudo hostnamectl set-hostname <NuevoNombre>
sudo nano /etc/hosts
systemctl reboot
Comprobamos nuestra IP, nuestra puerta de enlace y los DNS respectivamente.
ip a
ip r
resolvectl
En mi ejemplo, mi IP seria 10.199.9.114
Los otros datos se ven claramente con sus respectivos comandos
Copiamos el fichero de configuración del interface de red /etc/netplan/50-xxx.yaml y hacemos un backup
cp 50-xxx.yaml 50-xxx.yaml.backup
Le cambiamos el nombre al original
mv 50-xxx.yaml enp0s3.yaml
Editar el fichero de configuración del interface de red /etc/netplan/enp0s3.yaml,
# This is the network config written by 'subiquity'
network:
ethernets:
enp0s3:
addresses:
- 10.199.9.114/22 (la IP estatica que quieras darle)
gateway4: 10.199.8.1/22
nameservers:
addresses:
- 10.151.123.21 (Tus DNS)
- 10.151.126.21
search: [educa.jcyl.es] (tu dominio)
version: 2
Debemos aplicar los cambios
sudo netplan apply
Establecer fecha, hora y zona horaria Para comprobar nuestra fecha y hora
date
Si necesitamos cambiarlo
timedatectl set-timezone Europe/Madrid
Root viene por defecto al instalar la máquina
- root(inicio)
- miadmin/paso
- miadmin2/paso
Creacion de miadmin2:
sudo adduser miadmin2
paso
Ahora lo metemos en el grupo de los administradores
sudo usermod -aG miadmin2
Si queremos meterlo en otro grupos, los indicamos despues de -aG
sudo usermod -aG adm miadmin2
Todos los grupos para que miadmin2 tenga los mismo privilegios que miadmin
adm,cdrom,sudo,dip,plugdev,lxd
Comprobamos que lo hemos hecho bien
cat /etc/passwd | grep miadmin2
Comprobamos que lo hemos hecho bien, en el grupo sudo
cat /etc/group | grep miadmin2
Usamos F2 para cambiar a miadmin2 y comprobar que todo este bien o por comando:
su miadmin2
Y para salir de la sesion
exit
Para borrar un usuario
sudo deluser
Comprobacion del estado del cortafuegos
sudo ufw status
Si es necesario, lo activamos
sudo ufw enable
Si por lo que sea lo queremos desactivar
sudo ufw disable
Ahora abrimos los puertos para permitir ssh
sudo ufw allow ssh
Como hemos abierto el puerto v6, que no nos interesa, sacamos su numero de protocolo:
sudo ufw status numbered
Y lo eliminamos
sudo ufw delete
lsblk -fm
lsblk -fn
lsblk -a
df -h
fdisk -l
sudo apt update
sudo apt upgrade
Instalamos apache https
sudo apt install apache2
Y abrimos es puerto para el servicio
sudo ufw allow 80
En nuestro navegador de confianza, buscamos mediante nuestra IP
http://IPSERVER
Comandos para iniciar/parar y ver el estado
sudo systemctl start/stop/status apache2
En el directorio /var/www/html para ver el dueño
ls -l
Y creamos el usuario operador web
Sudo useradd –M –d /var/www/html -N –g www-data –s /bin/bash operadorweb
Comprobacion (cambiar passwd por group si queremos comprobar el grupo)
cat /etc/passwd | grep operadorweb
Ahora ponemos la contraseña
sudo passwd operadorweb
Una vez hecho esto, le damos permisos de dueño
sudo chown –R operadorweb:www-data /var/www/html
Y tambien cambiamos los permisos
sudo chmod -R 775 /var/www/html
En /etc/apache2/site-available/000-default.conf añadimos la siguiente linea
ErrorLog /var/www/html/error/error.log
Instalación de PHP Update y upgrade Despues de la instalacion de apache, ejecutamos el comando
sudo apt install software-properties-common -y
sudo add-apt-repository ppa:ondrej/php -y
ls /etc/apt/sources.list.d/ | grep ondrej
Y después hacemos update para actualizar los repositorios
Para instalar PHP
sudo apt install libapache2-mod-php8.3 php8.3-fpm -y
Y habilitmaos el modulo
sudo a2enmod proxy_fcgi
Desabilitamos los siguientes modulos
sudo a2dismod mpm_prefork
sudo a2dismod php8.3
sudo a2dismod mpm_prefork
Volvemos a habilitar
sudo a2enmod mpm_event proxy_fcgi
sudo a2enconf php8.3-fpm
Y reiniciamos
sudo systemctl restart apache2
Creamos un archivo info.php en /var/www/html con Hacemos la comprobacion poniendo en el navegador nuestra dirección de la página/info.php
Página de descarga
https://mobaxterm.mobatek.net/download-home-edition.html
Para conectarnos a nuestro servidor, en la seccion de "Session"
|
Tanto para la conexion SSH como para la SFTP, solo debemos introducir la IP del servidor y después el nombre de usuario (a recordar: operadorweb)
La página de descarga de nuestro NetBeans, en la version que usamos.
https://netbeans.apache.org/front/main/download/nb22/
Es importante tener la carpeta creada con un archivo (aunque esté vacío) en nuestro servidor. Importante que el nombre de la carpeta sea el correcto. También es aconsejable tener la carpeta ya creada en local, sin necesidad de archivos dentro y con el nombre correspondiente. Cuando creamos un nuevo proyecto elegimos
PHP application from Remote Server
Lo único que cambiamos en la primera pestaña es el nombre del proyecto, escribiendo el adecuado (el mismo que el de las carpetas)
En la siguiente pestaña:
|
En "manage":
|
Si se han realizado los pasos correctamente, ya deberiamos de haber creado nuestro primer proyecto.
Álvaro García González
Curso: 2025/2026
2º Curso CFGS Desarrollo de Aplicaciones Web