Práctica 6: Creación de recursos en Azure#
Equipo AMJ-GAB-TPKL
- Alanis Martínez Jennifer
- González Arreguín Bryan
- Torres Partida Karen Larissa
Nombre de Dominio y Dirección IP Pública#
Nombre de Dominio: scrapykoko.ml
IP pública: 20.213.61.249
Recursos Azure#
Máquina Virtual#
Después de obtenida la cuenta de @comunidad.unam.mx se creó una cuenta Azure para estudiantes, siguiendo las instrucciones dada Aquí.
Primero se generó una Máquina Virtual de Debian 11, siguiendo los pasos de Aquí, dando como resultado la siguiente máquina:
![]() |
---|
Máquina Virtual 1 |
![]() |
---|
Máquina Virtual 2 |
![]() |
---|
Máquina Virtual 3 |
Dentro de esta guía se tenía que verificar que en las reglas de puerto de entrada se encontraran las de SSH, HTTP y HTTPS, esto se puede ver aquí:
![]() |
---|
Reglas de puerto de entrada |
Zona DNS#
Para generar esta Zona DNS, primero tuvimos que hacer el registro de un dominio este para poder ponerlo como nombre de la instancia, en Azure se siguieron todos los pasos espeficados aquí, dando la siguiente instancia:
![]() |
---|
Zona DNS |
También se crearon los siguientes registros:
-
Un registro A principal para el dominio el cual contiene la direccion ip publica de la maquina virtual.
-
Un registro CNAME wildcard el cual tiene como valor el nombre de dominio hecho en FreeNorm.
Dando así los marcados en rojo:
![]() |
---|
Registros |
Registro Dominio FreeNom#
Primeramente se accedió a esta página, luego se le dio a la pestaña services y a la opción Register a New Domain, eso nos llevó a la siguiente página:
![]() |
---|
FreeNom |
Después donde dice Find a new Free Domain, nosotros ingresamos a scrapykoko.ml, comprobamos que estuviera disponible, y lo obtuvimos por 12 meses, siguiendo los pasos de aquí, lo cual nos llevo a tener ya el siguiente dominio, en nuestra página de mis dominios:
![]() |
---|
Dominios |
Luego de haber generado la Zona DNS, esta la vinculamos con el nombre de dominio para ello usamos los valores ubicados en la siguiente imagen:
Valores usados en rojo |
Estos valores los insertamos dentro de nuestro dominio en FreeNom, ingresando primero a la pestaña de Manage Domain, luego dentro de esta página le dimos a Herramientas de Gestión a la opción de Servidores de nombres, ya dentro de ella selecionando Usar nameservers personalizados (introducir abajo), ingresamos los valores marcados en rojo anteriormente dando como resultado lo siguiente:
![]() |
---|
Asociando Zona DNS a scrapykoko.ml |
También se deja la prueba de WHOIS hecha en la página de FreeNom:
![]() |
---|
WHOIS a scrapykoko.ml |
Además se hicieron Búsquedas DNS, para el registro SOA, NS, A y CNAME estas se encuentran aquí.
Configuración de la máquina virtual Debian#
Se siguieron la instrucciones de la siguiente página.
La primera vez para ingresar a la Máquina Virtual se usó el siguiente comando:
ssh redes@20.213.61.249
Y como era la primera vez, tuvimos que agregar el fingerprint de la llave SSH del equipo remoto, a nuestra computadora, dándole yes a la pregunta que nos salió al dar ese comando.
Después de esto ingresamos con la contraseña definida para el usuario redes, que se configuró en la parte de la creación de la Máquina Virtual.
Luego se configuró el sudo, revisando lo siguientes comandos, para revisar la lista de opciones del usuario redes que aplican para que él pueda elevar a privilegios utilizando sudo:
redes@scrapykoko:~$ sudo -k
redes@scrapykoko:~$ sudo -l
Matching Defaults entries for redes on scrapykoko:
env_reset, mail_badpass,
secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin
User redes may run the following commands on scrapykoko:
(ALL : ALL) ALL
(ALL) NOPASSWD: ALL
Y se verificó que al usuario no le pidiera contraseña al elevar privilegios:
redes@scrapykoko:~$ sudo -i
root@scrapykoko:~#
Nosotros no establecimos el contenido al archivo /etc/sudoers.d/waagent pues no existía en nuestra máquina:
root@scrapykoko:~# cat /etc/sudoers.d/waagent
cat: /etc/sudoers.d/waagent: No such file or directory
Luego se configuró una llave SSH para autenticarse en la máquina virtual, como decían las instrucciones, se adjunta la llave pública.
Después se configuró el nombre de host, con el siguiente comando:
hostnamectl sethostname scrapykoko.ml
Dando como resultado a:
root@scrapykoko:~# hostname -f
scrapykoko.ml
Se le agregó la última línea al archivo /etc/hosts para que quedara así:
root@scrapykoko:~# cat /etc/hosts
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
20.213.61.249 scrapykoko.ml
root@scrapykoko:~#
Después se configuró la zona horaria para que estuviera en America/Mexico_City con el siguiente comando:
timedatectl set-timezone America/Mexico_City
Dando como resultado a:
root@scrapykoko:~# date
Tue 07 Jun 2022 12:39:21 PM CDT
root@scrapykoko:~# timedatectl
Local time: Tue 2022-06-07 12:39:28 CDT
Universal time: Tue 2022-06-07 17:39:28 UTC
RTC time: Tue 2022-06-07 17:39:28
Time zone: America/Mexico_City (CDT, -0500)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
Luego se configuró el idioma para que estuviera en en_US.UTF-8, eso se hizo con el siguiente comando y seleccionando las opciones que ponemos:
dpkg-reconfigure -p low locales
Se seleccionó a :
-
[] en_US.UTF-8 en Configuring locales*
-
[] en_US.UTF-8 en Locales to be generated*
Y al final se selecciona a en_US.UTF-8 en la lista de Default locale.
Después se agregó la llave de SSH de los profesores en el archivo ~/.ssh/authorized_keys2, siguiendo las instrucciones, por lo que solo mostramos que los permisos y atributos estén correctamente configurados:
root@scrapykoko:~# ls -la ~root/.ssh ~redes/.ssh
/home/redes/.ssh:
total 12
drwx------ 2 redes redes 4096 Jun 3 22:03 .
drwxr-xr-x 4 redes redes 4096 Jun 4 14:06 ..
-rw------- 1 redes redes 0 Jun 3 20:56 authorized_keys
-rw------- 1 redes redes 748 Jun 3 22:03 authorized_keys2
/root/.ssh:
total 12
drwx------ 2 root root 4096 Jun 4 16:10 .
drwx------ 4 root root 4096 Jun 3 21:43 ..
-rw------- 1 root root 0 Jun 3 20:56 authorized_keys
-rw------- 1 root root 748 Jun 3 22:04 authorized_keys2
root@scrapykoko:~# lsattr ~root/.ssh/authorized_keys* ~redes/.ssh/authorized_keys*
--------------e------- /root/.ssh/authorized_keys
----i---------e------- /root/.ssh/authorized_keys2
--------------e------- /home/redes/.ssh/authorized_keys
----i---------e------- /home/redes/.ssh/authorized_keys2
Y ya por último se instaló las utilerías de red en la máquina virtual:
root@scrapykoko:~# apt -qy install tree tcpdump nmap netcat-openbsd ngrep dsniff wget curl whois dnsutils net-tools iproute2 iptables tsocks inetutils-ping inetutils-traceroute inetutils-tools ethtool
Reading package lists...
Building dependency tree...
Reading state information...
dnsutils is already the newest version (1:9.16.27-1~deb11u1).
curl is already the newest version (7.74.0-1.3+deb11u1).
dsniff is already the newest version (2.4b1+debian-30).
ethtool is already the newest version (1:5.9-1).
inetutils-ping is already the newest version (2:2.0-1).
inetutils-tools is already the newest version (2:2.0-1).
inetutils-traceroute is already the newest version (2:2.0-1).
iproute2 is already the newest version (5.10.0-4).
iptables is already the newest version (1.8.7-1).
net-tools is already the newest version (1.60+git20181103.0eebece-1).
netcat-openbsd is already the newest version (1.217-3).
ngrep is already the newest version (1.47+ds1-2).
nmap is already the newest version (7.91+dfsg1+really7.80+dfsg1-2).
tcpdump is already the newest version (4.99.0-2).
tree is already the newest version (1.8.0-1+b1).
tsocks is already the newest version (1.8beta5+ds1-1+b1).
wget is already the newest version (1.21-1+deb11u1).
whois is already the newest version (5.5.10).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Salida de los comandos en usuario root#
Comandos solicitados
# uname -a
# cat /proc/cmdline
# id redes
# groups redes
# sudo -l -U redes
# timedatectl
# hostnamectl
# hostname -f
# ip addr
# ip route
# cat /etc/hostname
# cat /etc/hosts
# cat /etc/resolv.conf
# ls -la ~root/.ssh ~redes/.ssh
# lsattr ~root/.ssh/authorized_keys* ~redes/.ssh/authorized_keys*
# lastlog
# last
# free -m
# ps afx
Archivos solicitados#
Archivos de configuración:#
-
Archivos contenidos en /etc/sudoers.d
Archivos de bitácora#
- /var/log/messages y /var/log/kern.log
- /var/log/user.log y /var/log/auth.log
- /var/log/dpkg.log
- /var/log/debug
- /var/log/cloud-init.log y /var/log/cloud-init-output.log
- Archivos contenidos en /var/log/apt
- Archivos contenidos en /var/log/azure
- Archivos contenidos en /var/log/unattended-upgrades
Archivos de datos#
- Archivos contenidos en /var/lib/dhcp
- Archivos contenidos en /var/lib/cloud