记录一些常用 LINUX 指令

iptables

基本格式:iptables [-t table] COMMAND [chain] CRETIRIA -j ACTION

参数含义:

  • -t 指定需要维护的防火墙规则表 filter、nat、mangle或raw。在不使用 -t 时则默认使用 filter 表
  • COMMAND:子命令,定义对规则的管理
  • chain:指明链表
  • CRETIRIA:匹配参数
  • ACTION:触发动作

常用 COMMAND:

命令功能
-A添加防火墙规则
-D删除防火墙规则
-I插入防火墙规则
-F清空防火墙规则
-L列出添加防火墙规则

使用 -A 选项添加防火墙规则会将该规则追加到整个链的最后,而使用 -I 选项添加的防火墙规则则会默认插入到链中作为第一条规则

常用匹配规则

参数功能
-p匹配协议
–dport匹配目标端口
–dports匹配目标端口

触发动作

触发动作功能
ACCEPT允许数据包通过
DROP丢弃数据包
REJECT拒绝数据包通过

查看规则(需要 root 权限):iptables -nvL

各参数的含义为:

  • -L 表示查看当前表的所有规则,默认查看的是 filter 表,如果要查看 nat 表,可以加上 -t nat 参数。
  • -n 表示不对 IP 地址进行反查,加上这个参数显示速度将会加快。
  • -v 表示输出详细信息,包含通过该规则的数据包数量、总字节数以及相应的网络接口。

例子:

开启端口:iptables -A INPUT -p tcp --dport 端口号 -j ACCEPT

关闭端口:iptables -A INPUT -p tcp --dport 端口号 -j REJECT

开启范围端口:iptables -A INPUT -p tcp --dport 端口号:端口号 -j ACCEPT

防火墙备份:使用 iptables-persistent 永久保存 iptables 规则

iptables-persistent 安装指令 sudo apt install iptables-persistent

保存指令 netfilter-persistent save

Nginx

更新软件列表 sudo apt update

安装指令 sudo apt install nginx

  1. 进入 /etc/nginx/conf.d/,在该文件夹下建立 domain.confdomain 为方便记忆的名称,一般写域名(一个域名使用一个配置文件)
  2. 编辑 domain.conf,输入以下内容
1
2
3
4
5
6
7
8
server
{
listen 80; #监听端口设为 80。
server_name mikufans.ink; #绑定您的域名。
index index.htm index.html index.php; #指定默认文件。
root /home/www/mikufans.ink; #指定网站根目录。
include location.conf; #当您需要调用其他配置文件时才粘贴此项,如无需要,请删除此项。
}

若写多个域名规则则写多个 server 块即可

若需要强制 www 永久跳转(301跳转)则在 server 块中加入 rewrite ^/(.*) http://www.mikufans.ink/$1 permanent;

  1. 保存后使用 nginx -t 检查配置是否有误
  2. 执行 systemctl restart nginx 重启 nginx 服务,执行 systemctl reload nginx 重新载入 Nginx 服务

查看架构

指令:uname -a