# nginx那些事
# Linux (Ubuntu)
# 下载
# 查看更新apt-get软件包
sudo apt-get update
# apt-get下载nginx, 会自动编译安装
# 默认安装目录是 /usr/sbin/nginx
# 配置文件目录是 /etc/nginx
# 关键配置文件是 /etc/nginx/nginx.conf
sudo apt-get install nginx
# 启停相关指令
# 启动|关闭|重启|热加载(只修改配置文件,不中断情况下热加载)nginx
sudo systemctl start|stop|restart|reload nginx
# 默认情况下Nginx会随这服务器启动而启动,可以手动进行禁止|启动
sudo systemctl disable|enable nginx
# 每次修改完配置文件之后,检查是否有错误
sudo systemctl -t
# 删除nginx进程来停止nginx的运行
sudo killall nginx
# 通过查看Nginx进程判断nginx是否启动,用ps -ef列出进程列表,然后通过grep过滤判断nginx是否启动。
ps -ef | grep nginx
# 直接查看nginx进程id,有返回pid号说明nginx启动了
ps -C nginx -o pid
# 卸载问题(基于上述安装方式进行卸载的)
# 停止nginx服务
sudo systemctl stop nginx
# 删除nginx, -purge包括配置文件
sudo apt-get --purge remove nginx
# 自动移除全部不使用的软件包
sudo apt-get autoremove
# 列出包含nginx名字的软件
dpkg --get-selections|grep nginx
# 并依次上述删除对应软件(主要是nginx, nginx-common, nginx-core)
sudo apt-get --purge remove nginx
sudo apt-get --purge remove nginx-common
sudo apt-get --purge remove nginx-core
# 确认卸载是否完成
dpkg --get-selections|grep nginx # nginx, nginx-common, nginx-core这些信息都不会有
which nginx # 不显示任何东西
# 防火墙问题
防火墙是用来监视和过滤进出网络流量的工具。它通过定义一系列安全规则来决定是否允许或者屏蔽指定的流量。
Ubuntu自带的防火墙配置工具(默认安装的)称之为 UFW(Uncomplicated Firewall)
。UFW是一个用来管理iptables防火规则的前端工具
(访问友好),其核心目的是为了让管理iptables更简单。
sudo ufw status verbose
指令查看UFW的开启状态,默认是inactive
(不活动)。
默认情况下,UFW 阻塞了所有进来的连接,但允许所有出去的连接。这意味着任何人无法访问你的服务器,除非你打开端口
。运行在服务器上的应用和服务可以访问外面的世界。
sudo ufw status
查看使用防火墙之后的状态(同上)。
sudo ufw enable|disable
开启/关闭防火墙 (默认设置是’disable’)。
sudo ufw reset
重置UFW。
sudo ufw allow(delete allow) xxx
开启(禁用)xx端口。
sudo ufw app list
查看有如下配置方案:
hll@hll-VirtualBox:/etc/nginx$ sudo ufw app list
可用应用程序:
CUPS
Nginx Full
Nginx HTTP
Nginx HTTPS
Nginx Full:开端口 80 正常,未加密的网络流量;端口 443 TLS / SSL 加密的流量
Nginx HTTP:仅打开端口 80 正常,未加密
Nginx HTTPS:仅打开端口 443 TLS / SSL 加密
sudo ufw app info 'Nginx Full'
用来查看 Nginx Full
的具体配置信息。
sudo ufw allow 'Nginx Full'
给nginx开启 Nginx Full
配置方案。