Skip to content

Nginx安装与常用防火墙指令

环境:Centos7 or Ubuntu20

安装 Nginx

1、首先将系统软件包更新到最新版本

  • yum -y update // centos
  • apt-get update // ubuntu

2、接下来,使用 yum 包管理器从 EPEL 存储库安装 Nginx

  • yum install -y epel-release && yum install -y nginx // centos
  • apt-get install nginx // ubuntu

ps:epel-是为“红帽系”的操作系统提供额外的软件包,适用于Linux操作系统。”epel-release”的软件包会自动配置yum的软件仓库。

3、管理 Nginx 服务

  • systemctl start nginx // 启动
  • systemctl enable nginx // 设置开机自启
  • systemctl status nginx // 查看nginx状态
  • systemctl start firewalld // 开启防火墙,没有任何提示即开启成功。

Nginx默认核心文件和目录

  • Nginx 目录(包含配置文件的根目录):/etc/nginxNginx
  • 主配置文件:/etc/nginx/nginx.conf。可以在 /etc/nginx/conf.d 中添加 server (虚拟主机)配置
  • 默认欢迎页面目录:/usr/share/nginx/html

4、配置 firewalld 以允许 Nginx 流量

centos

  • firewall-cmd --zone=public --permanent --add-service=http // 开放80
  • firewall-cmd --zone=public --permanent --add-service=https // 开放443
  • firewall-cmd --reload // 重启防火墙
  • 开放防火墙指定端口:firewall-cmd --zone=public --add-port=80/tcp --permanent

ps:默认情况下,$\color{blue}{CentOS 7 内置防火墙设置不开放 http 端口}$,所以 nginx 暴露的服务可能无法访问。要允许 Nginx 上的流量,使用以下命令更新系统防火墙规则,来允许 HTTP 和 HTTPS 上的入站数据包。

ubuntu

常用防火墙命令

systemctl stop firewalld // 关闭

systemctl disable firewalld // 开机禁用

systemctl status firewalld// 查看防火墙状态

yum install firewalld //安装

systemctl start firewalld // 开启

systemctl restart firewalld // 重启

iptables -L -n // 查看规则,这个命令是和 iptables 的相同的

firewall-cmd --zone=public --add-port=80/tcp --permanent // 开放防火墙指定端口