Appearance
DNS工作原理
域名解析分为正向解析(域名解析IP)和反向解析(IP解析域名),通过递归查询和迭代查询解析出IP地址
- 递归查询
- 浏览器检测域名解析缓存
- 本地hosts映射和缓存
- 路由器解析和缓存
- 迭代查询
- 递归DNS服务器向根服务器请求,返回一级域名地址(.com)
- 递归DNS服务器向一级域名服务器发起请求,返回二级域名(权威)地址(.example.com)
- 递归DNS服务器向二级权威服务器发起请求,返回三级域名解析IP地址
FTP主动/被动传输原理
- 主动模式:服务器主动从20端口连接客户端的数据端口(客户端告知端口号20),服务端通过20端口数据传输。
- 被动模式:服务器开放随机端口并告知客户端,由客户端发起数据连接。
NFS工作原理
- 基于RPC(远程过程调用)实现文件共享,客户端通过挂载服务器共享目录直接访问文件,依赖
portmap/rpcbind
服务。
对称加密 vs 非对称加密
- 对称加密:加解密使用同一密钥(如AES),速度快但密钥分发不安全。
- 非对称加密:使用公钥(加密)和私钥(解密,如RSA),安全性高但速度慢。
HTTPS加密实现
- 三次握手建立连接
- 非对称加密认证
- 服务端向客户端发送公钥
- 客户端保存公钥,生成对话对称秘钥
- 将对称秘钥用服务端的公钥加密发送给服务端
- 服务端收到用私钥解密获得对称秘钥
- 对称秘钥加密双方进行数据通信
rsync传输模式
- 本地传输
- 远程传输
- 守护进程模式
Linux系统优化
时间与本地时间同步,每天凌晨1:00同步一次
禁用selinux
关闭防火墙
历史命令显示操作时间
SSH远程超时限制在600s以内
禁止超户远程登录
禁止定时任务发送邮件
内核参数按需优化
减少swap使用
用户类型
- 普通用户:权限受限,家目录在
/home/
下。 - 超级用户(root):UID=0,拥有系统最高权限。
- 系统用户:用于运行服务,无登录权限(如
nginx
)。
用户管理文件
/etc/passwd
:用户基本信息(UID、GID、家目录等)。/etc/shadow
:加密密码及有效期。/etc/group
:用户组信息。
用户创建
bash
useradd -m username # 创建用户及家目录
不创建家目录,指定登录脚本
bash
useradd -M -s /path/to/script username # -M不创建家目录,-s指定登录Shell或脚本
用户删除
bash
userdel -r username # -r删除用户及家目录
创建有效期30天的用户
bash
useradd -e $(date -d "+30 days" +%Y-%m-%d) tom
MBR结构
- 引导部分:前446字节(含引导代码)。
- 分区表:随后64字节(4个主分区,每项16字节)。
- 结束标志:最后2字节(
0x55AA
)。 - 前512字节内容 = 引导代码(446B) + 分区表(64B) + 结束标志(2B)。
“No space left on device”可能原因
- 磁盘空间耗尽:
df -h
查看空间使用。 - inode耗尽:
df -i
检查inode使用(常见于小文件过多)。 - 配额限制:用户或目录达到磁盘配额限制。