Ayer, configuré mi primera VM de cómputo siempre gratuita. Instalé ubuntu 18.04 mínimo en mi VM. Para mi necesidad de servicio web, instalé Nginx. Estoy confundido porque cuando intenté acceder a mi IP pública a través de un navegador web, la página de bienvenida de Nginx no se cargó. Creo que es porque el puerto 80 no se abrió. Entonces, traté de abrirlo con Reglas de ingreso establecidas en el menú Detalles de la lista de seguridad como se muestra en la imagen a continuación. Regla de ingreso para el puerto 80
Pero ahora, todavía no puedo acceder al servidor web en mi VM. Puede haber personas más experimentadas en Oracle Cloud que puedan ayudarme a resolver esto. Gracias
En mi caso, CentOS 8 Image, firewall-cmd guardó las reglas, pero los puertos no funcionaron. La razón es que el sistema usa iptables y no nftables. Entonces, cambie este archivo /etc/firewalld/firewalld.conf
# FirewallBackend=nftables FirewallBackend=iptablesy
#firewall-cmd restartHizo el truco.
Así es como lo hice sin entrometerme directamente con iptables .
Primero, cree una Ingress Rule de ingreso en el panel de Oracle Cloud vps/Networking/Virtual Cloud Networks, por ejemplo, para el rango de puertos 23-90 
A continuación, instale firewalld en ubuntu (creo que firewalld está disponible en centos)
sudo apt-get install firewalld sudo systemctl enable firewalld sudo systemctl start firewalldSolo necesita hacer esto una vez. Todavía estará allí después de un reinicio.
Luego, para abrir el puerto 80:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent # or --add-service=http sudo firewall-cmd --reloadPara verificar:
sudo firewall-cmd --list-allProducción:
public target: default icmp-block-inversion: no interfaces: sources: services: dhcpv6-client ssh ports: 80/tcp ... Lo mismo se aplica a la apertura de otros puertos. Puede eliminar fácilmente el puerto ( --remove-port=80/tcp + a --reload ), consulte los documentos de firewalld .
Para probar desde una computadora remota
python3 -m http.server 80 curl ip-of-oc-vps:80También perdí mucho tiempo en el firewall de Oracle Cloud Always Free vps. Espero que esto pueda ahorrarle tiempo a otras personas.
Si tiene una puerta de enlace de Internet y la tabla de rutas también está configurada, es posible que aún deba verificar el firewall del nivel del sistema operativo. Si eso no está configurado, es posible que deba ejecutar este comando: sudo ufw allow http Para obtener más detalles, consulte: Cómo abrir/permitir un puerto de firewall entrante en Ubuntu
Perdí mucho tiempo en esto. Desearía haber encontrado esto primero: https://docs.cloud.oracle.com/en-us/iaas/developer-tutorials/tutorials/apache-on-ubuntu/01oci-ubuntu-apache-summary.htm
configurar la ruta de ingreso para el puerto 80
instalar ubuntu.
instalar apache/nginx
curl localhost debería recuperar la página web en formato de texto, sin embargo, falla en Internet.
olvídese del cortafuegos ufw: esto puede causar problemas con el cortafuegos de Oracle
utilizar
$ sudo iptables -I INPUT 6 -m state --state NEW -p tcp --dport 80 -j ACCEPT $ sudo netfilter-persistent saveg) probar su página web a través de Internet