v2.3
This commit is contained in:
@@ -0,0 +1,464 @@
|
||||
============================================================================
|
||||
THÔNG TIN HỆ THỐNG
|
||||
============================================================================
|
||||
|
||||
Script Version: 2.0.2
|
||||
|
||||
--- Thông tin cơ bản ---
|
||||
Operating System: Ubuntu 24.04.4 LTS
|
||||
Kernel Version: 6.8.0-124-generic
|
||||
Architecture: x86_64
|
||||
Hostname: antt-ksc01
|
||||
FQDN: antt-ksc01.vascloud.vnpt.vn
|
||||
IP Address: 10.144.82.37
|
||||
All IP Addresses: 10.144.82.37
|
||||
Audit Time: 2026-07-16 14:18:53
|
||||
Timezone: Asia/Ho_Chi_Minh
|
||||
Uptime: up 1 week, 1 day, 3 hours, 45 minutes
|
||||
|
||||
--- Thông tin CPU ---
|
||||
CPU Model: Intel(R) Xeon(R) Gold 5220R CPU @ 2.20GHz
|
||||
CPU Cores: 16
|
||||
CPU Architecture: x86_64
|
||||
|
||||
--- Thông tin Memory ---
|
||||
Total Memory: 15Gi
|
||||
Used Memory: 1.5Gi
|
||||
Free Memory: 8.5Gi
|
||||
Swap Total: 15Gi
|
||||
|
||||
--- Thông tin Disk ---
|
||||
Disk Usage:
|
||||
/ 15G used of 482G (4%)
|
||||
/ 15G used of 482G (4%)
|
||||
/ 15G used of 482G (4%)
|
||||
/tmp 0 used of 7.8G (0%)
|
||||
|
||||
--- Thông tin Network Interfaces ---
|
||||
Primary Interface: ens160
|
||||
MAC Address: 00:50:56:9e:6d:4a
|
||||
Default Gateway: 10.144.82.33
|
||||
DNS Servers: 127.0.0.53
|
||||
|
||||
--- Thông tin bổ sung ---
|
||||
AppArmor Status: Enabled
|
||||
UFW Status: Status: active
|
||||
Last Boot: 2026-07-08 10:33
|
||||
Current Users: 3
|
||||
Load Average: 0.20 0.09 0.08
|
||||
Ubuntu Version Detected: 24.04
|
||||
|
||||
============================================================================
|
||||
IPv6 Status: DISABLED (kernel support not available)
|
||||
############################################################################
|
||||
{"1.1.1.1. Cấu hình vô hiệu hoá cramfs filesystem" : "PASSED"}
|
||||
{"1.1.1.2. Cấu hình vô hiệu hoá freevxfs filesystem" : "PASSED"}
|
||||
{"1.1.1.3. Cấu hình vô hiệu hoá hfs filesystem" : "PASSED"}
|
||||
{"1.1.1.4. Cấu hình vô hiệu hoá hfsplus filesystem" : "PASSED"}
|
||||
{"1.1.1.5. Cấu hình vô hiệu hoá jffs2 filesystem" : "PASSED"}
|
||||
{"1.1.1.6. Cấu hình vô hiệu hoá squashfs filesystem" : "PASSED"}
|
||||
{"1.1.1.7. Cấu hình vô hiệu hoá udf filesystem" : "PASSED"}
|
||||
{"1.1.2.1. Cấu hình tuỳ chọn nodev cho phân vùng /tmp" : "PASSED"}
|
||||
{"1.1.2.2. Cấu hình tuỳ chọn nosuid cho phân vùng /tmp" : "PASSED"}
|
||||
{"1.1.2.3. Cấu hình tuỳ chọn noexec cho phân vùng /tmp" : "PASSED"}
|
||||
-------------------
|
||||
# Chỉnh sửa file /etc/fstab và thêm tùy chọn nodev, nosuid, noexec vào trường thứ 4 trong cấu hình của phân vùng /tmp. Ví dụ:
|
||||
# tmpfs /tmp tmpfs defaults,nodev,nosuid,noexec 0 0
|
||||
# Thực hiện các lệnh sau để mount phân vùng /tmp và cập nhật cấu hình fstab:
|
||||
# mount /tmp
|
||||
# mount -o remount /tmp
|
||||
-------------------
|
||||
######################################
|
||||
{"1.1.3.1. Cấu hình tuỳ chọn nodev cho phân vùng /var/tmp" : "PASSED"}
|
||||
{"1.1.3.2. Cấu hình tuỳ chọn nosuid cho phân vùng /var/tmp" : "PASSED"}
|
||||
{"1.1.3.3. Cấu hình tuỳ chọn noexec cho phân vùng /var/tmp" : "PASSED"}
|
||||
-------------------
|
||||
# Chỉnh sửa file /etc/fstab và thêm tùy chọn nodev, nosuid, noexec vào trường thứ 4 trong cấu hình của phân vùng /var/tmp. Ví dụ:
|
||||
# tmpfs /var/tmp tmpfs defaults,nodev,nosuid,noexec 0 0
|
||||
# Thực hiện các lệnh sau để mount phân vùng /var/tmp và cập nhật cấu hình fstab:
|
||||
# mount /var/tmp
|
||||
# mount -o remount /var/tmp
|
||||
-------------------
|
||||
######################################
|
||||
{"1.1.4.1. Cấu hình tuỳ chọn nodev cho phân vùng /home" : "PASSED"}
|
||||
{"1.1.4.2. Cấu hình tuỳ chọn nosuid cho phân vùng /home" : "PASSED"}
|
||||
-------------------
|
||||
# Chỉnh sửa file /etc/fstab và thêm tùy chọn nodev, nosuid, noexec vào trường thứ 4 trong cấu hình của phân vùng /home. Ví dụ:
|
||||
# <device> /home <fstype> defaults,nodev,nosuid 0 0
|
||||
# Thực hiện các lệnh sau để cập nhật cấu hình fstab:
|
||||
# mount -o remount /home
|
||||
-------------------
|
||||
######################################
|
||||
{"1.1.5.1. Cấu hình tuỳ chọn nodev cho phân vùng /dev/shm" : "PASSED"}
|
||||
{"1.1.5.2. Cấu hình tuỳ chọn nosuid cho phân vùng /dev/shm" : "PASSED"}
|
||||
{"1.1.5.3. Cấu hình tuỳ chọn noexec cho phân vùng /dev/shm" : "PASSED"}
|
||||
-------------------
|
||||
# Chỉnh sửa file /etc/fstab và thêm tùy chọn nodev, nosuid, noexec vào trường thứ 4 trong cấu hình của phân vùng /dev/shm. Ví dụ:
|
||||
# tmpfs /dev/shm tmpfs defaults,nodev,nosuid,noexec 0 0
|
||||
# Thực hiện các lệnh sau để mount phân vùng /dev/shm và cập nhật cấu hình fstab:
|
||||
# mount /dev/shm
|
||||
# mount -o remount /dev/shm
|
||||
-------------------
|
||||
######################################
|
||||
{"1.1.6. Cấu hình sticky bit cho tất cả các thư mục dùng chung" : "PASSED"}
|
||||
{"2.2.2. Cấu hình vô hiệu hoá autofs services" : "PASSED"}
|
||||
{"1.1.8. Cấu hình vô hiệu hoá usb storage" : "PASSED"}
|
||||
{"1.2.1. Kiểm tra cài đặt AIDE" : "PASSED"}
|
||||
{"1.2.2. Cấu hình kiểm tra tính toàn vẹn của filesystem" : "PASSED"}
|
||||
{"1.3.1. Phân quyền đối với file cấu hình bootloader" : "PASSED"}
|
||||
{"1.3.2. Cấu hình xác thực khi truy cập single user mode" : "PASSED"}
|
||||
{"1.3.3. Cấu hình xác thực khi truy cập single user mode" : "PASSED"}
|
||||
{"1.4.1. Cấu hình kích hoạt ASLR (address space layout randomization)" : "PASSED"}
|
||||
{"1.4.2. Cấu hình vô hiệu hoá prelink" : "PASSED"}
|
||||
{"1.4.3. Cấu hình vô hiệu hoá core dump" : "PASSED"}
|
||||
{"1.5.1. Kiểm soát nội dung motd (Message Of The Day)" : "PASSED"}
|
||||
{"1.5.2. Kiểm soát nội dung thông báo khi đăng nhập" : "PASSED"}
|
||||
{"1.5.3. Kiểm soát nội dung thông báo khi đăng nhập từ xa" : "PASSED"}
|
||||
{"1.5.4. Cấu hình phân quyền đối với file /etc/motd" : "PASSED"}
|
||||
######################################
|
||||
{"1.5.5. Cấu hình phân quyền đối với file /etc/issue" : "PASSED"}
|
||||
{"1.5.6. Cấu hình phân quyền đối với file /etc/issue.net" : "PASSED"}
|
||||
{"1.5.7. Kiểm soát nội dung thông báo khi truy cập GNOME" : "PASSED"}
|
||||
{"2.1.1. Cấu hình sử dụng chrony" : "PASSED"}
|
||||
{"2.1.2. Cấu hình sử dụng NTP" : "PASSED"}
|
||||
|
||||
######################################
|
||||
{"2.2.1. Cấu hình vô hiệu hoá xinetd services" : "PASSED"}
|
||||
----------[PASSED]----------
|
||||
#dpkg -l | grep xinetd
|
||||
----------[PASSED]----------
|
||||
#systemctl is-enabled xinetd.service
|
||||
not-found
|
||||
----------[PASSED]----------
|
||||
#systemctl is-active xinetd.service
|
||||
inactive
|
||||
----------LOG----------
|
||||
#systemctl is-enabled xinetd.service
|
||||
not-found
|
||||
#systemctl is-active xinetd.service
|
||||
inactive
|
||||
{"2.2.3. Cấu hình vô hiệu hoá X window server services" : "PASSED"}
|
||||
{"2.2.4. Cấu hình vô hiệu hoá avahi daemon services" : "PASSED"}
|
||||
{"2.2.5. Cấu hình vô hiệu hoá cups services" : "PASSED"}
|
||||
{"2.2.6. Cấu hình vô hiệu hoá dhcp server services" : "PASSED"}
|
||||
{"2.2.7. Cấu hình vô hiệu hoá ldap server services" : "PASSED"}
|
||||
{"2.2.6. Cấu hình vô hiệu hoá NFS" : "PASSED"}
|
||||
{"2.2.8. Cấu hình vô hiệu hoá dns server services" : "PASSED"}
|
||||
|
||||
######################################
|
||||
{"2.2.9. Cấu hình vô hiệu hoá dnsmasq services" : "PASSED"}
|
||||
----------[PASSED]----------
|
||||
#grep -E "\s[7-9].[0-9]" /etc/os-release
|
||||
----------[PASSED]----------
|
||||
#dpkg-query -l dnsmasq
|
||||
----------[PASSED]----------
|
||||
#systemctl is-enabled dnsmasq.service
|
||||
not-found
|
||||
----------[PASSED]----------
|
||||
#systemctl is-active dnsmasq.service
|
||||
inactive
|
||||
----------LOG----------
|
||||
PRETTY_NAME="Ubuntu 24.04.4 LTS"
|
||||
NAME="Ubuntu"
|
||||
VERSION_ID="24.04"
|
||||
VERSION="24.04.4 LTS (Noble Numbat)"
|
||||
VERSION_CODENAME=noble
|
||||
ID=ubuntu
|
||||
ID_LIKE=debian
|
||||
HOME_URL="https://www.ubuntu.com/"
|
||||
SUPPORT_URL="https://help.ubuntu.com/"
|
||||
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
|
||||
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
|
||||
UBUNTU_CODENAME=noble
|
||||
LOGO=ubuntu-logo
|
||||
{"2.2.10. Cấu hình vô hiệu hoá ftp server services" : "PASSED"}
|
||||
{"2.2.12. Cấu hình vô hiệu hoá web server services" : "PASSED"}
|
||||
|
||||
######################################
|
||||
{"2.2.11. Cấu hình vô hiệu hoá tftp server services" : "PASSED"}
|
||||
----------[PASSED]----------
|
||||
#grep -E "\s[7-9].[0-9]" /etc/os-release
|
||||
----------[PASSED]----------
|
||||
#dpkg -l | grep tftpd-hpa
|
||||
----------[PASSED]----------
|
||||
#systemctl is-enabled tftp.socket
|
||||
not-found
|
||||
----------[PASSED]----------
|
||||
#systemctl is-enabled tftpd-hpa.service
|
||||
not-found
|
||||
----------[PASSED]----------
|
||||
#systemctl is-active tftp.socket
|
||||
inactive
|
||||
----------[PASSED]----------
|
||||
#systemctl is-active tftpd-hpa.service
|
||||
inactive
|
||||
----------LOG----------
|
||||
{"2.2.13. Cấu hình vô hiệu hoá imap and pop3 server services" : "PASSED"}
|
||||
{"2.2.14. Cấu hình vô hiệu hoá samba file server services" : "PASSED"}
|
||||
{"2.2.15. Cấu hình vô hiệu hoá web proxy server services" : "PASSED"}
|
||||
{"2.2.16. Cấu hình vô hiệu hoá snmp services" : "PASSED"}
|
||||
{"2.2.14. Cấu hình vô hiệu hoá telnetd" : "PASSED"}
|
||||
{"2.2.15. Cấu hình vô hiệu hoá rsh-server" : "PASSED"}
|
||||
{"2.2.18. Cấu hình mail transfer agents sang chế độ local-only" : "PASSED"}
|
||||
|
||||
######################################
|
||||
{"2.2.17. Cấu hình vô hiệu hoá nis server services" : "PASSED"}
|
||||
----------[PASSED]----------
|
||||
#dpkg -l | grep ypserv
|
||||
----------[PASSED]----------
|
||||
#systemctl is-enabled ypserv.service
|
||||
not-found
|
||||
----------[PASSED]----------
|
||||
#systemctl is-active ypserv.service
|
||||
inactive
|
||||
----------LOG----------
|
||||
#systemctl is-enabled ypserv.service
|
||||
not-found
|
||||
#systemctl is-active ypserv.service
|
||||
inactive
|
||||
|
||||
######################################
|
||||
{"2.2.19. Cấu hình vô hiệu hoá network file system services" : "PASSED"}
|
||||
----------[PASSED]----------
|
||||
#dpkg -l | grep nfs-kernel-server
|
||||
----------[PASSED]----------
|
||||
#systemctl is-enabled nfs-server.service
|
||||
not-found
|
||||
----------[PASSED]----------
|
||||
#systemctl is-active nfs-server.service
|
||||
inactive
|
||||
----------LOG----------
|
||||
#systemctl is-enabled nfs-server.service
|
||||
not-found
|
||||
#systemctl is-active nfs-server.service
|
||||
inactive
|
||||
{"2.2.20. Cấu hình vô hiệu hoá rsync services" : "PASSED"}
|
||||
{"2.3.1. Cấu hình vô hiệu hoá nis client" : "PASSED"}
|
||||
{"2.3.2. Cấu hình vô hiệu hoá rsh client" : "PASSED"}
|
||||
{"2.3.3. Cấu hình vô hiệu hoá talk client" : "PASSED"}
|
||||
{"2.3.4. Cấu hình vô hiệu hoá telnet client" : "PASSED"}
|
||||
{"2.3.5. Cấu hình vô hiệu hoá ldap client" : "PASSED"}
|
||||
{"2.3.6. Cấu hình vô hiệu hoá rpc" : "PASSED"}
|
||||
{"2.3.7. Cấu hình vô hiệu hoá ftp client" : "PASSED"}
|
||||
----------[PASSED]----------
|
||||
#grep -E "\s[7-9].[0-9]" /etc/os-release
|
||||
----------[PASSED]----------
|
||||
#dpkg -l | grep ftp
|
||||
ii openssh-sftp-server 1:9.6p1-3ubuntu13.16 amd64 secure shell (SSH) sftp server module, for SFTP access from remote machines
|
||||
ii tnftp 20230507-2build3 amd64 enhanced ftp client
|
||||
----------LOG----------
|
||||
|
||||
######################################
|
||||
{"3.1.1. Cấu hình vô hiệu hoá IP forwarding" : "PASSED"}
|
||||
|
||||
######################################
|
||||
{"3.1.2. Cấu hình vô hiệu hoá tính năng chuyển hướng gói tin (packet redirect)" : "PASSED"}
|
||||
|
||||
######################################
|
||||
{"3.2.1. Cấu hình từ chối các gói tin với nguồn được định tuyến trước" : "PASSED"}
|
||||
|
||||
######################################
|
||||
{"3.2.2. Cấu hình từ chối các ICMP redirect message" : "PASSED"}
|
||||
|
||||
######################################
|
||||
{"3.2.3. Cấu hình từ chối các secure ICMP redirect message" : "PASSED"}
|
||||
|
||||
######################################
|
||||
{"3.2.4. Cấu hình từ chối các gói tin ICMP request broadcast" : "PASSED"}
|
||||
|
||||
######################################
|
||||
{"3.2.5. Cấu hình bỏ qua phản hồi ICMP không hợp lệ" : "PASSED"}
|
||||
|
||||
######################################
|
||||
{"3.2.6. Cấu hình Reverse Path Filtering" : "PASSED"}
|
||||
|
||||
######################################
|
||||
{"3.3.1. Cấu hình từ chối các gói tin với nguồn được định tuyến trước (Source Routed Packet Acceptance)" : "PASSED"}
|
||||
{"3.3.2. Cấu hình từ chối các ICMP redirect message" : "PASSED"}
|
||||
{"3.3.3. Cấu hình từ chối các secure ICMP redirect message" : "PASSED"}
|
||||
{"3.3.4. Cấu hình từ chối các gói tin ICMP request broadcast" : "PASSED"}
|
||||
{"3.3.5. Cấu hình bỏ qua phản hồi ICMP không hợp lệ" : "PASSED"}
|
||||
{"3.3.6. Cấu hình Reverse Path Filtering" : "PASSED"}
|
||||
{"3.2.7. Cấu hình TCP SYN Cookies" : "PASSED"}
|
||||
{"3.3.8. Cấu hình từ chối IPv6 router advertisements" : "PASSED"}
|
||||
{"3.4.1.1. Cấu hình kích hoạt ufw" : "PASSED"}
|
||||
{"3.4.2.1. Cấu hình kích hoạt Iptables" : "PASSED"}
|
||||
{"3.4.1.2. Cấu hình vô hiệu hoá iptables-persistent, nftables khi sử dụng ufw" : "PASSED"}
|
||||
{"3.4.1.3. Cấu hình ufw loopback traffic" : "PASSED"}
|
||||
{"3.4.1.4. Cấu hình ufw rule cho tất cả các port và protocol đang mở" : "PASSED"}
|
||||
######################################
|
||||
# Các rule UFW hiện tại:
|
||||
-------------------
|
||||
Status: active
|
||||
|
||||
To Action From
|
||||
-- ------ ----
|
||||
[ 1] Anywhere on lo ALLOW IN Anywhere
|
||||
[ 2] Anywhere ALLOW OUT Anywhere on lo (out)
|
||||
[ 3] Anywhere DENY IN 127.0.0.0/8
|
||||
[ 4] 22/tcp ALLOW IN Anywhere
|
||||
[ 5] 53 ALLOW OUT Anywhere (out)
|
||||
[ 6] 80/tcp ALLOW OUT Anywhere (out)
|
||||
[ 7] 443/tcp ALLOW OUT Anywhere (out)
|
||||
[ 8] 123/udp ALLOW OUT Anywhere (out)
|
||||
[ 9] Anywhere (v6) on lo ALLOW IN Anywhere (v6)
|
||||
[10] Anywhere (v6) ALLOW OUT Anywhere (v6) on lo (out)
|
||||
[11] Anywhere (v6) DENY IN ::1
|
||||
[12] 22/tcp (v6) ALLOW IN Anywhere (v6)
|
||||
[13] 53 (v6) ALLOW OUT Anywhere (v6) (out)
|
||||
[14] 80/tcp (v6) ALLOW OUT Anywhere (v6) (out)
|
||||
[15] 443/tcp (v6) ALLOW OUT Anywhere (v6) (out)
|
||||
[16] 123/udp (v6) ALLOW OUT Anywhere (v6) (out)
|
||||
|
||||
-------------------
|
||||
# Inbound rules (ALLOW):
|
||||
Anywhere on lo ALLOW Anywhere
|
||||
22/tcp ALLOW Anywhere
|
||||
Anywhere (v6) on lo ALLOW Anywhere (v6)
|
||||
22/tcp (v6) ALLOW Anywhere (v6)
|
||||
-------------------
|
||||
# Outbound rules (ALLOW OUT):
|
||||
Anywhere ALLOW OUT Anywhere on lo
|
||||
53 ALLOW OUT Anywhere
|
||||
80/tcp ALLOW OUT Anywhere
|
||||
443/tcp ALLOW OUT Anywhere
|
||||
123/udp ALLOW OUT Anywhere
|
||||
Anywhere (v6) ALLOW OUT Anywhere (v6) on lo
|
||||
53 (v6) ALLOW OUT Anywhere (v6)
|
||||
80/tcp (v6) ALLOW OUT Anywhere (v6)
|
||||
443/tcp (v6) ALLOW OUT Anywhere (v6)
|
||||
123/udp (v6) ALLOW OUT Anywhere (v6)
|
||||
-------------------
|
||||
# IPv6 rules:
|
||||
Anywhere (v6) on lo ALLOW Anywhere (v6)
|
||||
Anywhere (v6) DENY ::1
|
||||
22/tcp (v6) ALLOW Anywhere (v6)
|
||||
Anywhere (v6) ALLOW OUT Anywhere (v6) on lo
|
||||
53 (v6) ALLOW OUT Anywhere (v6)
|
||||
80/tcp (v6) ALLOW OUT Anywhere (v6)
|
||||
443/tcp (v6) ALLOW OUT Anywhere (v6)
|
||||
123/udp (v6) ALLOW OUT Anywhere (v6)
|
||||
######################################
|
||||
{"3.4.1.5. Cấu hình chính sách từ chối mặc định cho ufw" : "PASSED"}
|
||||
{"3.4.2.2. Cấu hình vô hiệu hoá ufw, nftables khi sử dụng iptables" : "PASSED"}
|
||||
{"3.4.2.3. Cấu hình iptables loopback traffic" : "PASSED"}
|
||||
{"3.4.2.4. Cấu hình iptables rule cho tất cả các port và protocol đang mở" : "PASSED"}
|
||||
{"3.4.2.5. Cấu hình chính sách từ chối mặc định cho iptables" : "PASSED"}
|
||||
{"4.1.1.1. Cấu hình kích hoạt rsyslog service" : "PASSED"}
|
||||
{"4.1.1.2. Phân quyền đối với file log sinh ra từ rsyslog" : "PASSED"}
|
||||
{"4.1.1.3. Cấu hình lưu trữ log sinh ra từ rsyslog tập trung" : "FAILED"}
|
||||
######################################
|
||||
# Chỉnh sửa file /etc/rsyslog.conf và /etc/rsyslog.d/*.conf và thêm vào 1 trong các dòng sau:
|
||||
# <files to sent to the remote log server> action(type="omfwd" target="<FQDN or ip of loghost>" port="<port number>" protocol="tcp" action.resumeRetryCount="<number of re-tries>" queue.type="LinkedList" queue.size=<number of messages to queue>") # Hoặc
|
||||
# *.* @@< FQDN or ip of loghost >
|
||||
# Thực hiện câu lệnh sau để khởi động lại rsyslog:
|
||||
# systemctl restart rsyslog
|
||||
-------------------
|
||||
#grep -E '^\h*([^#]+\s+)?action\(([^#]+\s+)?\btarget=\?[^#"]+\?\b' /etc/rsyslog.conf /etc/rsyslog.d/*.conf 2>/dev/null -ne 0
|
||||
######################################
|
||||
|
||||
######################################
|
||||
{"4.1.1.4. Phân quyền đối với tất cả các file log" : "PASSED"}
|
||||
{"4.1.2. Phân quyền đối với tất cả các file log" : "PASSED"}
|
||||
{"5.1.1. Cấu hình kích hoạt cron daemon" : "PASSED"}
|
||||
{"5.1.2. Cấu hình phân quyền cho file /etc/crontab" : "PASSED"}
|
||||
{"5.1.3. Cấu hình phân quyền cho file /etc/cron.hourly" : "PASSED"}
|
||||
{"5.1.4. Cấu hình phân quyền cho file /etc/cron.daily" : "PASSED"}
|
||||
{"5.1.5. Cấu hình phân quyền cho file /etc/cron.weekly" : "PASSED"}
|
||||
{"5.1.6. Cấu hình phân quyền cho của file /etc/cron.monthly" : "PASSED"}
|
||||
{"5.1.7. Cấu hình phân quyền cho file /etc/cron.d" : "PASSED"}
|
||||
{"5.1.8. Cấu hình at/cron hạn chế chỉ cho người dùng được ủy quyền" : "PASSED"}
|
||||
{"5.2.1. Cấu hình phân quyền cho file /etc/ssh/sshd_config" : "PASSED"}
|
||||
{"5.2.2. Cấu hình phân quyền cho các file SSH private host key" : "PASSED"}
|
||||
{"5.2.3. Cấu hình phân quyền cho các file SSH public host key" : "PASSED"}
|
||||
{"5.2.4. Cấu hình giới hạn truy cập cho máy chủ SSH" : "PASSED"}
|
||||
{"5.2.5. Cấu hình LogLevel cho máy chủ SSH" : "PASSED"}
|
||||
{"5.2.6. Cấu hình sử dụng SSH PAM" : "PASSED"}
|
||||
{"5.2.7. Cấu hình vô hiệu hoá đăng nhập bằng root cho máy chủ SSH" : "PASSED"}
|
||||
{"5.2.8. Cấu hình vô hiệu hoá HostbasedAuthentication cho máy chủ SSH" : "PASSED"}
|
||||
{"5.2.9. Cấu hình vô hiệu hoá PermitEmptyPasswords cho máy chủ SSH" : "PASSED"}
|
||||
{"5.2.10. Cấu hình vô hiệu hoá PermitUserEnviroment cho máy chủ SSH" : "PASSED"}
|
||||
{"5.2.11. Cấu hình vô hiệu hoá IgnoreRhosts cho máy chủ SSH" : "PASSED"}
|
||||
{"5.2.12. Cấu hình vô hiệu hoá X11 Forwarding cho máy chủ SSH" : "PASSED"}
|
||||
{"5.2.13. Cấu hình sử dụng các thuật toán mã hoá được cho phép" : "PASSED"}
|
||||
{"5.2.14. Cấu hình các thuật toán MAC được cho phép" : "PASSED"}
|
||||
{"5.2.15. Cấu hình thuật toán trao đổi khoá được cho phép" : "PASSED"}
|
||||
{"5.2.16. Cấu hình vô hiệu hoá SSH AllowTcpForwarding" : "PASSED"}
|
||||
{"5.2.17. Cấu hình cảnh báo SSH" : "PASSED"}
|
||||
{"5.2.18. Cấu hình SSH MaxAuthTries" : "PASSED"}
|
||||
{"5.2.19. Cấu hình SSH MaxStartups" : "PASSED"}
|
||||
{"5.2.20. Cấu hình SSH MaxSessions" : "PASSED"}
|
||||
{"5.2.21. Cấu hình SSH LoginGraceTime" : "PASSED"}
|
||||
{"5.2.22. Cấu hình khoảng thời gian chờ không hoạt động cho máy chủ SSH" : "PASSED"}
|
||||
{"5.3.1. Cấu hình điều kiện tạo mật khẩu" : "PASSED"}
|
||||
{"5.3.2. Cấu hình khoá truy cập do nhiều lần nhập mật khẩu thất bại" : "PASSED"}
|
||||
{"5.3.3. Giới hạn việc sử dụng lại mật khẩu" : "PASSED"}
|
||||
{"5.3.4. Cấu hình thuật toán hash mật khẩu mạnh" : "FAILED"}
|
||||
######################################
|
||||
# Đối với phiên bản 22.04 trở lên:
|
||||
# Chỉnh sửa file /etc/pam.d/common-password đảm bảo rằng không có bất cứ thuật toán hash nào được cấu hình trong pam_unix.so như dưới đây:
|
||||
# password [success=1 default=ignore] pam_unix.so remember=5
|
||||
# Thêm hoặc chỉnh sửa ENCRYPT_METHOD trong file /etc/login.defs như sau:
|
||||
# ENCRYPT_METHOD yescrypt
|
||||
# Đối với phiên bản 20.04 trở về trước: Chỉnh sửa file /etc/pam.d/common-password để có tuỳ chọn sha512 cho pam_unix.so như dưới đây:
|
||||
# password [success=1 default=ignore] pam_unix.so sha512 remember=5
|
||||
-------------------
|
||||
#grep -P "^\h*password\h*\[success=1 default=ignore\]\h*pam_unix.so.*sha512" /etc/pam.d/common-password -ne 0
|
||||
-------------------
|
||||
#grep -v ^# /etc/pam.d/common-password | grep -E "(yescrypt|md5|bigcrypt|sha256|sha512|blowfish)" -eq 0
|
||||
password [success=1 default=ignore] pam_unix.so obscure use_authtok try_first_pass yescrypt
|
||||
######################################
|
||||
{"5.4.1.1. Cấu hình thời gian tối thiểu giữa những lần thay đổi mật khẩu" : "PASSED"}
|
||||
{"5.4.1.2. Cấu hình thời gian hết hạn sử dụng mật khẩu" : "PASSED"}
|
||||
{"5.4.1.3. Cấu hình thời gian cảnh báo mật khẩu hết hạn" : "PASSED"}
|
||||
{"5.4.1.4. Cấu hình thời gian khoá tài khoản không thay mật khẩu sau khi hết hạn" : "PASSED"}
|
||||
{"5.4.1.5. Đảm bảo thời gian thay đổi mật khẩu lần cuối hợp lệ" : "PASSED"}
|
||||
{"5.4.2. Cấu hình vô hiệu hoá đăng nhập bằng tài khoản hệ thống" : "PASSED"}
|
||||
{"5.4.3. Cấu hình group mặc định của tài khoản root" : "PASSED"}
|
||||
{"5.4.4. Cấu hình user umask mặc định" : "PASSED"}
|
||||
{"5.4.5. Cấu hình shell timeout mặc định" : "PASSED"}
|
||||
{"5.4.6. Cấu hình hạn chế truy cập cho câu lệnh su" : "PASSED"}
|
||||
{"6.1.1. Cấu hình phân quyền cho file /etc/passwd" : "PASSED"}
|
||||
{"6.1.2. Cấu hình phân quyền cho file /etc/shadow" : "PASSED"}
|
||||
{"6.1.3. Cấu hình phân quyền cho file /etc/group" : "PASSED"}
|
||||
{"6.1.4. Cấu hình phân quyền cho file /etc/gshadow" : "PASSED"}
|
||||
{"6.1.5. Cấu hình phân quyền cho file /etc/passwd-" : "PASSED"}
|
||||
{"6.1.6. Cấu hình phân quyền cho file /etc/shadow-" : "PASSED"}
|
||||
{"6.1.7. Cấu hình phân quyền cho file /etc/group-" : "PASSED"}
|
||||
{"6.1.8. Cấu hình phân quyền cho file /etc/gshadow-" : "PASSED"}
|
||||
{"6.1.9. Đảm bảo không có file world-writable tồn tại" : "PASSED"}
|
||||
{"6.1.10. Đảm bảo các file hoặc thư mục không có chủ sở hữu không tồn tại" : "PASSED"}
|
||||
{"6.1.11. Đảm bảo các file hoặc thư mục không có nhóm không tồn tại" : "PASSED"}
|
||||
{"6.2.1. Cấu hình tài khoản trong /etc/passwd sử dụng shadowed passwords" : "PASSED"}
|
||||
{"6.2.2. Đảm bảo trường mật khẩu không để trống" : "PASSED"}
|
||||
{"6.2.3. Đảm bảo mọi nhóm trong file /etc/passwd tồn tại trong file /etc/group" : "PASSED"}
|
||||
{"6.2.4. Đảm bảo shadow group rỗng" : "PASSED"}
|
||||
{"6.2.5. Đảm bảo UID không bị lặp" : "PASSED"}
|
||||
{"6.2.6. Đảm bảo GID không bị lặp" : "PASSED"}
|
||||
{"6.2.7. Đảm bảo tên người dùng không bị lặp" : "PASSED"}
|
||||
{"6.2.8. Đảm bảo tên group không bị lặp" : "PASSED"}
|
||||
{"6.2.9. Đảm bảo tính toàn vẹn cho biến môi trường PATH của root" : "FAILED"}
|
||||
######################################
|
||||
# Thực hiện đoạn script sau để kiểm tra tính toàn vẹn cho môi trường PATH của root:
|
||||
# RPCV="$(sudo -Hiu root env 2>/dev/null | grep '^PATH=' | cut -d= -f2)"; echo "$RPCV" | grep -q "::" && echo "root's path contains a empty directory (::)"; echo "$RPCV" | grep -q ":$" && echo "root's path contains a trailing (:)" ; for x in $(echo "$RPCV" | tr ":" " "); do if [ -d "$x" ]; then ls -ldH "$x" | awk '$9 == "." {print "PATH contains current working directory (.)"} $3 != "root" {print $9, "is not owned by root"} substr($1,6,1) != "-" {print $9, "is group writable"} substr($1,9,1) != "-" {print $9, "is world writable"}'; else echo "$x is not a directory"; fi; done
|
||||
# Sửa chữa hoặc lý giải kết quả tìm được.
|
||||
-------------------
|
||||
#RPCV="$(sudo -Hiu root env 2>/dev/null | grep '^PATH=' | cut -d= -f2)"; echo "$RPCV" | grep -q "::" && echo "root's path contains a empty directory (::)"; echo "$RPCV" | grep -q ":$" && echo "root's path contains a trailing (:)" ; for x in $(echo "$RPCV" | tr ":" " "); do if [ -d "$x" ]; then ls -ldH "$x" | awk '$9 == "." {print "PATH contains current working directory (.)"} $3 != "root" {print $9, "is not owned by root"} substr($1,6,1) != "-" {print $9, "is group writable"} substr($1,9,1) != "-" {print $9, "is world writable"}'; else echo "$x is not a directory"; fi; done | grep -v "/root/bin" -eq 0
|
||||
/snap/bin is not a directory
|
||||
######################################
|
||||
{"6.2.10. Đảm bảo root là tài khoản duy nhất có UID là 0" : "PASSED"}
|
||||
{"6.2.11. Đảm bảo mọi người dùng đều tồn tại thư mục home" : "PASSED"}
|
||||
{"6.2.12. Đảm bảo người dùng sở hữu thư mục home của chính họ" : "PASSED"}
|
||||
{"6.2.13. Đảm bảo quyền thư mục home của người dùng có mức bảo mật cao" : "FAILED"}
|
||||
######################################
|
||||
# Thực hiện đoạn script sau để đặt quyền cho thư mục home của tất cả người dùng là 750:
|
||||
# awk -F: '($1\!~/(halt|sync|shutdown|nfsnobody)/ && $7\!~/^(\/usr)?\/sbin\/nologin(\/)?$/ && $7\!~/(\/usr)?\/bin\/false(\/)?$/) {print $6}' /etc/passwd | while read -r dir; do if [ -d "$dir" ]; then dirperm=$(stat -L -c "%A" "$dir"); if [ "$(echo "$dirperm" | cut -c6)" != "-" ] || [ "$(echo "$dirperm" | cut -c8)" != "-" ] || [ "$(echo "$dirperm" | cut -c9)" != "-" ] || [ "$(echo "$dirperm" | cut -c10)" != "-" ]; then chmod g-w,o-rwx "$dir"; fi; fi; done
|
||||
-------------------
|
||||
#awk -F: '($1\!~/(halt|sync|shutdown|nfsnobody)/ && $7\!~/^(\/usr)?\/sbin\/nologin(\/)?$/ && $7\!~/(\/usr)?\/bin\/false(\/)?$/) {print $1 " " $6}' /etc/passwd | while read -r user dir; do if [ ! -d "$dir" ]; then echo "User: \"$user\" home directory: \"$dir\" doesn't exist"; else dirperm=$(stat -L -c "%A" "$dir"); if [ "$(echo "$dirperm" | cut -c6)" != "-" ] || [ "$(echo "$dirperm" | cut -c8)" != "-" ] || [ "$(echo "$dirperm" | cut -c9)" != "-" ] || [ "$(echo "$dirperm" | cut -c10)" != "-" ]; then echo "User: \"$user\" home directory: \"$dir\" has permissions: \"$(stat -L -c "%a" "$dir")\""; fi; fi; done -eq 0
|
||||
User: "cicd_to2" home directory: "/home/cicd_to2" has permissions: "755"
|
||||
User: "landesk" home directory: "/opt/landesk" has permissions: "755"
|
||||
######################################
|
||||
{"6.2.14. Đảm bảo không người dùng nào có file .netrc" : "PASSED"}
|
||||
{"6.2.15. Đảm bảo không người dùng nào có file .forward" : "PASSED"}
|
||||
{"6.2.16. Đảm bảo không người dùng nào có file .rhosts" : "PASSED"}
|
||||
{"6.2.17. Đảm bảo các file dot của người dùng không cấp quyền write cho group hoặc other" : "PASSED"}
|
||||
Reference in New Issue
Block a user