Bases del sistema operativo

1

Aviso de renovación del curso

2

Lo que aprenderás sobre la administración de servidores linux

3

Distribuciones más utilizadas de Linux

4

Instalación de Ubuntu Server

5

Instrucciones para instalar CentOS

6

Gestión del árbol de directorios

7

Diferencias entre LESS, CAT, HEAD y TAIL para lectura de archivos

8

Interacción con archivos y permisos

9

Conociendo las terminales en linux

10

Manejo y monitoreo de procesos y recursos del sistema

11

Monitoreo de recursos del sistema

Instalación y manejo de software en Linux

12

Análisis de los parámetros de red

13

Administración de paquetes acorde a la distribución

14

Manejo de paquetes en sistemas basados en Debian

15

Administración de software con YUM y RPM para CentOS

16

Nagios: Desempaquetado, descompresión, compilación e instalación de paquetes

Administración de usuarios

17

Los usuarios, una tarea vital en el proceso de administración del sistema operativo

18

Creando y manejando cuentas de usuario en el sistema operativo

19

Entendiendo la membresía de los grupos

20

Usando PAM para el control de acceso de usuarios

Servicios en el sistema operativo

21

Autenticación de clientes y servidores sobre SSH

22

Configurando DNS con bind

23

Arranque, detención y recarga de servicios

24

NGINX y Apache en Ubuntu server

25

Instalación y configuración de NGINX

26

¿Qué es NGINX Amplify?

27

NGINX Amplify: Instalación y configuración de un servidor para producción

28

Monitoreo de MySQL con Nagios

29

Configuración de Nagios

30

Los logs, nuestros mejores amigos

31

Otros servicios de logs

Bash scripting

32

Las bases de bash

33

Las variables y su entorno de ejecución

34

Automatizando tareas desde la terminal

35

Automatizando la copia de seguridad

36

Crontab

Asegurando tu servidor

37

Entendiendo la gestión de vulnerabilidades

38

¿Qué es una superficie de ataque? Principio del menor privilegio

39

El firewall y sus reglas

40

Escaneo de puertos con NMAP y NIKTO desde Kali Linux

41

Lynis: Herramientas de auditoria de seguridad en Linux

Proyecto

42

Configuración de Node.js en un ambiente productivo

43

Configuración de NGINX para la aplicación de Node.js

Bonus: Linux en Azure

44

Aprende sobre Linux en Azure

45

Despliegue de una aplicación web MEAN

46

Crea una máquina virtual en la nube de Azure

Conclusiones

47

Lo que aprendiste sobre servidores linux

NGINX y Apache en Ubuntu server

24/47

Lectura

NGINX y Apache son softwares para montar servidores web, puedes realizar la instalación de ambos en el sistema operativo, teniendo como base que pueden estar corriendo al mismo tiempo, siempre y cuando no estén a la espera de conexiones por el mismo puerto.

...

Regístrate o inicia sesión para leer el resto del contenido.

Aportes 112

Preguntas 15

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

uno entiende que no todo no lo pueden dejar en bandeja de plata pero, estas ultimas clases les esta faltando algo de profesionalismo

RESUMEN DE LA CLASE
|
NGINX y Apache en Ubuntu server
|
|
Instalación y configuración de Apache y Nginx
|

  • Instalar Apache
sudo apt install apache2
  • Instalar Nginx
sudo apt install nginx nginx-extras
  • Abrir el archivo de configuración de apache, y cambiar el puerto a 8080
sudo nano /etc/apache2/ports.conf
  • Abrir el siguiente archivo de configuración y cambiar el puerto a 8080
sudo nano /etc/apache2/sites-available/000-default.conf
  • Reiniciar Apache e Iniciar Nginx. Verificar luego
sudo systemctl restart apache2.
sudo systemctl status apache2
sudo systemctl start nginx
sudo systemctl status nginx.
  • Añadir la linea proxy_pass http://127.0.0.1:8080 en el location del siguiente archivo
sudo nano /etc/nginx/sites-available/default

|
|
Comandos
|

  • sudo netstat -tulpn: Validar los puertos que tienen un proceso activo

La verdad esta artículo se suma a las explicaciones más pobres y menos útiles del curso junto a: Instalación de Nagios y Bind DNS.
Deja muchas dudas en el aire y no se logra explicar la utilidad de lo que se instala.
Por favor Platzi! no más artículos tan vacíos!

Es mejor seguir este tutorial, que compartió un compañero hace meses: https://www.digitalocean.com/community/tutorials/como-configurar-nginx-como-servidor-web-y-proxy-inverso-para-apache-en-un-servidor-ubuntu-18-04-es

Me parece que desde la parte de Nagios este curso perdio calidad, dejando mucha informacion por fuera, y causando que dependamos de los comentarios para poder continuar y resolver los errores. Este curso necesita ser actualizado y mejorado.

El acceso a la configuracion de NGINX para verificar el proxy_pass http://127.0.0.1:8080 está en: /etc/nginx/sites-avaible/default

para los que no sepan donde esta el archivo de configuracion nginx esta en

/etc/nginx/sites-enabled 

y es el archivo default, por si las dudas esto se ve en la siguiente clase

dirígete al archivo de configuración de NGINX ?? donde en nginx es /etc/nginx/nginx.conf

donde te asegurarás que exista " o creas " una directiva en el location llamada proxy_pass que contenga lo siguiente:

Estimados amigos de Platzi, entiendo que se debe ser autodidacta, y buscar la inf es parte de la habilidad, pero no por ello se va colocar info incompleta, para este tipo de escenario es preferible hacer el video paso a paso. como se ha venido realizando.

Puede que algunos tengan alguna confusión luego de configurar los puertos de apachea 8080, y reiniciar los servicios, la salida de:localhost:80 y localhost:8080 puede lucir como la misma plantilla htmlde apache, y de pronto crean que no les está funcionando la configuración.
Esto es porque al instalarse primero apachey luego nginx, ambos tienen el mismo archivoindex.htmlen el directorio /var/www/html, y al instalar nginxel archivo index.html no se instala porque ya existe como se instaló con apache. Ahora, para tenerlo como la plantilla original de nginx, se puede copiar el contenido original de /var/www/html/index.nginx-debian.html en un nuevo path /var/www/directorio/index.html, y modificar el path de configuración (sites-enabled) para los sitios de nginx como en la imagen ↓↓

Existe un error en la lectura:
Si se siguió el orden de instalación, NGINX no debe estar ejecutándose, pues por defecto intentará levantarse en el puerto 80, el cual ya se encuentra ocupado por NGINX, para ello cambiaremos el puerto de Apache al puerto alterno http 8080.

Debería ser:
Si se siguió el orden de instalación, NGINX no debe estar ejecutándose, pues por defecto intentará levantarse en el puerto 80, el cual ya se encuentra ocupado por Apache, para ello cambiaremos el puerto de Apache al puerto alterno http 8080.

La informacion es muy vaga, comienza el curso hablando de probar tanto en ubuntu como en centos, pero luego detalles tan simples como httpd en vez de apache para centOS ayudaria mucho, y ni que hablar ya de otros temas de configuracion e instalacion de distintas maneras en centOS. Y por lo visto en los comentarios, nadie hace este curso en centOS.

Este artículo está un poco confuso.

Casi que no 😂.
En la instalación tanto apache como nginx colocan sus páginas de inicio en la carpeta /var/www/html,
Apache: index.html
Nginx: index.nginx-debian.html
Solución:
En la carpeta /var/www/ podemos crear una carpeta diferente
con cualquier nombre, en mi caso le puse carpetanginx
/var/www/carpetanginx
y aquí es donde vamos a colcoar la página de inicio de nginx.
Para mover el archivo index.nginx-debian.html desde /var/www/html a la nueva carpeta /var/www/carpetanginx
le damos, mv index.nginx-debian.html /var/www/nginx

Luego, en el archivo de configuración de nginx,
sudo vi /etc/nginx/sites-avaible/default
Editamos la linea root /var/www/html, y la cambiamos por root /var/www/carpetanginx

Hola, tengo dudas de como realizar esta parte:

Si queremos activar letsecrypt en NGINX, debemos agregar una línea en el .htaccess en la ruta

/var/www/html/nombre_host/.htaccess. La linea es SetEnvIf X-Forwarded-Proto https

porque en esa ubicación solo tengo 2 archivos index.
Gracias.

Las instrucciones no están lo suficientemente claras y el código adyacente a “SetEnvIf X-Forwarded-Proto https” no me sale en ninguna parte, tampoco el archivo .htaccess.

https://websiteforstudents.com/setup-nginx-reverse-proxy-apache2-ubuntu-17-04-17-10/

este es un buen enlace de como hacer dicha configuración

Justo cuando empezaba a creer que el curso iba a estar bien estructurado y extenso por disipar dudas me topo con nagios
jsjsjs aunque ya lo resolví todo creo que antes de empezar a ver una clase tenemos que ir a los comentarios luego tener un mon´ton de pestañas abiertas de errores y cómo solucionarlos en youtube o fuentes externas y ahora sí empezar a verlo JSJSJS SALUDOS

INSTALACION DE APACHE Y NGINX

Apache

$ sudo apt install apache2

NGINX

$ sudo apt install nginx nginx-extras

Verificar si los servicios se estan ejecutando

$ systemctl status apache2

$ systemctl status nginx

Nota: Para que se ejecute NGINX se debe cambiar el puerto donde se
esta ejecutando Apache del 80 a 8080, para que NGINX se ejecute
por el puerto 80

Cambiamos de puerto de Apache

Ingresamos al directorio port.conf para cambiar a Listen 8080

$ sudo nano /etc/apache2/ports.conf

Ingresamos al directorio 000-default.conf para cambiar
virtualhost a 8080 <VirtualHost *:8080>

$ sudo nano /etc/apache2/sites-available/000-default.conf

Detenemos apache2 y lo volvemos a encender

$ sudo systemctl restart apache2

Verificamos si se estan ejecutando apache2 y NGINX

$ systemctl status apache2

$ systemctl status nginx

Nos dirigimos a los archivos para verificar proxi_pass

$ cat /etc/nginx/nginx.conf

A mi me salio asi con el anterior comando

para la ruta de de NGINX esta en: sudo vim etc/nginx/sites-available/default

Esté párrafo me genera confusión, ¿alguien mas lo noto o lo estoy entendiendo mal? no debería decir “APACHE” en la segunda palabra “NGINX”

Si se siguió el orden de instalación, NGINX no debe estar ejecutándose, pues por defecto intentará levantarse en el puerto 80, el cual ya se encuentra ocupado por NGINX, para ello cambiaremos el puerto de Apache al puerto alterno http 8080.

Yo siempre he usado apache por la experiencia y me gusta mucho, pero por lo que he leído, NGINX es más liviano que apache por lo que puede resultar en mejor rendimiento, necesito aprender sobre NGINX!

Este curso se volvió intragable. Una lástima, especialmente luego de venir de alta calidad en contenido como el de prework y el de intro a la terminal

Este paper fácilmente daría para 1 o 2 clases. La verdad pienso que para encontrar información y tutoriales como este, basta con echarle una revisada a Google. Qué pasó ahí Platzi? Aparte del conocimiento, ustedes venden la experiencia. Hiper fail la mayoría de este curso

Intento hacer restart pero me aparece el error
Failed to restart apache2…service: Unit apache2… service not found

Alguien más le pasa? 😦

Definitivamente este curso se lleva mala nota.

Este curso me tiene luchando contra un sentimiento implacable de no entender que es lo que estoy haciendo.

cual es el archivo de configuración de nginx en donde debe estar el proxy_pass?

seré yo o esto esta pobremente explicado?

Lo siento, hago este curso por el reto del Azure, pero es un auténtico desproposito las últimas clases

A partir de que pide implementar la linea proxy_pass, me fue muy difícil seguir, ojala pudieran explayar un poco mas la lectura.

Gracias a Dios que existe ChatGPT en 2022 para que me explique lo que no entiendo xD

tengo demasiados vacíos respecto al tema he repetido videos y hay muchas cosas que no van quedando claras como por ejemplo esta clase, logre hacer todos los pasos pero no entiendo la función de apache ni el otro…

En mi opinión a este documento le falta algo de claridad, porque hay ciertos pasos donde se asumen procedimientos, que no todos conocemos y quedamos con la duda de como se hace? o para que es?.
Toca investigar mas pero lo ideal seria que por lo menos nos dieran un concepto básico.

Resumen de administrador de sistemas:

Sigo el “Guía burros”

Cambio , cambio cambio cambio cambio… etc

Pruebo, mierda no funciona, reinicio mierda no funciona,
reinicio todo lo que pueda no funciona no funciona…

Llamo a un desarrollador el puede que sepa que esta pasando…

Ultimas clases guía burros puros…

Aunque hice la instalación primero de Apache y luego NGINX, luego le cambie los puertos a Apache. NGINX me sigue apareciendo deshabilitado.

El curso aunque vigente sus referencias, esta desactualizadas a continuación una de tantas comparaciones al respecto:

https://kinsta.com/es/blog/nginx-vs-apache/

Si tienen dudas acerca de los puertos 80 y 8080 les dejo estos links:

Y este otro es para ver más puertos del protocolo TCP (Donde se encuentran los puertos 80 y 8080) y del protocolo UDP:

Alguien con este error en NGINX

[email protected]:~$ sudo systemctl start nginx
Job for nginx.service failed because the control process exited with error code.
See "systemctl status nginx.service" and "journalctl -xe" for details.
[email protected]:~$ sudo systemctl status nginx
● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Fri 2021-01-29 09:39:47 CST; 7s ago
     Docs: man:nginx(8)
  Process: 1020 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=1/FAILURE)

Jan 29 09:39:47 deb systemd[1]: Starting A high performance web server and a reverse proxy server...
Jan 29 09:39:47 deb nginx[1020]: nginx: [emerg] open() "/etc/nginx/sites-enabled/configuracion_nginx" failed (2: No such file or directory) inJan 29 09:39:47 deb nginx[1020]: nginx: configuration file /etc/nginx/nginx.conf test failed
Jan 29 09:39:47 deb systemd[1]: nginx.service: Control process exited, code=exited, status=1/FAILURE
Jan 29 09:39:47 deb systemd[1]: nginx.service: Failed with result 'exit-code'.
Jan 29 09:39:47 deb systemd[1]: Failed to start A high performance web server and a reverse proxy server.
[email protected]:~$ sudo journalctl -xe
Jan 29 09:39:47 deb sudo[1017]:      alx : TTY=pts/0 ; PWD=/home/alx ; USER=root ; COMMAND=/usr/bin/systemctl start nginx
Jan 29 09:39:47 deb sudo[1017]: pam_unix(sudo:session): session opened for user root by alx(uid=0)
Jan 29 09:39:47 deb systemd[1]: Starting A high performance web server and a reverse proxy server...
-- Subject: A start job for unit nginx.service has begun execution
-- Defined-By: systemd
-- Support: https://www.debian.org/support
--
-- A start job for unit nginx.service has begun execution.
--
-- The job identifier is 727.
Jan 29 09:39:47 deb nginx[1020]: nginx: [emerg] open() "/etc/nginx/sites-enabled/configuracion_nginx" failed (2: No such file or directory) inJan 29 09:39:47 deb nginx[1020]: nginx: configuration file /etc/nginx/nginx.conf test failed
Jan 29 09:39:47 deb systemd[1]: nginx.service: Control process exited, code=exited, status=1/FAILURE
-- Subject: Unit process exited
-- Defined-By: systemd
-- Support: https://www.debian.org/support
--
-- An ExecStartPre= process belonging to unit nginx.service has exited.
--
-- The process' exit code is 'exited' and its exit status is 1.
Jan 29 09:39:47 deb systemd[1]: nginx.service: Failed with result 'exit-code'.
-- Subject: Unit failed
-- Defined-By: systemd
-- Support: https://www.debian.org/support
--
-- The unit nginx.service has entered the 'failed' state with result 'exit-code'.
Jan 29 09:39:47 deb systemd[1]: Failed to start A high performance web server and a reverse proxy server.
-- Subject: A start job for unit nginx.service has failed
-- Defined-By: systemd
-- Support: https://www.debian.org/support
--
-- A start job for unit nginx.service has finished with a failure.
--
-- The job identifier is 727 and the job result is failed.
Jan 29 09:39:47 deb sudo[1017]: pam_unix(sudo:session): session closed for user root
Jan 29 09:39:54 deb sudo[1021]:      alx : TTY=pts/0 ; PWD=/home/alx ; USER=root ; COMMAND=/usr/bin/systemctl status nginx
Jan 29 09:39:54 deb sudo[1021]: pam_unix(sudo:session): session opened for user root by alx(uid=0)
Jan 29 09:39:57 deb sudo[1021]: pam_unix(sudo:session): session closed for user root
Jan 29 09:40:15 deb sudo[1024]:      alx : TTY=pts/0 ; PWD=/home/alx ; USER=root ; COMMAND=/usr/bin/journalctl -xe
Jan 29 09:40:15 deb sudo[1024]: pam_unix(sudo:session): session opened for user root by alx(uid=0)

Entonces para añadir lo del proxy al .conf de apache sólo añadimos esa línea o tenemos que añadir todo lo que está en la captura de pantalla?
y porcierto para qué se hizo eso de colocar lo del proxy ahí?
y por qué se coloca la dir ip 127.0.0.1?

hice funcionan ambos en puertos diferentes… gracias a leer los comentarios.
pero esta:

Si por alguna razón el servidor Apache no se encuentra en la misma máquina, debemos cambiar la dirección IP y el puerto respectivo.

Apache tiene un comando para activar sitios que es a2ensite que recibe como parámetro el archivo de configuración definido en /etc/apache2/sites-available. NGINX no cuenta con este comando, motivo por el cual se tiene un enlace blando, es decir, cuando creemos un archivo de configuración en /etc/nginx/sites-available debemos ejecutar sudo ln -s /etc/nginx/sites-available/configuracion_nginx /etc/nginx/sites-enabled/

Apache también me permite deshabilitar sitios y agregar módulos

sudo a2dissite 000-default

sudo a2enmod rewrite headers env dir mime

Si queremos activar letsecrypt en NGINX, debemos agregar una línea en el .htaccess en la ruta /var/www/html/nombre_host/.htaccess. La linea es SetEnvIf X-Forwarded-Proto https

TE LA DEBO !!!

Hola a todos, tengo un “problema” y lo pongo entre comilas por que estoy en UBUNTU SERVER 18 LTS y abriendo el archivo de configuracion de NGINX.conf no me aparece el listado de location, ni el array Server, tengo events {} http {} y por ultimo mail {} que aparece con # es decir esta comentado, no se como pasar la configuraciòn del prox a NGINX, si alguien me puede ayudar le agradezco

Excelente explicacion, vale agregar que NGINX es mucho mas agil y eficiente, y tambie se puede como Load Balancer, Proxy, adeams de web Server, y la documentación en Digital Ocean esta tambien explicado como instakar NGINX

Muy interesante. Creo que se debería genera un tutorial más completo.

Ejemplo

¿Compañeros, me podrian aclarar esta parte?

estoy perdido!

de las clases menos profesionales que existen, alguien revisa la calidad de los cursos?

Buena po, “tu cambia proxy_pass y metele esto”.
Ni tengo idea de donde está este archivo…
si no hubiera gpt3 para explicar estaría perdiendo media vida revisando información de otros lados

[](). Alguien me puede ayudar con este error lo estoy ejecutando desde un contenedor de docker

Bueno esta clase también pasó de agache al igual que otras tantas del curso que dejan serias dudas.

Apache tiene un comando para activar sitios que es a2ensite que recibe como parámetro el archivo de configuración definido en /etc/apache2/sites-available. NGINX no cuenta con este comando, motivo por el cual se tiene un enlace blando, es decir, cuando creemos un archivo de configuración en /etc/nginx/sites-available debemos ejecutar sudo ln -s /etc/nginx/sites-available/configuracion_nginx /etc/nginx/sites-enabled/

Hice caso de esta instrucción y era lo que no me dejaba subir el servidor nginx en las clases siguientes

Sumaría mucho a la calidad si el equipo de platzi revisara los comentarios porque las últimas lecciones están dejando que desear. Lástima porque es un tema muy interesante el de los servidores Linux.

profesor siento que usted esta asumiendo que los alumnos tenemos algun conocimiento especifico o que somos desarrolladores y pues no todos tomamos este curso siendo desarrolladores.

Espero que tomen esto como una critica constructiva,pero…
sin duda alguna esta es la peor clase que he recibido,y no hablo solo del curso si no en todo lo que llevo usando Platzi, este curso en general no es que esté mal, es solo que deja demasiados vacíos, tienen que tener en cuenta que muchos de nosotros somos nuevos en estos temas y no logramos captar del todo lo que estamos haciendo, en lo personal creo que este articulo daba para tres clases en video, explicando paso a paso que es lo que estamos haciendo y para que, se supone que pago platzi para aprender mas rápido y efectivamente, pero con este curso, con esta clase en especifico me fallaron mucho, tardé 3 días en entender que es lo que estaba haciendo, como hacerlo y para que hacerlo, busque videos en youtube, foros y documentación, y fue un quebradero de cabeza horrible la verdad, estaba mas perdido que un naufrago.
Entiendo que no es necesario que expliquen las cosas a profundidad, pero al menos deberían explicar que es lo que estamos haciendo, para que lo hacemos, dar las bases, y si ya hay pequeños conceptos que no quedan claro pues lo buscamos por nuestra cuenta, pasa que en este curso algunas clases en realidad son guías de los procedimientos que el profesor hacía, y quizá a el le funcionaban hace 2 años, pero no necesariamente tienen por que ser relevantes ahora.
en muchas clases de este curso siento que hago cosas solo por que el profesor dice que tengo que hacerlas, pero en realidad no tengo idea de lo que estoy haciendo.
Espero que renueven el curso con uno mas actualizado, o al menos clases del curso como esta, que te dejan mas perdido de lo que te ayudan a avanzar

Hola ayuda. Intento subir apache2 y no me deja en el paso de: sudo systemctl restart apache2. Les adjunto una imagen, gracias.

La última parte de la configuración de NGINX me parece le hace falta una explicación más detallada, aunque en los comentarios mencionan que en las clases posteriores lo explica. Me parece bastante bueno este curso.

Q tal comunidad… les recomiendo prueben hiawatha, es un servidor web orientado a la seguridad, este puede bloquear ataques SQLi, XSS, CSRF, y algunos exploit. lo interesante es que lo podemos utilizar como proxy reverso para una infraestructura ya existente, independientemente del server web que tengamos por detrás.
Les dejo el link— https://www.hiawatha-webserver.org/

de este tema me gustaria un video (aunque buscare informacion externa) sobre la configuracion como proxy siguiendo pasos, me ha gustado y creo que es interesante por temas de seguridad.

No puedo instalar sudo apt install nginx nginx-extras. Me dice: “no se pudo resolver <<us.archive.ubuntu.com>>”. Después de esto, sigo con los pasos y cuando llego a systemctl status ngnix aquí es dónde me atasco. E intentado resolver el problema anterior, pero no lo he logrado.

Hay que saber identificar las bondades que cada uno posee y cual se adapta mejor a nuestras necesidades según el proyecto que estemos realizando.

Listo hay que revisar el archivo default en esta ruta /etc/nginx/sites-available y apuntar a una carpeta que solo nginx pueda usar yo hice una en /var/www/nginx

Después de instalar Nginx y de configurar los puertos en ambas aplicaciones, Nginx seguia detenido y Apache escuchando por el puerto 80. En mi caso tuve que reiniciar el server para que los cambios tuvieran efecto.

Después de cambiar el puerto de Apache, y ejecutar el restart, también hay que ejecutar systemctl start nginx.

No quedo claro el ejercicio.

Excelente!

excelente!

apache forever

El archivo de configuracion al que se hace referencia en nginx es /etc/nginx/nginx.conf
otro aporte, para entender un poco el tema de la arquitectura podemos revisar este ebook: https://www.aosabook.org/en/nginx.html

Alguien me puede explicar que funcion cumple el archivo proxy_pass? Y como es que esto es un servidor web y proxy inverso? Ya he trabajo con NGINX anteriormente, pero nunca con los dos servidores corriendo.

Está corriendo muy rápido, explicando todo y nada a la vez.
Entiendo que en un solo curso no se pueden dar todas las herramientas, pero hay un problema con este curso, que empezó muy bien, pero al querer cubrir tanto, está dejando muchos huecos vacíos de por medio.

Hola! A mi me ayudó mucho este sitio para complementar la información aquí expuesta:

En particular, el archivo de configuración de NGINX no contiene toda la información, hay un par de archivos complementarios. Los ajustes del proxy hay que hacerlos en /etc/nginx/sites-enabled/default

No se si tuvieron problemas para poder instalar el nginx, yo particularmente se me dificulto siguiendo los pasos mencionados en las clases, lo q hice fue borrar todo lo relacionado en nginx y para poder instalar el nginx segui los pasos de esta web https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-20-04-es
a mi parecer es mas entendible lo que menciona espero les sirva

Si no tienen el comando netstat en linux, podrían instalarlo con el comando

sudo apt-get install net-tools

aqui viene un paquete de comandos en cual trae, netsat, ifconfig, etc

El error que estaba recibiendo era “500 Internal Server Error” cuando trataba de conectarme a Nginx.

No tenemos que agregar el comando:

proxy_pass http://127.0.0.1:80;

al archivo /etc/nginx/site-available/default.
Apenas comente esta section y reinicie el servici Nginx, pude recibir el mensaje de bienvenida the Nginx en el puerto que habia configurado.

Ese comando lo que esta haciendo es que esta quedando en un loop tratando de conectarse asi mismo una y otra vez y nunca estableciendo la conexion.

Batalle cerca de una semana con esto en centos pero al final lo logre sigan este tutorial, deshabiliten el selinux, y en /etc/httpd/sites-available/example.com el puerto es 8080

Los artículos de este curso dejan mucho que desear…

Si no les funciona a2ensite en debian probablemente han usado el comando
su si ese es el caso pueden usar el su - en su lugar para que les funcione

Hola buenas tardes,
Tengo una pregunta si alguien puede ayudarme, estoy trabajando desde un servidor web, para agregar esta línea “proxy_pass” debo cambiar la ip a la ip de mi servidor? o pongo la línea tal cual.
Gracias de antemano

Al vcambiar los puertos de apache2 no puedo reiniciarlo, me dice “failed” “exit-code”… y ya la neta este curso se puede ir al… está muy mal todo

Hola,

Este ejercicio esta algo confuso, sin embargo, para poder ver ambos servidores activos lo que hice fue dejar a Apache en el puerto 3000 y NGINX en el que queda por defecto. Espero estar en lo correcto.

Porqueria de tutorial xD

En el caso de que vengas tomando el curso en Centos o como es mi caso en RedHat en AWS, te dejo los comandos que me ayudaron a pasar la clase.

sudo yum install -y nginx: Para instalar Nginx
sudo yum install nano: Para instalar Nano en el caso de que no lo tengas aun instalado

Debes modificar el archivo /etc/httpd/conf/httpd.conf y cambiar el puerto Listen a 8080
Usamos el comando
nano /etc/httpd/conf/httpd.conf

Ctrl O: Para guardar el archivo
Ctrl X: Para salir del archivo.

Asegurate de que tengas los permisos para modificar el archivo, en caso de que no los tengas usa.
sudo chmod 777 /etc/httpd/conf/httpd.conf
Una vez terminaste el cambio asegúrate de dejar el archivo como estaba
sudo chmod 644 /etc/httpd/conf/httpd.conf

Como estamos trabajando en distribución basadas en CenTOS no hace falta el paso de modificar

nano /etc/apache2/sites-enabled/000-default.conf

El cambio se aplica directamente en el host virtual predeterminado

Reinicia Apache
sudo systemctl restart httpd

Reinicia Nginx
sudo systemctl restart nginx

Comprueba que los dos están funcionando correctamente
systemctl status httpd
systemctl status nginx

Ahora debemos agregar la siguiente linea que nos recomienda el profe al archivo /etc/nginx/nginx.conf

Usamos el comando
nano /etc/nginx/nginx.conf

En el caso de que no tengas permisos
sudo chmod 777 /etc/nginx/nginx.conf: Para hacer el cambio
sudo chmod 664 /etc/nginx/nginx.conf: Para dejar los permisos como estaban.

Resumen: 2 tipos de web server, que no deben estar corriendo al mismo tiempo para el mismo puerto, APACHE y NGINX, el mas popular APACHE, pero …
Para paginas web estaticas, NGIX corre dos veces mas rapido que APACHE con poca memoria. Otro tipo de web server es node-red principalmente para IoT me parece utilizando node.js

Hay que tener muy en claro al momento de instalar un servidor web, para que lo vamos a utilizar. Apache tiene mucha facilidad de servir contenido dinámico como peticiones PHP, en cambio Nginx se va muy bien sirveindo contenido estático. Usar ambos sería una optimización muy buena para nuestro servidor. Se evidenciaría en la carga de la página.

Saludos, falto un paso, INICIAR el servidor Nginx.
systemctl start nginx
systemctl status nginx

Sí alguien presenta el siguiente problema luego de reiniciar el servicio nginx:

Failed to start A high performance web server and a reverse proxy server.*
Debe cambiar el puerto en la siguiente dirección (en mi caso usé nano):
sudo nano /etc/nginx/sites-available/default
Dado que pone por defecto un puerto.
Lo puede cambiar por el 8080 o el requerido para esta lectura.

faltan como pasos en especifico puesto que si seguimos una guia hay pasos que se asumen que suceden

Hola a todos, alguien me podria explicar la función de tener nginx funcionado como proxy de apache? no me quedo muy claro.
Saludos.

Yo instalé Ubuntu para Win10 y tuve un problema a reiniciar apache ya que me aparece lo siguiente

[Thu Nov 12 23:57:11.745573 2020] [core:warn] [pid 3652] (92)Protocol not available: AH00076: Failed to enable APR_TCP_DEFER_ACCEPT

Investigando encontré lo siguiente: (https://github.com/microsoft/WSL/issues/1953)

The TCP_DEFER_ACCEPT socket option is not natively supported by Windows.

WSL team are working with Windows networking team on this issue, but fix likely won’t make it in RS3.

Doesn’t block Apache2 from starting, just a warning. Pile-on below if otherwise.

If you have this warning after enabling SSL (https), just add the following line to the end of the file :

AcceptFilter https none
AcceptFilter http none

Keep in mind that this would just hide errors.

Para aportar el commando ya esta algo desfasado, ahora se usa el comando

ss -tulpn 

buen proyecto hay que aplicarlo

Todo iba bien hasta que no me arranco…
ya en la 5ta vez pude hacerlo…

Algunas características destacadas de Apache y Nginx

Muy buen contenido.

instalado 😃

Excelente contenido, muy bien explicado la diferencia y como configurarlo en diferentes puertos.

el contenido es muy interesante.

Muy buen contenido

Excelente c

segui los pasos y me quede atascado en sudo nano /etc/apache2/ports.conf no tengo instrucciones de como volver asique reiniciando la maquina . bajon