Trả lời nhanh: Docker capabilities seccomp chỉ nên được bật sau khi đã xác định principal, boundary và đường deny. Bài này đưa cấu hình/lệnh có thể chạy ở staging, cách kiểm tra output và điều kiện revoke/rollback; thay hostname, version và quyền bằng giá trị của hệ thống thật.
Phạm vi: Bài áp dụng cho Linux capabilities trong môi trường staging/standalone. Kiểm tra Nginx/Docker/OS/database và phiên bản CLI thực tế trước khi chạy; không đưa credential thật vào lệnh, log hay artifact.

Tín hiệu cần đối chiếu: Linux capabilities; drop all/add tối thiểu; seccomp profile; mối đe dọa; cấu hình/lệnh; output kỳ vọng; rollback/thu hồi
Linux capabilities — thao tác và bằng chứng
Ở mục này, hãy trả lời câu hỏi quyền nào được phép chạm vào Linux capabilities và dữ liệu nào phải bị chặn. Với Docker capabilities seccomp, xác định principal, boundary và đường deny trước khi bật policy. Docker—Runtime security
Nếu allow hoạt động nhưng deny không có log tương ứng, policy đang mở sai hoặc audit chưa gắn đúng hook. Tạm dừng rollout, giữ config hash và kiểm tra lại trên staging. (container-capabilities-seccomp-hardening · outline 1)
Với Linux capabilities, ghi lại input và phiên bản CLI trước khi chạy; sau đó đối chiếu từng tín hiệu mối đe dọa, cấu hình/lệnh, output kỳ vọng, rollback/thu hồi, Linux capabilities, drop all/add tối thiểu, seccomp profile trong stdout, stderr hoặc log audit. Kết quả đạt phải chỉ ra trạng thái và phạm vi tài nguyên; kết quả lỗi phải có chuỗi nhận diện để người trực ca biết bước khoanh vùng kế tiếp. Gắn transcript với container-capabilities-seccomp-hardening, commit/config hash, owner và timestamp. Không dùng exit code đơn độc làm bằng chứng. Che token, private key, cookie và PII trước khi lưu artifact; giữ bản raw trong kho có quyền hạn nếu incident yêu cầu.
drop all/add tối thiểu — thao tác và bằng chứng
Đặt thay đổi drop all/add tối thiểu trong file/version riêng để có thể diff. Lệnh `docker inspect demo/app –format '{{.HostConfig.CapDrop}} {{.HostConfig.SecurityOpt}}'` chỉ là điểm kiểm tra; đối chiếu mối đe dọa với cấu hình/lệnh, không suy ra an toàn chỉ từ exit code 0. Docker—Runtime security
Nếu phát hiện credential trong layer/log/backup, revoke hoặc rotate trước khi dọn artifact. Rollback cấu hình không thu hồi được secret đã lộ. (container-capabilities-seccomp-hardening · outline 2)
Một lần kiểm tra drop all/add tối thiểu chỉ có giá trị khi lặp lại được. Chốt workload, hostname, digest hoặc schema, rồi chạy lệnh tương ứng với container-capabilities-seccomp-hardening. Đối chiếu các tín hiệu bắt buộc (mối đe dọa, cấu hình/lệnh, output kỳ vọng, rollback/thu hồi, Linux capabilities, drop all/add tối thiểu, seccomp profile) với expected output và error signature; nếu thiếu dữ liệu, ghi unknown. So sánh baseline trước/sau trong cùng cửa sổ và nêu rõ điều gì không được suy ra từ phép đo. Artifact thay đổi cần ghi config diff đã redact, người chịu trách nhiệm và thời điểm hết hạn exception trước khi promote.
seccomp profile — thao tác và bằng chứng
Khi rà seccomp profile, thử cả request hợp lệ và request bị từ chối. Ghi user/role, status, log key và thời điểm; che token, cookie, private key trước khi lưu artifact. Docker—Runtime security
Sau khi sửa, chạy lại test với tài khoản ít quyền nhất và một tài khoản bị từ chối. Chỉ promote khi kết quả khớp threat model và đã lưu đủ bằng chứng allow/deny. (container-capabilities-seccomp-hardening · outline 3)
Đừng gộp seccomp profile vào một checklist chung. Tạo một phép thử nhỏ có điều kiện, ghi command, exit code, metric và log line riêng cho container-capabilities-seccomp-hardening. Các marker mối đe dọa, cấu hình/lệnh, output kỳ vọng, rollback/thu hồi, Linux capabilities, drop all/add tối thiểu, seccomp profile phải xuất hiện ở đúng section để người đọc có thể truy từ claim tới evidence. Khi kết quả không khớp expected (Output của container-capabilities-seccomp-hardening phải có trạng thái success và error phân biệt bằng exit code/stderr; unknown flag, permission denied hoặc timeout dẫn tới nhánh khoanh vùng riêng.), dừng rollout/restore, giữ hiện trường và mở issue thay vì sửa nhiều biến cùng lúc. Artifact công khai chỉ chứa giá trị đã che và hash kiểm chứng.

AppArmor/SELinux — thao tác và bằng chứng
Ở mục này, hãy trả lời câu hỏi quyền nào được phép chạm vào AppArmor/SELinux và dữ liệu nào phải bị chặn. Với Docker capabilities seccomp, xác định principal, boundary và đường deny trước khi bật policy. Docker—Runtime security
Nếu allow hoạt động nhưng deny không có log tương ứng, policy đang mở sai hoặc audit chưa gắn đúng hook. Tạm dừng rollout, giữ config hash và kiểm tra lại trên staging. (container-capabilities-seccomp-hardening · outline 4)
Trong runbook của container-capabilities-seccomp-hardening, AppArmor/SELinux là điểm quyết định: allow/deny, ready/not-ready, pass/fail hoặc baseline/regression. Định lượng bằng tín hiệu mối đe dọa, cấu hình/lệnh, output kỳ vọng, rollback/thu hồi, Linux capabilities, drop all/add tối thiểu, seccomp profile, ghi phiên bản và phạm vi áp dụng, rồi nêu ngưỡng chuyển sang rollback. Một output xanh nhưng dependency hoặc health đỏ vẫn là fail. Sau khi sửa, chạy lại cùng lệnh và lưu kết quả cạnh config hash; revoke/rotate credential trước khi dọn mọi bản sao chứa secret.
test chức năng — thao tác và bằng chứng
Đặt thay đổi test chức năng trong file/version riêng để có thể diff. Lệnh `docker run –cap-drop=ALL –cap-add=NET_BIND_SERVICE –security-opt no-new-privileges:true –security-opt seccomp=default.json demo/app` chỉ là điểm kiểm tra; đối chiếu mối đe dọa với cấu hình/lệnh, không suy ra an toàn chỉ từ exit code 0. Docker—Runtime security
Nếu phát hiện credential trong layer/log/backup, revoke hoặc rotate trước khi dọn artifact. Rollback cấu hình không thu hồi được secret đã lộ. (container-capabilities-seccomp-hardening · outline 5)
Với test chức năng, ghi lại input và phiên bản CLI trước khi chạy; sau đó đối chiếu từng tín hiệu mối đe dọa, cấu hình/lệnh, output kỳ vọng, rollback/thu hồi, Linux capabilities, drop all/add tối thiểu, seccomp profile trong stdout, stderr hoặc log audit. Kết quả đạt phải chỉ ra trạng thái và phạm vi tài nguyên; kết quả lỗi phải có chuỗi nhận diện để người trực ca biết bước khoanh vùng kế tiếp. Gắn transcript với container-capabilities-seccomp-hardening, commit/config hash, owner và timestamp. Không dùng exit code đơn độc làm bằng chứng. Che token, private key, cookie và PII trước khi lưu artifact; giữ bản raw trong kho có quyền hạn nếu incident yêu cầu.
audit thay đổi — thao tác và bằng chứng
Khi rà audit thay đổi, thử cả request hợp lệ và request bị từ chối. Ghi user/role, status, log key và thời điểm; che token, cookie, private key trước khi lưu artifact. Docker—Runtime security
Sau khi sửa, chạy lại test với tài khoản ít quyền nhất và một tài khoản bị từ chối. Chỉ promote khi kết quả khớp threat model và đã lưu đủ bằng chứng allow/deny. (container-capabilities-seccomp-hardening · outline 6)
Một lần kiểm tra audit thay đổi chỉ có giá trị khi lặp lại được. Chốt workload, hostname, digest hoặc schema, rồi chạy lệnh tương ứng với container-capabilities-seccomp-hardening. Đối chiếu các tín hiệu bắt buộc (mối đe dọa, cấu hình/lệnh, output kỳ vọng, rollback/thu hồi, Linux capabilities, drop all/add tối thiểu, seccomp profile) với expected output và error signature; nếu thiếu dữ liệu, ghi unknown. So sánh baseline trước/sau trong cùng cửa sổ và nêu rõ điều gì không được suy ra từ phép đo. Artifact thay đổi cần ghi config diff đã redact, người chịu trách nhiệm và thời điểm hết hạn exception trước khi promote.
Recipe lệnh/config cho container-capabilities-seccomp-hardening
Chạy ở staging cho Docker capabilities seccomp với hostname, path và digest đã thay bằng giá trị không nhạy cảm. Lưu exit code cùng stdout/stderr đã redact và gắn artifact với container-capabilities-seccomp-hardening.
docker run --cap-drop=ALL --cap-add=NET_BIND_SERVICE --security-opt no-new-privileges:true --security-opt seccomp=default.json demo/app
docker inspect demo/app --format '{{.HostConfig.CapDrop}} {{.HostConfig.SecurityOpt}}'
# syscall audit: operation not permitted; root is not required
Expected output và error signature — container-capabilities-seccomp-hardening
Output của container-capabilities-seccomp-hardening phải có trạng thái success và error phân biệt bằng exit code/stderr; unknown flag, permission denied hoặc timeout dẫn tới nhánh khoanh vùng riêng. Đối chiếu thêm version, timestamp, health/readiness và log liên quan; output minh họa không phải kết quả production.

Rollback và stop boundary của container-capabilities-seccomp-hardening
Dừng promote container-capabilities-seccomp-hardening khi quyền deny/allow hoặc audit không khớp threat model. Revoke/rotate credential đã lộ, giữ config hash và log, rồi khôi phục revision được owner xác nhận.
Failure mode cần tránh ở Linux capabilities
- Linux capabilities: thay đổi nhiều biến cùng lúc nên không biết nguyên nhân.
- Linux capabilities: đọc exit code nhưng bỏ qua health, dependency hoặc error signature.
- Linux capabilities: lưu secret/PII trong log, image layer, backup hoặc ảnh chụp.
- Linux capabilities: rollback nhầm failure domain làm blast radius lớn hơn.
Đọc tiếp trong cùng cụm Linux/DevOps — container-capabilities-seccomp-hardening
firewall tren linux và docker cho nguoi moi
Nguồn chính thức cho container-capabilities-seccomp-hardening
Docker—Runtime security; Docker—Seccomp
FAQ theo đúng chủ đề Docker capabilities seccomp
Linux capabilities áp dụng cho phiên bản nào?
Kiểm tra version/tool và topology trước khi áp dụng Linux capabilities. Chạy recipe ở trên trong staging; nếu expected/error signature khác, dừng và cập nhật runbook thay vì copy nguyên lệnh.
drop all/add tối thiểu áp dụng cho phiên bản nào?
Kiểm tra version/tool và topology trước khi áp dụng drop all/add tối thiểu. Chạy recipe ở trên trong staging; nếu expected/error signature khác, dừng và cập nhật runbook thay vì copy nguyên lệnh.
seccomp profile áp dụng cho phiên bản nào?
Kiểm tra version/tool và topology trước khi áp dụng seccomp profile. Chạy recipe ở trên trong staging; nếu expected/error signature khác, dừng và cập nhật runbook thay vì copy nguyên lệnh.
AppArmor/SELinux áp dụng cho phiên bản nào?
Kiểm tra version/tool và topology trước khi áp dụng AppArmor/SELinux. Chạy recipe ở trên trong staging; nếu expected/error signature khác, dừng và cập nhật runbook thay vì copy nguyên lệnh.
Cập nhật container-capabilities-seccomp-hardening: 08/09/2026. Nội dung là runbook tham khảo; phải kiểm tra phiên bản, nguồn chính thức và rollback trong môi trường thật trước khi áp dụng. Safety boundary: Không thay thế tư vấn chuyên môn; kiểm tra tình huống thực tế trước khi áp dụng.
