# Gentoo Hardened 与安全强化

URL: https://caijiao.org/gentoo/security-hardened
Source: docs/gentoo/security-hardened.md
Description: 本章介绍 Gentoo 系统安全强化方法，包括 Hardened 配置、PaX/Grsecurity、用户权限管理和防护策略。

在掌握内核裁剪与嵌入式 Gentoo 后，下一步是 **学习 Gentoo Hardened 与安全强化**，提升系统抗攻击能力和整体安全性。

## 一、Gentoo Hardened 概述

- **Hardened Gentoo**：通过安全补丁和增强工具强化系统  
- 提供 PaX、Grsecurity、stack-smashing protection 等安全特性  
- 适用于服务器和高安全要求环境

## 二、启用 Hardened Profile

1. 查看可用 Profile：

```bash
eselect profile list
````

2. 切换到 Hardened Profile：

```bash
eselect profile set <number>
```

- 包含安全编译选项、堆栈保护和 PIE 默认开启

## 三、安全编译选项

编辑 `/etc/portage/make.conf`：

```bash
CFLAGS="-O2 -fstack-protector-strong -D_FORTIFY_SOURCE=2 -fPIC -fPIE"
CXXFLAGS="${CFLAGS}"
FEATURES="hardened ccache"
```

- `-fstack-protector-strong`：保护栈溢出
- `_FORTIFY_SOURCE=2`：强化库函数安全
- PIE（Position Independent Executable）：提高地址随机化

## 四、PaX / Grsecurity 内核强化

1. 安装 Hardened 内核：

```bash
emerge --ask sys-kernel/hardened-sources
```

2. 配置内核安全选项（PaX/Grsecurity）：

```bash
make menuconfig
# Kernel hacking -> PaX / Grsecurity options
```

3. 编译并安装内核：

```bash
make -j$(nproc) && make modules_install
make install
grub-mkconfig -o /boot/grub/grub.cfg
```

## 五、用户权限与服务安全

1. 限制普通用户权限，避免使用 root 执行日常操作
2. 使用 sudo 或 Polkit 控制权限
3. 禁用不必要服务，减少攻击面：

```bash
rc-update del <service> default
```

## 六、系统防护策略

- 定期更新 Portage 树和安全补丁
- 使用防火墙（iptables/nftables）限制访问
- 审查日志，及时发现异常行为
- 安装安全工具如 `app-emulation/firejail`、`sys-apps/audit`

## 七、建议操作

- 对服务器或关键系统强烈推荐 Hardened Profile
- 配合安全内核与编译选项，提高系统抗攻击能力
- 定期安全审计和日志分析，保持系统健康
