Bases del sistema operativo

1

Lo que aprender谩s sobre la administraci贸n de servidores linux

2

Distribuciones m谩s utilizadas de Linux

3

Instalaci贸n de Ubuntu Server

4

Instrucciones para instalar CentOS

5

Gesti贸n del 谩rbol de directorios

6

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

7

Interacci贸n con archivos y permisos

8

Conociendo las terminales en linux

9

Manejo y monitoreo de procesos y recursos del sistema

10

Monitoreo de recursos del sistema

Instalaci贸n y manejo de software en Linux

11

An谩lisis de los par谩metros de red

12

Administraci贸n de paquetes acorde a la distribuci贸n

13

Manejo de paquetes en sistemas basados en Debian

14

Administraci贸n de software con YUM y RPM para CentOS

15

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

Administraci贸n de usuarios

16

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

17

Creando y manejando cuentas de usuario en el sistema operativo

18

Entendiendo la membres铆a de los grupos

19

Usando PAM para el control de acceso de usuarios

Servicios en el sistema operativo

20

Autenticaci贸n de clientes y servidores sobre SSH

21

Configurando DNS con bind

22

Arranque, detenci贸n y recarga de servicios

23

NGINX y Apache en Ubuntu server

24

Instalaci贸n y configuraci贸n de NGINX

25

驴Qu茅 es NGINX Amplify?

26

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

27

Monitoreo de MySQL con Nagios

28

Configuraci贸n de Nagios

29

Los logs, nuestros mejores amigos

30

Otros servicios de logs

Bash scripting

31

Las bases de bash

32

Las variables y su entorno de ejecuci贸n

33

Automatizando tareas desde la terminal

34

Automatizando la copia de seguridad

35

Crontab

Asegurando tu servidor

36

Entendiendo la gesti贸n de vulnerabilidades

37

驴Qu茅 es una superficie de ataque? Principio del menor privilegio

38

El firewall y sus reglas

39

Escaneo de puertos con NMAP y NIKTO desde Kali Linux

40

Lynis: Herramientas de auditoria de seguridad en Linux

Proyecto

41

Configuraci贸n de Node.js en un ambiente productivo

42

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

Bonus: Linux en Azure

43

Aprende sobre Linux en Azure

44

Despliegue de una aplicaci贸n web MEAN

45

Crea una m谩quina virtual en la nube de Azure

Conclusiones

46

Lo que aprendiste sobre servidores linux

NGINX y Apache en Ubuntu server

23/46

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.

Para validar los puertos que tienen un proceso activo usamos:

sudo netstat -tulpn

Podr铆amos tener una infraestructura donde NGINX puede servir como proxy y Apache como servidor web.

1.png

Imagen tomada de: https://guides.wp-bullet.com/how-to-configure-nginx-reverse-proxy-wordpress-cache-apache/

Si revisamos las estad铆sticas podemos ver que Apache a煤n es el l铆der del mercado en servidores web, seguido por NGINX, es por esta raz贸n que veremos la instalaci贸n y configuraci贸n de ambos.

2.png

Existen en internet art铆culos interesantes de comparaci贸n entre ambos y el caso de uso de cada uno de ellos.
https://www.digitalocean.com/community/tutorials/apache-vs-nginx-practical-considerations
https://www.nginx.com/faq/what-is-nginx-how-different-is-it-from-e-g-apache/

Proceso de instalaci贸n.

Apache

Ejecuta el siguiente comando

sudo apt install apache2

NGINX

Ejecuta el siguiente comando

sudo apt install nginx nginx-extras

Para verificar si los servicios est谩 corriendon se debe ejecutar los siguientes comandos:
systemctl status apache2
systemctl status 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 Apache, para ello cambiaremos el puerto de Apache al puerto alterno http 8080.

sudo nano /etc/apache2/ports.conf

A continuaci贸n tenemos que cambiar el puerto al 8080, para esto se debe cambiar la instrucci贸n Listen 8080 dentro del documento ports.conf.

Despu茅s abrimos nuestro archivo de configuraci贸n de Apache sudo nano /etc/apache2/sites-available/000-default.conf y cambiamos el virtualhost a 8080 <VirtualHost *:8080>

Despu茅s realizamos el proceso de detener apache2 y volverlo a encender, con los siguientes comandos
sudo systemctl restart apache2.
systemctl status apache2
systemctl status nginx.
Ambos sitios deber铆an estar activos y en ejecuci贸n.
Paso siguiente, dir铆gete al archivo de configuraci贸n de NGINX donde te asegurar谩s que exista una directiva en el location llamada proxy_pass que contenga lo siguiente:

proxy_pass http://127.0.0.1:8080;

3.png

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

4.png

Conclusi贸n

Antes de realizar la elecci贸n de uno de los dos, deber铆as mirar el tipo de proyecto en el que est谩s trabajando y que se acople mejor a tus necesidades, es un proceso de evaluaci贸n y prueba en cada uno de los aspectos que esperamos como administradores de sistemas.
Existen m煤ltiples diferencias entre ambos proyectos, que tienen impacto real en el rendimiento y tiempo de configuraci贸n para lograr que el servicio quede funcionando perfectamente. Algunos prefieren NGINX por la sintaxis de configuraci贸n, otros eligen basado en las estad铆sticas presentadas y otros por simple experiencia con trabajos anteriores. Yo te recomiendo probar ambos y elegir seg煤n el proyecto, o quiz谩s puedes usarlos ambos y sacar lo mejor de cada uno.

Aportes 102

Preguntas 13

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Reg铆strate o inicia sesi贸n para participar.

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 鈥淪etEnvIf 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

Est茅 p谩rrafo me genera confusi贸n, 驴alguien mas lo noto o lo estoy entendiendo mal? no deber铆a decir 鈥淎PACHE鈥 en la segunda palabra 鈥淣GINX鈥

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 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鈥ervice: Unit apache2鈥 service not found

Alguien m谩s le pasa? 馃槮

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

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

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

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 鈥淕u铆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 鈥減roblema鈥 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?

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

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: 鈥渘o 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.

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

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

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.

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?

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

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 鈥減roxy_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 鈥渇ailed鈥 鈥渆xit-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鈥檛 make it in RS3.

Doesn鈥檛 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

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

No tengo proxy en NGNIX que puede ser??? y como lo puedo solucionar? gracias

Importante aclarar que si instalas Apache primero, debes o haber configurado ya que se corra en un puerto diferente al 80 o deshabilitarlo para que no de error la instalacion de Nginx

quede pegado por que me salta un error, aunque tengo los dos servicios corriendo , me dice que el proxy_pass no existe como comando :c

Al intentar subir el apache no me deja, alguien sabe que puede ser? en el paso de: sudo systemctl restart apache2.

Gracias por esta lectura que explica de una forma muy sencilla lo que es un proxy y un servidor web.

Comandos correctos para reinciar apache 2 y iniciar nginx

sudo systemctl restart apache2
sudo systemctl status apache2
sudo systemctl start nginx
sudo systemctl status nginx```

Que es un proxy? que es lo que hace? en que situaci贸n debe o se recomienda utilizarlo y cuando no?

no me funciona me da error

Me seria buenos abordar el tema de NGINX, ya que he tenido serias perdidas de servicio a causas de malas implementaciones

Muy bueno el art铆culo pero ser铆a m谩s interesante si se desarrollase en un v铆deo. Gracias.