4.10. 配置支持 TLS 的 NFS 服务器
如果没有 RPCSEC_GSS
协议,NFS 流量默认是未加密的。从 Red Hat Enterprise Linux 10 开始,可以使用 TLS 配置 NFS,允许默认加密 NFS 流量。
先决条件
- 您已配置了 NFSv4 服务器。具体步骤请参阅 配置只使用 NFSv4 的服务器。
- 您有一个证书颁发机构(CA)证书。
-
已安装
ktls-utils
软件包。
流程
创建私钥和证书签名请求(CSR):
openssl req -new -newkey rsa:4096 -noenc \ -keyout /etc/pki/tls/private/server.example.com.key \ -out /etc/pki/tls/private/server.example.com.csr \ -subj "/C=US/ST=State/L=City/O=Organization/CN=server.example.com" \ -addext "subjectAltName=DNS:server.example.com,IP:192.0.2.1"
# openssl req -new -newkey rsa:4096 -noenc \ -keyout /etc/pki/tls/private/server.example.com.key \ -out /etc/pki/tls/private/server.example.com.csr \ -subj "/C=US/ST=State/L=City/O=Organization/CN=server.example.com" \ -addext "subjectAltName=DNS:server.example.com,IP:192.0.2.1"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要通用名称(CN)和 DNS 必须与主机名匹配。IP 必须与主机的 IP 匹配。
-
将
/etc/pki/tls/private/server.example.com.csr
文件发送到 CA 并请求服务器证书。将收到的 CA 证书和服务器证书存储在主机上。 将 CA 证书导入到系统的信任存储中:
cp ca.crt /etc/pki/ca-trust/source/anchors update-ca-trust
# cp ca.crt /etc/pki/ca-trust/source/anchors # update-ca-trust
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将服务器证书移到
/etc/pki/tls/certs/
目录中:mv server.example.com.crt /etc/pki/tls/certs/
# mv server.example.com.crt /etc/pki/tls/certs/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 确保 SELinux 上下文在私钥和证书上正确:
restorecon -Rv /etc/pki/tls/certs/
# restorecon -Rv /etc/pki/tls/certs/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将服务器证书和私钥添加到
/etc/tlshd.conf
文件的[authenticate.server]
部分:x509.certificate= /etc/pki/tls/certs/server.example.com.crt x509.private_key= /etc/pki/tls/private/server.example.com.key
x509.certificate= /etc/pki/tls/certs/server.example.com.crt x509.private_key= /etc/pki/tls/private/server.example.com.key
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 保留
x509.truststore
参数未设置。启用并启动
tlshd
服务:systemctl enable --now tlshd.service
# systemctl enable --now tlshd.service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow