(20 puntos) Utilizando httpie, hagan una solicitud de HTTP al servidor
http GET http://localhost
HTTP/1.1 200 OK
Connection: keep-alive
Content-Encoding: gzip
Content-Type: text/html
Date: Wed, 12 Feb 2025 20:21:55 GMT
ETag: W/"67ad01dc-2b88"
Last-Modified: Wed, 12 Feb 2025 20:17:32 GMT
Server: nginx/1.24.0 (Ubuntu)
Transfer-Encoding: chunked
tambien da el contenido del index.html pero por el espacio no lo coloco.
-----------------------------------------------------------------------------------------------------------
(10 puntos) Utilizando curl, hagan una solicitud de HTTP al servidor
curl http://localhost
Sistemas y Tecnologías Web | 10
(5 puntos) Que pasa si tratan de hacer una solicitud de HTTP desde el servidor hacia su computadora?
curl http://172.20.10.14
^C
2025-02-12 20:31 ⌚ njs v18.19.1|py |go 10% ip-172-31-31-175 (172.31.31.175) in ~
○ → ping 172.20.10.14
PING 172.20.10.14 (172.20.10.14) 56(84) bytes of data.
no me aparecio nada, hice un ping y tiene conexion
-----------------------------------------------------------------------------------------------------------------------------------
(10 puntos) Utilizando tail dentro del servidor, obtengan las últimas 15 líneas del archivo /var/log/nginx/access.log
sudo tail -n 15 /var/log/nginx/access.log
162.158.11.151 - - [12/Feb/2025:20:18:02 +0000] "GET /23089/ HTTP/1.1" 200 310 "https://nrywhite.lat/" "Mozilla/5.0 (X11; Linux x86_64; rv:134.0) Gecko/20100101 Firefox/134.0"
162.158.11.159 - - [12/Feb/2025:20:18:08 +0000] "GET / HTTP/1.1" 200 397 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:134.0) Gecko/20100101 Firefox/134.0"
162.158.11.150 - - [12/Feb/2025:20:18:08 +0000] "GET /assets/index-ye1VBbcc.js HTTP/1.1" 304 0 "https://23089.nrywhite.lat/" "Mozilla/5.0 (X11; Linux x86_64; rv:134.0) Gecko/20100101 Firefox/134.0"
162.158.11.152 - - [12/Feb/2025:20:18:08 +0000] "GET /assets/index-W3JTDQU_.css HTTP/1.1" 200 2862 "https://23089.nrywhite.lat/" "Mozilla/5.0 (X11; Linux x86_64; rv:134.0) Gecko/20100101 Firefox/134.0"
162.158.11.150 - - [12/Feb/2025:20:18:08 +0000] "GET /assets/starlight-BMMAaOPo.gif HTTP/1.1" 304 0 "https://23089.nrywhite.lat/" "Mozilla/5.0 (X11; Linux x86_64; rv:134.0) Gecko/20100101 Firefox/134.0"
162.158.11.152 - - [12/Feb/2025:20:18:08 +0000] "GET /assets/starlight-4-C9jDg229.gif HTTP/1.1" 304 0 "https://23089.nrywhite.lat/" "Mozilla/5.0 (X11; Linux x86_64; rv:134.0) Gecko/20100101 Firefox/134.0"
162.158.11.149 - - [12/Feb/2025:20:18:08 +0000] "GET /assets/starlight_background-B5jI_RtG.gif HTTP/1.1" 304 0 "https://23089.nrywhite.lat/assets/index-W3JTDQU_.css" "Mozilla/5.0 (X11; Linux x86_64; rv:134.0) Gecko/20100101 Firefox/134.0"
162.158.11.150 - - [12/Feb/2025:20:18:08 +0000] "GET /assets/starlight-2-CjhxT_El.gif HTTP/1.1" 304 0 "https://23089.nrywhite.lat/" "Mozilla/5.0 (X11; Linux x86_64; rv:134.0) Gecko/20100101 Firefox/134.0"
162.158.11.148 - - [12/Feb/2025:20:18:08 +0000] "GET /assets/starlight-3-uO0lnkLe.gif HTTP/1.1" 304 0 "https://23089.nrywhite.lat/" "Mozilla/5.0 (X11; Linux x86_64; rv:134.0) Gecko/20100101 Firefox/134.0"
185.242.226.70 - - [12/Feb/2025:20:20:15 +0000] "GET / HTTP/1.1" 200 459 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.190 Safari/537.36"
127.0.0.1 - - [12/Feb/2025:20:21:55 +0000] "GET / HTTP/1.1" 200 2592 "-" "HTTPie/3.2.2"
::1 - - [12/Feb/2025:20:25:49 +0000] "GET / HTTP/1.1" 200 11144 "-" "curl/8.5.0"
78.153.140.180 - - [12/Feb/2025:20:29:41 +0000] "GET /.env HTTP/1.1" 404 196 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.140 Safari/537.36"
78.153.140.180 - - [12/Feb/2025:20:29:43 +0000] "POST / HTTP/1.1" 405 568 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.140 Safari/537.36"
162.158.11.153 - - [12/Feb/2025:20:31:28 +0000] "GET / HTTP/1.1" 200 397 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:134.0) Gecko/20100101 Firefox/134.0"
-----------------------------------------------------------------------------------------------------------------------------------
(10 puntos) Utilizando ps y grep identifiquen qué procesos está corriendo amazon dentro del servidor
ps aux | grep amazon
root 542 0.0 1.2 1759116 12144 ? Ssl 13:06 0:01 /snap/amazon-ssm-agent/9881/amazon-ssm-agent
root 914 0.0 1.9 1850868 18816 ? Sl 13:06 0:06 /snap/amazon-ssm-agent/9881/ssm-agent-worker
ubuntu 36592 0.0 0.2 7076 2048 pts/2 S+ 20:40 0:00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn amazon
-----------------------------------------------------------------------------------------------------------------------------------
(10 puntos) Utilizando dig dentro del servidor, obtengan la ip que resuelve al hacer un dns lookup uvg.edu.gt
dig uvg.edu.gt
; <<>> DiG 9.18.30-0ubuntu0.24.04.2-Ubuntu <<>> uvg.edu.gt
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48980
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;uvg.edu.gt. IN A
;; ANSWER SECTION:
uvg.edu.gt. 300 IN A 45.223.155.41
uvg.edu.gt. 300 IN A 45.223.56.41
;; Query time: 79 msec
;; SERVER: 127.0.0.53#53(127.0.0.53) (UDP)
;; WHEN: Wed Feb 12 20:41:01 UTC 2025
;; MSG SIZE rcvd: 71
-----------------------------------------------------------------------------------------------------------------------------------
(5 puntos) Cuanta memoria RAM, total usada y libre, tiene el servidor? (su respuesta debe estar en MB)
free -m
total used free shared buff/cache available
Mem: 957 487 260 26 405 469
Swap: 0 0 0
-----------------------------------------------------------------------------------------------------------------------------------
(5 puntos) Cuanta espacio de disco, total usado y disponible, tiene el servidor? (su respuesta debe estar en MB)
df -m
Filesystem 1M-blocks Used Available Use% Mounted on
/dev/root 28691 8645 20030 31% /
tmpfs 479 26 454 6% /dev/shm
tmpfs 192 2 191 1% /run
tmpfs 5 0 5 0% /run/lock
/dev/xvda16 881 76 744 10% /boot
/dev/xvda15 105 7 99 6% /boot/efi
tmpfs 96 1 96 1% /run/user/1000
-----------------------------------------------------------------------------------------------------------------------------------
(5 puntos) Utilizando el comando ip obtengan la ip del servidor
ip a
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: enX0: mtu 9001 qdisc fq_codel state UP group default qlen 1000
link/ether 0a:ff:d6:c1:6d:a5 brd ff:ff:ff:ff:ff:ff
inet 172.31.31.175/20 metric 100 brd 172.31.31.255 scope global dynamic enX0
valid_lft 3097sec preferred_lft 3097sec
inet6 fe80::8ff:d6ff:fec1:6da5/64 scope link
valid_lft forever preferred_lft forever
3: docker0: mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:b0:10:3a:1f brd ff:ff:ff:ff:ff:ff
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
valid_lft forever preferred_lft forever
inet6 fe80::42:b0ff:fe10:3a1f/64 scope link
valid_lft forever preferred_lft forever
5: veth3e2c6fb@if4: mtu 1500 qdisc noqueue master docker0 state UP group default
link/ether de:40:60:4d:bf:ef brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet6 fe80::dc40:60ff:fe4d:bfef/64 scope link
valid_lft forever preferred_lft forever
en el caso del servidor la ip seria: 172.31.31.255 que se encuentra dentro de la interfaz enX0
-----------------------------------------------------------------------------------------------------------------------------------
(10 puntos) lsof lista los archivos abiertos. Identifiquen los archivos abiertos por el protocolo TCP en el puerto 80
sudo lsof -i TCP:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nginx 10095 root 5u IPv4 39888 0t0 TCP *:http (LISTEN)
nginx 10095 root 7u IPv6 39890 0t0 TCP *:http (LISTEN)
nginx 10096 www-data 5u IPv4 39888 0t0 TCP *:http (LISTEN)
nginx 10096 www-data 7u IPv6 39890 0t0 TCP *:http (LISTEN)
-----------------------------------------------------------------------------------------------------------------------------------
(20 puntos) Utilizando netstat, listen los puertos por los que está escuchando el servidor. Deben filtrar usando las siguientes opciones de netstat (esto es un solo comando con estas opciones):
tcp
udp
numeric (muestra los puertos por número)
program (muestra qué programa es el que está escuchando)
sudo netstat -tulnnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.54:53 0.0.0.0:* LISTEN 309/systemd-resolve
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 309/systemd-resolve
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 10095/nginx: master
tcp 0 0 0.0.0.0:90 0.0.0.0:* LISTEN 1136/docker-proxy
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 10095/nginx: master
tcp6 0 0 :::10 :::* LISTEN 1/init
tcp6 0 0 :::90 :::* LISTEN 1143/docker-proxy
tcp6 0 0 :::80 :::* LISTEN 10095/nginx: master
udp 0 0 127.0.0.1:323 0.0.0.0:* 613/chronyd
udp 0 0 127.0.0.54:53 0.0.0.0:* 309/systemd-resolve
udp 0 0 127.0.0.53:53 0.0.0.0:* 309/systemd-resolve
udp 0 0 172.31.31.175:68 0.0.0.0:* 480/systemd-network
udp6 0 0 ::1:323 :::* 613/chronyd
-----------------------------------------------------------------------------------------------------------------------------------
(30 puntos) Utilizando ss, listen los puertos por los que está escuchando el servidor. Deben filtrar usando las siguientes opciones de ss (esto es un solo comando con estas opciones):
summary
tcp
conexiones establecidas
resuelvan los puertos numericos
uso de memoria
información interna de tcp
proceso que usa el socket
sudo ss -t -l -n -p -e
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 4096 127.0.0.54:53 0.0.0.0:* users:(("systemd-resolve",pid=309,fd=17)) uid:991 ino:4472 sk:7d cgroup:/system.slice/systemd-resolved.service <->
LISTEN 0 4096 127.0.0.53%lo:53 0.0.0.0:* users:(("systemd-resolve",pid=309,fd=15)) uid:991 ino:4470 sk:7e cgroup:/system.slice/systemd-resolved.service <->
LISTEN 0 511 0.0.0.0:443 0.0.0.0:* users:(("nginx",pid=10096,fd=6),("nginx",pid=10095,fd=6)) ino:39889 sk:9a cgroup:/system.slice/nginx.service <->
LISTEN 0 4096 0.0.0.0:90 0.0.0.0:* users:(("docker-proxy",pid=1136,fd=4)) ino:9516 sk:80 cgroup:/system.slice/docker.service <->
LISTEN 0 511 0.0.0.0:80 0.0.0.0:* users:(("nginx",pid=10096,fd=5),("nginx",pid=10095,fd=5)) ino:39888 sk:9b cgroup:/system.slice/nginx.service <->
LISTEN 0 4096 *:10 *:* users:(("sshd",pid=1690,fd=3),("systemd",pid=1,fd=90)) ino:6209 sk:82 cgroup:/system.slice/ssh.socket v6only:0 <->
LISTEN 0 4096 [::]:90 [::]:* users:(("docker-proxy",pid=1143,fd=4)) ino:9541 sk:83 cgroup:/system.slice/docker.service v6only:1 <->
LISTEN 0 511 [::]:80 [::]:* users:(("nginx",pid=10096,fd=7),("nginx",pid=10095,fd=7)) ino:39890 sk:9c cgroup:/system.slice/nginx.service v6only:1 <->