Quản trị VPS

Quy trình thu hồi quyền quản trị hạ tầng (Offboarding Runbook)

Runbook 10 bước thu hồi quyền quản trị hạ tầng khi nhân sự thôi việc: vô hiệu hóa IdP, xoay khóa SSH, đổi mật khẩu DB, hủy token CI/CD và rà soát audit log.

Quy trình bàn giao và thu hồi quyền quản trị hạ tầng Offboarding an toàn cho doanh nghiệp
MỤC LỤC

Trong chu trình quản trị nhân sự công nghệ, thời điểm tiếp nhận nhân sự mới (Onboarding) thường nhận được sự quan tâm chu đáo với các tài liệu hướng dẫn và quy trình cấp phát quyền rõ ràng. Ngược lại, quy trình thu hồi quyền khi nhân sự chuyển công tác hoặc rời dự án (Offboarding) lại thường bị xử lý qua loa, dựa vào trí nhớ của người quản lý hoặc phó mặc cho những thao tác đơn lẻ như khóa tài khoản email và xóa người dùng khỏi kênh chat nội bộ.

Thực tế vận hành cho thấy, một kỹ sư phát triển phần mềm hoặc kỹ sư hạ tầng sau một thời gian làm việc thường tích lũy quyền truy cập trên rất nhiều tầng hệ thống: từ khóa SSH cá nhân nằm trong máy chủ hạ tầng cụm Multi-Server, cấu hình mạng riêng ảo VPN trên máy tính xách tay, tài khoản quản trị cổng Cloud, chuỗi kết nối cơ sở dữ liệu cho đến các mã khóa cá nhân (Personal Access Token) tích hợp trong hệ thống CI/CD. Nếu chỉ khóa tài khoản email, phần lớn các quyền truy cập hạ tầng cốt lõi này vẫn âm thầm tồn tại trong nhiều tháng hoặc nhiều năm, tạo ra những "tài khoản bóng ma" làm mở rộng bề mặt dễ bị tấn công của doanh nghiệp.

Ngược lại, nếu thu hồi quyền một cách vội vã mà thiếu phương pháp, người quản trị rất dễ vô tình xóa bỏ một tài khoản hoặc thu hồi một khóa bảo mật đang được các tiến trình ngầm (cronjob, script sao lưu, pipeline phát hành mã nguồn) sử dụng, khiến các dịch vụ quan trọng bị gián đoạn đột ngột.

Khác với quy trình bàn giao với đối tác thuê ngoài sau khi triển khai xong một máy chủ đơn lẻ, bài viết này cung cấp một Runbook kỹ thuật gồm 10 bước chuẩn hóa dành cho đội ngũ nội bộ, giúp bạn thu hồi sạch sẽ toàn bộ quyền quản trị hạ tầng của nhân sự thôi việc một cách an toàn, có trật tự và không làm gián đoạn các luồng nghiệp vụ đang chạy.

Mô hình 4 phân tầng thu hồi quyền hạ tầng (Offboarding Runbook)

Nguyên tắc cốt lõi trước khi thực hiện thu hồi quyền

Để quá trình thu hồi diễn ra thuận lợi mà không gây sự cố ngoài ý muốn cho hệ thống, người quản trị cần nắm vững ba nguyên tắc kỹ thuật cơ bản:

1. Phân biệt giữa danh tính con người và tài khoản dịch vụ

Sai lầm nghiêm trọng nhất trong vận hành là để các dịch vụ tự động hóa chạy dưới danh nghĩa tài khoản của một cá nhân cụ thể.

Ví dụ, một lập trình viên cấu hình dịch vụ sao lưu dữ liệu tự động hoặc pipeline CI/CD bằng chính khóa SSH cá nhân hoặc Personal Access Token (PAT) của mình. Khi kỹ sư đó nghỉ việc và tài khoản bị vô hiệu hóa, toàn bộ luồng sao lưu ban đêm hoặc quy trình phát hành mã nguồn lập tức bị lỗi.

Trước khi thu hồi quyền của bất kỳ nhân sự nào, bạn phải rà soát và chuyển giao tất cả các tiến trình tự động sang tài khoản dịch vụ chuyên dụng (Service Account). Tài khoản dịch vụ này phải được quản lý độc lập, không gắn liền với chu trình làm việc của bất kỳ cá nhân nào trong nhóm.

2. Thu hồi theo thứ tự từ ngoài vào trong

Một quy trình an toàn cần tuân thủ thứ tự: cắt đứt kênh truy cập vòng ngoài (Identity, Network, Cloud Portal) trước khi can thiệp vào tầng máy chủ và tầng dữ liệu nội bộ.

Nếu bạn bắt đầu bằng việc thay đổi mật khẩu cơ sở dữ liệu trên máy chủ đích trong khi nhân sự vẫn đang kết nối mạng riêng ảo và mở sẵn phiên làm việc terminal, họ có thể nhìn thấy các thông báo lỗi hoặc can thiệp ngoài ý muốn. Việc cô lập quyền truy cập mạng ngay từ đầu giúp ngăn chặn khả năng can thiệp từ xa trong suốt thời gian đội ngũ quản trị tiến hành dọn dẹp các tầng bên trong.

3. Kiểm tra tính sẵn sàng của ứng dụng sau mỗi bước

Sau mỗi thao tác xoay vòng thông tin mật (như đổi mật khẩu cơ sở dữ liệu, thay đổi khóa bí mật API hoặc xóa một tài khoản hệ điều hành), người quản trị phải lập tức kiểm tra nhật ký lỗi của ứng dụng và trạng thái các container Docker để xác nhận hệ thống chính vẫn hoạt động ổn định trước khi chuyển sang bước tiếp theo.

Runbook 10 bước thu hồi quyền quản trị hạ tầng doanh nghiệp

Quy trình 10 bước dưới đây được thiết kế để áp dụng cho cả trường hợp bàn giao thông thường có kế hoạch trước lẫn trường hợp nhân sự thôi việc đột xuất.

text
[ VÒNG 1: NGOẠI VI & ĐỊNH DANH ]
Bước 1: Vô hiệu hóa tài khoản IdP trung tâm (Google / Authentik / OIDC)
Bước 2: Thu hồi quyền truy cập mạng riêng ảo (WireGuard / Tailscale)
Bước 3: Xóa tài khoản trên các Portal Cloud & Quản trị Tên miền
                   │
                   ▼
[ VÒNG 2: MÃ NGUỒN & HẠ TẦNG MÁY CHỦ ]
Bước 4: Hủy Personal Access Token (PAT) & Deploy Keys trên Git
Bước 5: Xóa SSH Public Key trên toàn bộ cụm máy chủ
Bước 6: Khóa tài khoản Linux và ngắt các phiên làm việc đang mở
                   │
                   ▼
[ VÒNG 3: DỮ LIỆU & BÍ MẬT HỆ THỐNG ]
Bước 7: Xoay vòng tài khoản và mật khẩu Cơ sở dữ liệu
Bước 8: Xoay Secret & API Keys dịch vụ bên thứ ba trong Vault
Bước 9: Rà soát và chuyển giao Cronjob, Systemd Services
                   │
                   ▼
[ VÒNG 4: HẬU KIỂM & TRUY VẾT ]
Bước 10: Giám sát nhật ký kiểm toán (Audit Trail) trong 48 giờ

Bước 1: Vô hiệu hóa tài khoản trên hệ thống định danh trung tâm

Điểm dừng chân đầu tiên là hệ thống quản lý định danh (Identity Provider - IdP) như Google Workspace, Microsoft Entra ID hoặc máy chủ Authentik tự vận hành.

Người quản trị thực hiện các thao tác:

  1. Chuyển trạng thái tài khoản của nhân sự thành vô hiệu hóa (Suspended / Disabled).
  2. Kích hoạt tính năng ngắt toàn bộ phiên làm việc (Sign out all active sessions) để chấm dứt các phiên đăng nhập web và ứng dụng OAuth đang hoạt động trên máy tính cá nhân hoặc thiết bị di động.
  3. Thu hồi tất cả các mật khẩu ứng dụng (App Passwords) và mã khóa dự phòng 2FA.

Thao tác này lập tức cắt đứt quyền truy cập của nhân sự vào hòm thư điện tử, tài liệu nội bộ và toàn bộ các ứng dụng đăng nhập thông qua cơ chế Single Sign-On (SSO).

Bước 2: Thu hồi quyền truy cập mạng riêng ảo (VPN / Mesh)

Nếu hạ tầng của bạn sử dụng mạng riêng ảo để cô lập các máy chủ nội bộ (theo mô hình mạng nội bộ Zero Trust bằng WireGuard Mesh), bước tiếp theo là xóa thiết bị của nhân sự ra khỏi cấu hình mạng.

Với mạng WireGuard truyền thống, bạn cần xóa peer tương ứng trên máy chủ gateway:

bash
# Xóa thiết bị của nhân sự khỏi phiên làm việc hiện tại của WireGuard
sudo wg set wg0 peer <CHUOI_PUBLIC_KEY_CUA_NHAN_SU> remove

# Xóa vĩnh viễn khối cấu hình [Peer] tương ứng trong tệp cấu hình
sudo sed -i '/<CHUOI_PUBLIC_KEY_CUA_NHAN_SU>/,+3d' /etc/wireguard/wg0.conf

Nếu sử dụng các giải pháp quản lý Mesh như Tailscale hoặc Netmaker, người quản trị đăng nhập vào bảng điều khiển quản trị, tìm kiếm thiết bị của nhân sự và thực hiện thu hồi quyền truy cập (Remove Device / Expire Node Key). Khi quyền VPN bị cắt, máy tính cá nhân của nhân sự không còn khả năng kết nối tới các địa chỉ IP nội bộ (10.0.x.x hoặc 192.168.x.x) của cụm máy chủ.

Bước 3: Thu hồi tài khoản trên các Portal Cloud và Quản trị Tên miền

Rà soát tất cả các cổng dịch vụ hạ tầng đám mây mà tổ chức đang sử dụng, bao gồm:

  • Cloudflare (quản trị DNS, WAF, SSL, Zero Trust Access).
  • Các nhà cung cấp máy chủ Cloud / VPS (AWS Console, Hetzner, DigitalOcean, Linode hoặc nhà cung cấp máy chủ trong nước).
  • Cổng quản trị sao lưu từ xa (như tài khoản lưu trữ S3 / Backblaze B2).

Thao tác cần thực hiện: Xóa tài khoản của nhân sự khỏi danh sách thành viên tổ chức (Organization / Team Members). Kiểm tra và xóa ngay các cặp khóa truy cập API cá nhân (API Keys / Access Tokens) mà nhân sự đó từng tạo ra trong tài khoản của họ để phục vụ việc lập trình công cụ tự động.

Bước 4: Hủy Personal Access Token (PAT) và Deploy Keys trên Git

Kho mã nguồn (GitHub / GitLab) là nơi chứa toàn bộ logic nghiệp vụ và thường chứa cả các tệp kịch bản phát hành phần mềm.

  1. Xóa thành viên khỏi Organization: Thu hồi quyền truy cập của nhân sự vào toàn bộ các repository của công ty.
  2. Kiểm tra Deploy Keys: Nhiều kỹ sư có thói quen lấy chính khóa SSH cá nhân của mình để gán làm Deploy Key cho một repository nhằm phục vụ việc kéo mã nguồn trên máy chủ. Bạn truy cập vào mục Settings -> Deploy Keys của từng dự án quan trọng. Nếu phát hiện khóa mang định danh của nhân sự nghỉ việc, hãy xóa khóa đó và thay thế bằng một khóa Deploy Key mới được sinh riêng cho máy chủ triển khai.
  3. Thu hồi Personal Access Token (PAT): Yêu cầu xóa hoặc kiểm tra danh sách token cá nhân đã từng được sử dụng để tích hợp với các Webhook hoặc máy chủ phát hành mã nguồn CI/CD.

Bước 5: Xóa khóa SSH cá nhân trên toàn bộ cụm máy chủ

Trong các hệ thống chưa triển khai SSH Certificate Authority tập trung, khóa công khai của nhân sự thường nằm trực tiếp trong tệp ~/.ssh/authorized_keys của nhiều máy chủ khác nhau.

Người quản trị cần rà soát và xóa dòng chứa khóa công khai của nhân sự này trên tất cả các node (máy chủ web, máy chủ cơ sở dữ liệu, máy chủ tác vụ ngầm, máy chủ Jump Host).

Bạn có thể chạy lệnh sau trên từng máy chủ (hoặc đẩy qua công cụ Ansible) để xóa dòng khóa chứa thông tin định danh (ví dụ email) của kỹ sư:

bash
# Xóa dòng chứa định danh của nhân sự trong tệp authorized_keys của tất cả người dùng
sudo sed -i '/tuan\.nguyen@company\.vn/d' /home/*/.ssh/authorized_keys 2>/dev/null || true
sudo sed -i '/tuan\.nguyen@company\.vn/d' /root/.ssh/authorized_keys 2>/dev/null || true

Nếu doanh nghiệp đã áp dụng mô hình SSH Certificate Authority, thao tác này đơn giản hơn rất nhiều: bạn chỉ cần thêm số sê-ri chứng chỉ của nhân sự vào Danh sách thu hồi khóa (Key Revocation List - KRL) trên máy chủ hoặc chờ chứng chỉ ngắn hạn tự động hết hiệu lực sau vài giờ.

Bước 6: Khóa tài khoản Linux và ngắt các phiên làm việc đang mở

Việc xóa khóa SSH chỉ ngăn chặn các lần đăng nhập mới trong tương lai. Nếu kỹ sư đó đang có một phiên làm việc SSH mở sẵn hoặc duy trì kết nối nền thông qua cơ chế SSH Multiplexing (ControlMaster), họ vẫn có thể tiếp tục thực thi lệnh trên máy chủ.

Để xử lý triệt để, bạn thực hiện quy trình ba bước trên từng máy chủ:

bash
# 1. Khóa mật khẩu và đặt thời hạn hết hạn cho tài khoản
sudo passwd -l devuser
sudo usermod --expiredate 1 devuser

# 2. Đổi shell đăng nhập sang nologin để chặn truy cập terminal
sudo usermod -s /usr/sbin/nologin devuser

# 3. Ngắt toàn bộ phiên làm việc của người dùng thông qua systemd logind
sudo loginctl terminate-user devuser 2>/dev/null || true

# 4. Buộc dừng tất cả các tiến trình còn lại đang chạy dưới quyền của user này
sudo pkill -u devuser -9 2>/dev/null || true

Sau khi chạy chuỗi lệnh trên, toàn bộ cửa sổ terminal đang mở của nhân sự sẽ bị đóng lại ngay lập tức và mọi nỗ lực tái kết nối đều bị hệ điều hành từ chối.

Bước 7: Xoay vòng tài khoản và mật khẩu Cơ sở dữ liệu

Cơ sở dữ liệu là nơi lưu trữ tài sản nhạy cảm nhất của doanh nghiệp. Tùy thuộc vào mô hình phân quyền đã thiết lập theo nguyên tắc phân tầng quyền truy cập, bạn thực hiện các bước sau:

  1. Xóa tài khoản cá nhân trong Database: Nếu nhân sự được cấp tài khoản truy cập cơ sở dữ liệu riêng biệt để phục vụ việc kiểm tra dữ liệu, hãy xóa tài khoản này:
sql
-- Kiểm tra tài khoản tồn tại trong MySQL
SELECT user, host FROM mysql.user WHERE user = 'tuan_dev';

-- Xóa tài khoản cá nhân
DROP USER 'tuan_dev'@'10.0.1.%';
FLUSH PRIVILEGES;
  1. Xoay vòng mật khẩu tài khoản ứng dụng (nếu cần): Nếu nhân sự từng nắm giữ mật khẩu của tài khoản ứng dụng chính (app_production) hoặc tài khoản root của cơ sở dữ liệu, việc đổi mật khẩu là điều cần thiết. Thao tác này cần được lên lịch trong khung giờ thấp điểm:
  • Đổi mật khẩu tài khoản trong hệ quản trị cơ sở dữ liệu.
  • Cập nhật chuỗi kết nối trong tệp cấu hình môi trường của ứng dụng.
  • Khởi động lại các container ứng dụng và kiểm tra nhật ký kết nối để đảm bảo ứng dụng không bị mất kết nối tới cơ sở dữ liệu.

Bước 8: Xoay Secret và API Keys dịch vụ bên thứ ba trong Vault

Nếu doanh nghiệp sử dụng kho quản lý bí mật tập trung như Infisical hoặc HashiCorp Vault:

  1. Thu hồi quyền truy cập của nhân sự vào các thư mục dự án trên hệ thống Vault.
  2. Lập danh sách các khóa API dịch vụ bên ngoài mà nhân sự từng có quyền xem mã khóa trong quá trình làm việc, bao gồm:
  • Khóa cổng thanh toán điện tử (Stripe, cổng thanh toán nội địa).
  • Khóa dịch vụ gửi thư điện tử và tin nhắn thông báo (SendGrid, Postmark, dịch vụ SMS OTP).
  • Khóa bí mật của tài khoản lưu trữ đối tượng (AWS S3 Secret Access Key / Cloudflare R2 Secret).

Tạo khóa API mới trên các dịch vụ bên ngoài, cập nhật giá trị mới vào Vault, triển khai lại cấu hình cho ứng dụng và thu hồi các khóa API cũ.

Bước 9: Rà soát và chuyển giao Cronjob, Systemd Services

Trước khi tiến hành xóa vĩnh viễn thư mục người dùng trên máy chủ, bạn cần chắc chắn không có tác vụ ngầm nào phụ thuộc vào tài khoản này.

Chạy lệnh kiểm tra các tác vụ định kỳ đã lên lịch:

bash
# Kiểm tra crontab của tài khoản
sudo crontab -u devuser -l

Tìm kiếm các tệp dịch vụ hệ thống được cấu hình chạy dưới quyền của tài khoản này:

bash
# Tìm các file service trong systemd có cấu hình User=devuser
grep -rnw '/etc/systemd/system/' -e 'User=devuser'

Nếu phát hiện có tác vụ quan trọng đang chạy dưới quyền của nhân sự, bạn chỉnh sửa tệp cấu hình dịch vụ, đổi thuộc tính User= sang một tài khoản dịch vụ phù hợp (chẳng hạn www-data hoặc một tài khoản dịch vụ chuyên trách), chạy lệnh sudo systemctl daemon-reload và khởi động lại dịch vụ để xác nhận tiến trình tiếp tục vận hành ổn định.

Bước 10: Giám sát nhật ký kiểm toán trong 48 giờ

Công việc offboarding không kết thúc ngay sau khi thu hồi quyền. Trong vòng 24 đến 48 giờ tiếp theo, người quản trị cần theo dõi sát sao nhật ký hệ thống để phát hiện các dấu hiệu bất thường:

  1. Theo dõi nhật ký xác thực SSH: Kiểm tra xem có nỗ lực kết nối nào sử dụng khóa công khai cũ từ các địa chỉ IP bên ngoài hay không:
bash
# Kiểm tra các lần thử đăng nhập SSH thất bại trên máy chủ
sudo grep "Failed publickey" /var/log/auth.log | tail -n 30
  1. Theo dõi nhật ký kiểm toán auditd: Tra cứu các lần gọi lệnh quản trị hoặc truy cập tệp cấu hình hệ thống:
bash
# Truy vấn các sự kiện liên quan đến tài khoản vừa khóa trong 24 giờ qua
sudo ausearch -ua devuser -ts yesterday -i

Nếu phát hiện các lượt thử kết nối liên tục từ địa chỉ IP của cựu nhân sự, bạn có thể bổ sung địa chỉ IP đó vào danh sách chặn của tường lửa hoặc liên hệ trao đổi trực tiếp để làm rõ vấn đề.

Quy trình hậu kiểm và đối soát truy vết trong 48 giờ sau Offboarding

Kịch bản xử lý khẩn cấp khi nhân sự thôi việc đột xuất

Trong thực tế quản lý, đôi khi doanh nghiệp phải đối mặt với các tình huống nhân sự thôi việc đột xuất, phát sinh tranh chấp hợp đồng hoặc có nguy cơ cao về việc cố tình sao chép dữ liệu và phá hoại hệ thống.

Trong kịch bản này, người quản trị không có đủ thời gian để thực hiện từng bước tuần tự kéo dài nhiều giờ. Mục tiêu trọng tâm lúc này là cô lập các kênh truy cập hạ tầng trong vòng 15 phút mà vẫn giữ cho các dịch vụ cốt lõi không bị sập.

Lộ trình phản ứng khẩn cấp 15 phút cô lập quyền truy cập hạ tầng

Lộ trình phản ứng nhanh trong 15 phút

Mốc thời gianTác vụ trọng tâmMục tiêu đạt được
Phút 0 - 3Khóa tài khoản IdP trung tâm và ngắt kết nối mạng VPN MeshVô hiệu hóa khả năng tiếp cận mạng nội bộ từ xa của nhân sự
Phút 3 - 6Thu hồi tài khoản trên Cloudflare và các portal quản trị máy chủ CloudNgăn chặn việc thay đổi bản ghi DNS, tạo snapshot dữ liệu hoặc can thiệp máy chủ từ xa
Phút 6 - 10Chạy kịch bản tự động ngắt phiên làm việc (pkill -u) và khóa tài khoản Linux trên cụm serverĐẩy nhân sự ra khỏi các cửa sổ terminal và vô hiệu hóa khóa SSH
Phút 10 - 15Thu hồi tài khoản Git và xóa quyền truy cập trên kho quản lý bí mật VaultNgăn chặn việc tải mã nguồn về máy cá nhân và bảo vệ các thông tin mật

Sau khi hoàn tất việc cô lập quyền truy cập trực tiếp trong 15 phút đầu, đội ngũ kỹ thuật có thể bình tĩnh tiến hành các bước tiếp theo như xoay vòng mật khẩu cơ sở dữ liệu và đổi các khóa API dịch vụ trong khung giờ bảo trì thích hợp.

Kịch bản bash tự động hóa quy trình kiểm tra và khóa tài khoản

Để tránh sai sót khi thao tác thủ công trên nhiều máy chủ, bạn có thể lưu hai đoạn mã kịch bản nhỏ dưới đây vào máy chủ quản trị để sử dụng khi cần thiết.

1. Kịch bản kiểm tra tài nguyên của nhân sự (audit-user.sh)

Kịch bản này giúp bạn rà soát toàn bộ tiến trình, cronjob và quyền sở hữu tệp tin của nhân sự trước khi thực hiện khóa tài khoản:

bash
#!/usr/bin/env bash
set -euo pipefail

TARGET_USER="${1:?Vui lòng nhập tên tài khoản cần rà soát}"

echo "=================================================="
echo " RÀ SOÁT TÀI NGUYÊN CỦA TÀI KHOẢN: ${TARGET_USER}"
echo "=================================================="

# Kiểm tra sự tồn tại của người dùng
if ! id "${TARGET_USER}" >/dev/null 2>&1; then
    echo "Tài khoản ${TARGET_USER} không tồn tại trên máy chủ này."
    exit 0
fi

echo -e "\n1. Các tiến trình đang chạy:"
ps -u "${TARGET_USER}" -o pid,comm,args 2>/dev/null || echo "Không có tiến trình nào đang chạy."

echo -e "\n2. Danh sách Cronjob định kỳ:"
crontab -u "${TARGET_USER}" -l 2>/dev/null || echo "Không có cronjob nào được cấu hình."

echo -e "\n3. Các dịch vụ Systemd gắn thuộc tính User=${TARGET_USER}:"
grep -rnw '/etc/systemd/system/' -e "User=${TARGET_USER}" 2>/dev/null || echo "Không tìm thấy service nào."

echo -e "\n4. Các tệp tin cấu hình trong /opt hoặc /var/www do tài khoản sở hữu:"
find /var/www /opt -user "${TARGET_USER}" -maxdepth 3 2>/dev/null | head -n 15 || echo "Không có tệp tin nào."

echo -e "\nHoàn tất rà soát."

2. Kịch bản khóa và ngắt kết nối an toàn (lock-user.sh)

Kịch bản này thực hiện việc khóa tài khoản, đóng tất cả các phiên làm việc và đổi tên tệp khóa SSH để vô hiệu hóa quyền truy cập ngay lập tức:

bash
#!/usr/bin/env bash
set -euo pipefail

TARGET_USER="${1:?Vui lòng nhập tên tài khoản cần khóa}"

echo "Bắt đầu khóa tài khoản: ${TARGET_USER}..."

# Khóa mật khẩu và hạn sử dụng tài khoản
sudo passwd -l "${TARGET_USER}"
sudo usermod --expiredate 1 "${TARGET_USER}"
sudo usermod -s /usr/sbin/nologin "${TARGET_USER}"

# Ngắt phiên làm việc đang mở
echo "Đang đóng các phiên làm việc terminal..."
sudo loginctl terminate-user "${TARGET_USER}" 2>/dev/null || true
sudo pkill -u "${TARGET_USER}" -9 2>/dev/null || true

# Vô hiệu hóa tệp authorized_keys cá nhân
USER_HOME=$(eval echo "~${TARGET_USER}")
if [ -d "${USER_HOME}/.ssh" ]; then
    echo "Vô hiệu hóa tệp authorized_keys..."
    BACKUP_FILE="${USER_HOME}/.ssh/authorized_keys.disabled.$(date +%F_%H%M%S)"
    sudo mv "${USER_HOME}/.ssh/authorized_keys" "${BACKUP_FILE}" 2>/dev/null || true
fi

echo "Đã khóa tài khoản ${TARGET_USER} an toàn."

Bảng kiểm tra tổng kết bàn giao và thu hồi quyền

Trước khi ký xác nhận hoàn tất thủ tục bàn giao kỹ thuật cho một nhân sự, người phụ trách vận hành đối chiếu lần lượt từng hạng mục trong danh sách kiểm tra sau:

STTHạng mục kiểm traTrạng thái xác nhậnNgười thực hiện
1Đã khóa tài khoản email và IdP trung tâm[ ] Đã hoàn tấtAdmin hệ thống
2Đã xóa thiết bị khỏi mạng riêng ảo WireGuard / Mesh VPN[ ] Đã hoàn tấtDevOps Lead
3Đã xóa tài khoản khỏi Cloudflare, AWS, Portal máy chủ[ ] Đã hoàn tấtTech Lead / CTO
4Đã xóa quyền truy cập kho mã nguồn GitHub/GitLab[ ] Đã hoàn tấtTech Lead
5Đã kiểm tra và xóa các Personal Access Token, Deploy Keys trên Git[ ] Đã hoàn tấtDevOps Lead
6Đã xóa SSH Public Key trong authorized_keys trên mọi máy chủ[ ] Đã hoàn tấtSysadmin
7Đã khóa tài khoản Linux và ngắt các phiên terminal đang mở[ ] Đã hoàn tấtSysadmin
8Đã xóa tài khoản Database cá nhân và xoay mật khẩu chung (nếu có)[ ] Đã hoàn tấtDBA / Tech Lead
9Đã xoay các API Secret trong kho quản lý bí mật[ ] Đã hoàn tấtDevOps Lead
10Đã chuyển giao các cronjob, systemd service sang tài khoản dịch vụ[ ] Đã hoàn tấtDevOps Lead
11Đã rà soát nhật ký auth.log và auditd trong 48 giờ sau khi khóa[ ] Đã hoàn tấtSysadmin

Một quy trình thu hồi quyền quản trị bài bản và có căn cứ kỹ thuật giúp bảo vệ tài sản số của doanh nghiệp trước các rủi ro rò rỉ dữ liệu. Đồng thời, điều này cũng bảo vệ chính nhân sự thôi việc khỏi những nghi ngờ vô căn cứ nếu hệ thống chẳng may gặp sự cố trong tương lai. Khi các ranh giới kỹ thuật được bàn giao rành mạch, cả tổ chức lẫn nhân sự đều có thể khép lại quá trình hợp tác một cách chuyên nghiệp và an tâm.

Các nội dung liên quan trong chuyên đề quản trị bảo mật

Để hoàn thiện hệ thống quản trị định danh và xây dựng các rào cản kỹ thuật tự động nhằm giảm tải thao tác thu hồi thủ công, bạn có thể tham khảo thêm các bài viết cùng chuyên đề:

  1. Khung quản trị quyền truy cập: Tìm hiểu mô hình phân tầng ranh giới và ma trận đặc quyền tối thiểu tại quản trị quyền truy cập hạ tầng CNTT trong doanh nghiệp: nguyên tắc phân tầng và ranh giới an toàn.
  2. Cấp và thu hồi khóa SSH tự động: Giải pháp loại bỏ việc quản lý khóa thủ công bằng cách sử dụng chứng chỉ ngắn hạn qua quản lý khóa SSH tập trung bằng SSH Certificate Authority (SSH CA): cấp và thu hồi quyền tự động.
  3. Mạng riêng ảo Zero Trust cho kỹ sư: Cách thức thu hồi quyền truy cập mạng tức thì chỉ với một cú nhấp chuột theo thiết lập mạng nội bộ Zero Trust cho kỹ sư từ xa bằng WireGuard Mesh.
  4. Quản lý biến môi trường an toàn: Loại bỏ rủi ro rò rỉ secret qua bài viết quản lý Secret và biến môi trường cho nhóm phát triển: chuyển từ file .env sang Infisical.
Nội dung hướng dẫn này có hữu ích với hệ thống của bạn không?

Chia sẻ bài viết hữu ích

Gửi bài viết này cho đồng nghiệp

Đọc tiếp

Bài nên đọc tiếp

Xem tất cả bài về Quản trị VPS