This commit is contained in:
Luftmensch
2026-08-26 14:11:37 +07:00
commit e528419f9a
135 changed files with 413970 additions and 0 deletions
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,702 @@
============================================================================
THÔNG TIN HỆ THỐNG
============================================================================
Script Version: 2.0.2
--- Thông tin cơ bản ---
Operating System: Ubuntu 24.04 LTS
Kernel Version: 6.8.0-38-generic
Architecture: x86_64
Hostname: MEVAS-HL-TSC-VNPT-PORTAL-WEB-01
FQDN: MEVAS-HL-TSC-VNPT-PORTAL-WEB-01.drvascloud.vnpt.vn
IP Address: 10.144.207.2
All IP Addresses: 10.144.207.2
Audit Time: 2026-05-11 09:09:44
Timezone: Asia/Ho_Chi_Minh
Uptime: up 20 weeks, 4 days, 18 hours, 5 minutes
--- Thông tin CPU ---
CPU Model: Intel(R) Xeon(R) Gold 5220R CPU @ 2.20GHz
CPU Cores: 32
CPU Architecture: x86_64
--- Thông tin Memory ---
Total Memory: 31Gi
Used Memory: 7.4Gi
Free Memory: 4.0Gi
Swap Total: 15Gi
--- Thông tin Disk ---
Disk Usage:
/ 79G used of 782G (10%)
/ 79G used of 782G (10%)
/ 79G used of 782G (10%)
/tmp 72K used of 16G (1%)
--- Thông tin Network Interfaces ---
Primary Interface: ens160
MAC Address: 00:50:56:9c:19:09
Default Gateway: 10.144.207.1
DNS Servers: 8.8.8.8,8.8.4.4,10.159.20.134,192.168.105.101,192.168.105.102
--- Thông tin bổ sung ---
AppArmor Status: Enabled
UFW Status: Status: active
Last Boot: 2025-12-17 15:01
Current Users: 3
Load Average: 1.40 0.65 0.45
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" : "FAILED"}
######################################
# Chỉnh sửa hoặc tạo một file trong thư mục /etc/modprobe.d/filesystem.conf và thêm vào những dòng sau:
# install hfsplus /bin/true
# Thực hiện câu lệnh sau để gỡ bỏ các filesystem không thông dụng khỏi kernel:
# rmmod hfsplus
-------------------
#modprobe -n -v hfsplus 2>/dev/null | grep -P "^\h*install /bin/true" -ne 0
-------------------
#modprobe -n -v hfsplus 2>/dev/null | grep -P "^\h*install /bin/false" -ne 0
-------------------
#grep -P "^\h*blacklist\s+hfsplus" /etc/modprobe.d/*.conf 2>/dev/null -ne 0
######################################
{"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" : "FAILED"}
######################################
# Yêu cầu cấu hình:
# install squashfs /bin/true
# blacklist squashfs
# Nếu module đang load thì thực hiện: rmmod squashfs
-------------------
# Thiếu blacklist squashfs
######################################
{"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" : "FAILED"}
######################################
# Thực hiện câu lệnh sau để đặt sticky bit cho toàn bộ thư mục dùng chung:
# df --local -P | awk '{if (NR!=1) print $6}' | xargs -I '{}' find '{}' -xdev -type d \( -perm -0002 -a ! -perm -1000 \) 2>/dev/null | xargs -I '{}' chmod a+t '{}'
-------------------
#df --local -P | awk '{if (NR!=1) print $6}' | xargs -I '{}' find '{}' -xdev -type d \( -perm -0002 -a ! -perm -1000 \) 2>/dev/null -eq 0
/var/log/kaspersky/kesl-user
/var/opt/kaspersky/kesl/common/dumps-user
######################################
{"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"}
######################################
# Ghi chú: Không phát hiện GNOME/GDM trên hệ thống, bỏ qua kiểm tra.
######################################
{"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 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04 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 ftp 20230507-2build3 all dummy transitional package for tnftp
ii openssh-sftp-server 1:9.6p1-3ubuntu13.15 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"}
########## STDERR BEGIN ##########
/bin/bash: line 2: f: command not found
########## STDERR END ##########
######################################
{"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] 8983 ALLOW IN 127.0.0.1
[ 2] 8983 DENY IN Anywhere
[ 3] 11211 ALLOW IN 127.0.0.1
[ 4] 11211 DENY IN Anywhere
[ 5] 22/tcp ALLOW IN Anywhere
[ 6] 80/tcp ALLOW IN Anywhere
[ 7] 443/tcp ALLOW IN Anywhere
[ 8] 9100/tcp ALLOW IN Anywhere
[ 9] Anywhere on lo ALLOW IN Anywhere
[10] Anywhere ALLOW OUT Anywhere on lo (out)
[11] Anywhere DENY IN 127.0.0.0/8
[12] 53 ALLOW OUT Anywhere (out)
[13] 443 ALLOW OUT Anywhere (out)
[14] 80 ALLOW OUT Anywhere (out)
[15] 10.144.207.4 1521/tcp ALLOW OUT Anywhere (out)
[16] 1521/tcp ALLOW OUT Anywhere (out)
[17] 8983 (v6) DENY IN Anywhere (v6)
[18] 11211 (v6) DENY IN Anywhere (v6)
[19] 22/tcp (v6) ALLOW IN Anywhere (v6)
[20] 80/tcp (v6) ALLOW IN Anywhere (v6)
[21] 443/tcp (v6) ALLOW IN Anywhere (v6)
[22] 9100/tcp (v6) ALLOW IN Anywhere (v6)
[23] Anywhere (v6) on lo ALLOW IN Anywhere (v6)
[24] Anywhere (v6) ALLOW OUT Anywhere (v6) on lo (out)
[25] Anywhere (v6) DENY IN ::1
[26] 53 (v6) ALLOW OUT Anywhere (v6) (out)
[27] 443 (v6) ALLOW OUT Anywhere (v6) (out)
[28] 80 (v6) ALLOW OUT Anywhere (v6) (out)
[29] 1521/tcp (v6) ALLOW OUT Anywhere (v6) (out)
-------------------
# Inbound rules (ALLOW):
22/tcp ALLOW Anywhere
80/tcp ALLOW Anywhere
443/tcp ALLOW Anywhere
9100/tcp ALLOW Anywhere
Anywhere on lo ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)
443/tcp (v6) ALLOW Anywhere (v6)
9100/tcp (v6) ALLOW Anywhere (v6)
Anywhere (v6) on lo ALLOW Anywhere (v6)
-------------------
# Outbound rules (ALLOW OUT):
Anywhere ALLOW OUT Anywhere on lo
53 ALLOW OUT Anywhere
443 ALLOW OUT Anywhere
80 ALLOW OUT Anywhere
10.144.207.4 1521/tcp ALLOW OUT Anywhere
1521/tcp ALLOW OUT Anywhere
Anywhere (v6) ALLOW OUT Anywhere (v6) on lo
53 (v6) ALLOW OUT Anywhere (v6)
443 (v6) ALLOW OUT Anywhere (v6)
80 (v6) ALLOW OUT Anywhere (v6)
1521/tcp (v6) ALLOW OUT Anywhere (v6)
-------------------
# IPv6 rules:
8983 (v6) DENY Anywhere (v6)
11211 (v6) DENY Anywhere (v6)
22/tcp (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)
443/tcp (v6) ALLOW Anywhere (v6)
9100/tcp (v6) ALLOW Anywhere (v6)
Anywhere (v6) on lo ALLOW Anywhere (v6)
Anywhere (v6) DENY ::1
Anywhere (v6) ALLOW OUT Anywhere (v6) on lo
53 (v6) ALLOW OUT Anywhere (v6)
443 (v6) ALLOW OUT Anywhere (v6)
80 (v6) ALLOW OUT Anywhere (v6)
1521/tcp (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" : "PASSED"}
######################################
{"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" : "FAILED"}
######################################
# Thực hiện câu lệnh sau để đặt quyền cho toàn bộ file log:
# find /var/log -type f -exec chmod g-wx,o-rwx {} +
-------------------
#find /var/log -type f -perm /g+wx,o+rwx -ls -eq 0
201446485 4 -rw-r--r-- 1 root root 1138 Mar 25 06:37 /var/log/apt/history.log.2.gz
203353772 4 -rw-r--r-- 1 root root 1738 May 8 16:18 /var/log/apt/history.log
203353773 4 -rw-r--r-- 1 root root 144 Apr 24 15:10 /var/log/apt/history.log.1.gz
201333844 16 -rw-r--r-- 1 root root 14404 Jul 23 2024 /var/log/apt/history.log.6.gz
203873444 4 -rw-r--r-- 1 root root 1527 Jan 8 16:51 /var/log/apt/history.log.5.gz
203474216 8 -rw-r--r-- 1 root root 4113 Jan 29 06:09 /var/log/apt/history.log.4.gz
201421827 4 -rw-r--r-- 1 root root 1428 Feb 28 06:09 /var/log/apt/history.log.3.gz
201469404 36 -rw-r--r-- 1 root root 33616 May 8 16:18 /var/log/apt/eipp.log.xz
134764856 0 -rw-r--r-- 1 landscape landscape 0 Jul 23 2024 /var/log/landscape/sysinfo.log
1078179 676 -rw-r--r-- 1 root root 688840 May 3 23:50 /var/log/sysstat/sa03
141619 676 -rw-r--r-- 1 root root 688840 May 4 23:50 /var/log/sysstat/sa04
86024 1216 -rw-r--r-- 1 root root 1243684 May 4 00:07 /var/log/sysstat/sar03
1078180 676 -rw-r--r-- 1 root root 688840 May 5 23:50 /var/log/sysstat/sa05
1078207 1216 -rw-r--r-- 1 root root 1243687 May 5 00:07 /var/log/sysstat/sar04
113467 676 -rw-r--r-- 1 root root 688840 May 6 23:50 /var/log/sysstat/sa06
1078184 1216 -rw-r--r-- 1 root root 1243684 May 6 00:07 /var/log/sysstat/sar05
70923 676 -rw-r--r-- 1 root root 688840 May 7 23:50 /var/log/sysstat/sa07
1185261 1216 -rw-r--r-- 1 root root 1243684 May 7 00:07 /var/log/sysstat/sar06
1471594 676 -rw-r--r-- 1 root root 688840 May 8 23:50 /var/log/sysstat/sa08
89214 1216 -rw-r--r-- 1 root root 1243684 May 8 00:07 /var/log/sysstat/sar07
142333 680 -rw-r--r-- 1 root root 688840 May 9 23:50 /var/log/sysstat/sa09
89170 1216 -rw-r--r-- 1 root root 1243684 May 9 00:07 /var/log/sysstat/sar08
1078205 676 -rw-r--r-- 1 root root 688840 May 10 23:50 /var/log/sysstat/sa10
1159835 1216 -rw-r--r-- 1 root root 1243684 May 10 00:07 /var/log/sysstat/sar09
1159849 260 -rw-r--r-- 1 root root 263776 May 11 09:00 /var/log/sysstat/sa11
1185260 1216 -rw-r--r-- 1 root root 1243684 May 11 00:07 /var/log/sysstat/sar10
67203211 0 -rw-r--r-- 1 root root 0 Jul 23 2024 /var/log/unattended-upgrades/unattended-upgrades-shutdown.log
67218939 8 -rw-r--r-- 1 root adm 7435 Jan 9 06:27 /var/log/unattended-upgrades/unattended-upgrades-dpkg.log.4.gz
67233798 4 -rw-r--r-- 1 root adm 2235 Jan 29 06:10 /var/log/unattended-upgrades/unattended-upgrades-dpkg.log.3.gz
67233793 8 -rw-r--r-- 1 root adm 4656 Feb 28 06:10 /var/log/unattended-upgrades/unattended-upgrades-dpkg.log.2.gz
67798653 0 -rw-r--r-- 1 root adm 0 Apr 1 00:00 /var/log/unattended-upgrades/unattended-upgrades-dpkg.log
67798655 4 -rw-r--r-- 1 root adm 3819 Mar 25 06:37 /var/log/unattended-upgrades/unattended-upgrades-dpkg.log.1.gz
67224854 4 -rw-r--r-- 1 root root 602 Jul 23 2024 /var/log/unattended-upgrades/unattended-upgrades.log.6.gz
67225640 4 -rw-r--r-- 1 root root 403 Dec 17 19:51 /var/log/unattended-upgrades/unattended-upgrades.log.5.gz
67224867 4 -rw-r--r-- 1 root root 1287 Dec 31 06:03 /var/log/unattended-upgrades/unattended-upgrades.log.4.gz
67593126 8 -rw-r--r-- 1 root root 4222 Jan 31 06:22 /var/log/unattended-upgrades/unattended-upgrades.log.3.gz
67240544 4 -rw-r--r-- 1 root root 3645 Feb 28 14:50 /var/log/unattended-upgrades/unattended-upgrades.log.2.gz
67224861 0 -rw-r--r-- 1 root root 0 Apr 1 00:00 /var/log/unattended-upgrades/unattended-upgrades.log
67798651 4 -rw-r--r-- 1 root root 3272 Mar 25 06:37 /var/log/unattended-upgrades/unattended-upgrades.log.1.gz
67224858 4 -rw-r--r-- 1 root adm 1826 Jul 23 2024 /var/log/unattended-upgrades/unattended-upgrades-dpkg.log.5.gz
67333462 60 -rw-r--r-- 1 root root 61229 Apr 23 2024 /var/log/bootstrap.log
67225835 24 -rw-r--r-- 1 root root 24192 Apr 29 16:31 /var/log/imagewatch-error.log
67333465 0 -rw-r--r-- 1 root root 0 Apr 23 2024 /var/log/faillog
1543783177 4 -rw-r--r-- 1 _aide adm 1168 May 7 17:46 /var/log/aide/aideinit.log
1543783178 756 -rw-r--r-- 1 _aide adm 771474 May 7 17:46 /var/log/aide/aideinit.errors
67333466 4 -rw-rw-r-- 1 root utmp 292 May 11 09:08 /var/log/lastlog
67333467 232 -rw-rw-r-- 1 root utmp 232320 May 11 09:08 /var/log/wtmp
67333469 4 -rw-r--r-- 1 root root 52 Jul 23 2024 /var/log/installer/casper-md5check.json
67333470 4 -r--r--r-- 1 root root 65 Jul 23 2024 /var/log/installer/media-info
297 12 -rw-r--r-- 1 root root 12075 Jul 23 2024 /var/log/installer/block/discover.log
298 28 -rw-r--r-- 1 root root 26306 Jul 23 2024 /var/log/installer/block/probe-data.json
67212077 128 -rw-r--r-- 1 root root 127333 Jul 23 2024 /var/log/installer/curtin-install.log
67212078 4 -rw-r--r-- 1 root root 200 Jul 23 2024 /var/log/installer/device-map.json
67214148 4 -rw-r--r-- 1 root root 582 Mar 25 06:37 /var/log/alternatives.log.2.gz
67225846 4 -rw-r--r-- 1 root root 195 Jul 23 2024 /var/log/vmware-network.4.log
67225606 4 -rw-r--r-- 1 root root 193 Aug 6 2025 /var/log/vmware-network.1.log
67333461 56 -rw-r--r-- 1 root root 56125 Jul 23 2024 /var/log/dpkg.log.6.gz
67173552 8 -rw-rw---- 1 root utmp 5760 Apr 28 12:25 /var/log/btmp.1
67198573 4 -rw-r--r-- 1 root root 1327 Jan 8 13:47 /var/log/alternatives.log.5.gz
67214149 0 -rw-r--r-- 1 root root 0 May 8 00:00 /var/log/alternatives.log
67798649 8 -rw-r--r-- 1 root root 5490 Feb 28 06:09 /var/log/dpkg.log.3.gz
68529712 8 -rw-r--r-- 1 root root 4162 Mar 25 06:37 /var/log/dpkg.log.2.gz
67827012 0 -rw-rw---- 1 root utmp 0 May 1 00:00 /var/log/btmp
67356685 4 -rw-r--r-- 1 root root 1384 Apr 24 15:09 /var/log/kaspersky/klnagent64/akinstall-klnagent64.20260424150941.log
67593122 8 -rw-r--r-- 1 root root 5554 Jan 8 16:51 /var/log/dpkg.log.5.gz
67224852 0 -rw-r--r-- 1 root root 0 Aug 6 2025 /var/log/ubuntu-advantage.log
67593584 0 -rwxr-xr-x 1 tomcat_service tomcat_service 0 Jan 10 13:50 /var/log/smartcore/telegramBot.log
67593585 0 -rwxr-xr-x 1 tomcat_service tomcat_service 0 Jan 10 13:50 /var/log/smartcore/logException.log.2026-01-10
67225841 4 -rw-r--r-- 1 root root 3738 Jan 21 11:30 /var/log/fontconfig.log
67240536 16 -rw-r--r-- 1 root root 15586 Jan 29 06:09 /var/log/dpkg.log.4.gz
67225805 20 -rw-r--r-- 1 root root 16866 Apr 30 16:58 /var/log/dpkg.log.1
67233815 4 -rw-r--r-- 1 root root 1562 Jan 29 06:09 /var/log/alternatives.log.4.gz
67368768 4 -rw-r--r-- 1 root root 2365 Jul 23 2024 /var/log/alternatives.log.6.gz
67240530 388 -rw-r--r-- 1 root root 372999 May 11 09:09 /var/log/dpkg.log
67225806 4 -rw-r--r-- 1 root root 195 Jul 23 2024 /var/log/vmware-network.5.log
67225804 4 -rw-r--r-- 1 root root 195 Jul 29 2024 /var/log/vmware-network.2.log
67224872 0 -rw-r--r-- 1 root root 0 Dec 17 15:00 /var/log/.vmware-deploy.Done
67798571 4 -rw-r--r-- 1 root root 257 Feb 28 06:09 /var/log/alternatives.log.3.gz
67798647 4 -rw-r--r-- 1 root root 543 May 7 15:03 /var/log/alternatives.log.1
67225833 10704 -rw-r--r-- 1 root root 10954141 May 8 20:49 /var/log/imagewatch.log
67255248 12 -rw-r--r-- 1 root root 10487 Jul 23 2024 /var/log/ubuntu-advantage.log.1
402761598 0 -rw-r--r-- 1 root root 0 Mar 25 09:01 /var/log/nginx/vnpt.access.log
402666427 232 -rw-r--r-- 1 root root 234387 Mar 25 09:08 /var/log/nginx/demo.access.log.1
402804694 0 -rw-r--r-- 1 root root 0 Apr 17 16:07 /var/log/nginx/baotang_access.log
402763092 0 -rw-r--r-- 1 root root 0 Mar 25 09:01 /var/log/nginx/vnpt.error.log
402804717 0 -rw-r--r-- 1 root root 0 Apr 17 16:07 /var/log/nginx/baotang_error.log
402761597 112 -rw-r--r-- 1 root root 114551 Mar 25 09:08 /var/log/nginx/demo.error.log.1
67225634 4 -rw-r--r-- 1 root root 195 Jul 29 2024 /var/log/vmware-network.3.log
67224871 4 -rw-r--r-- 1 root root 195 Dec 17 15:00 /var/log/vmware-network.log
######################################
{"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" : "FAILED"}
######################################
# Chỉnh sửa file /etc/ssh/sshd_config và đặt tham số như sau:
# AllowUsers <list of users>
# # Hoặc
# AllowGroups <list of groups>
# # Hoặc
# DenyUsers <list of users>
# # Hoặc
# DenyGroups <list of groups>
-------------------
#sshd -T | grep -E '^\h*(allow|deny)(users|groups)\s+\S+' -ne 0
######################################
{"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" : "FAILED"}
######################################
# Chỉnh sửa file /etc/ssh/sshd_config và đặt tham số như sau:
# PermitRootLogin no
-------------------
#sshd -T -C user=root -C host="$(hostname)" -C addr="$(grep $(hostname) /etc/hosts | awk '{print $1}')" | grep permitrootlogin.*no -ne 0
-------------------
#grep -Ei '^\h*PermitRootLogin\s+yes' /etc/ssh/sshd_config -eq 0
PermitRootLogin yes
######################################
{"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" : "FAILED"}
######################################
# Chỉnh sửa file /etc/ssh/sshd_config và thêm/thay đổi dòng Ciphers để chứa danh sách thuật toán được chấp thuận, ví dụ:
# Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr
-------------------
#sshd -T -C user=root -C host="$(hostname)" -C addr="$(grep $(hostname) /etc/hosts | awk '{print $1}')" | grep -Pi "^\h*Ciphers\h*chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr\h*$" -ne 0
######################################
{"5.2.14. Cấu hình các thuật toán MAC được cho phép" : "FAILED"}
######################################
# Chỉnh sửa file /etc/ssh/sshd_config và thêm/thay đổi dòng MACs để chứa danh sách MAC được chấp thuận, ví dụ:
# MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512,hmac-sha2-256
-------------------
#sshd -T -C user=root -C host="$(hostname)" -C addr="$(grep $(hostname) /etc/hosts | awk '{print $1}')" | grep -Pi "^\h*MACs\h*hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512,hmac-sha2-256\h*$" -ne 0
######################################
{"5.2.15. Cấu hình thuật toán trao đổi khoá được cho phép" : "FAILED"}
######################################
# Chỉnh sửa file /etc/ssh/sshd_config và thêm/thay đổi dòng KexAlgorithms để chứa danh sách thuật toán được chấp thuận, ví dụ:
# KexAlgorithms curve25519-sha256,curve25519-sha256@libssh.org,diffie-hellman-group14-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256
-------------------
#sshd -T -C user=root -C host="$(hostname)" -C addr="$(grep $(hostname) /etc/hosts | awk '{print $1}')" | grep -Pi "^\h*KexAlgorithms\h*curve25519-sha256,curve25519-sha256@libssh.org,diffie-hellman-group14-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256\h*$" -ne 0
######################################
{"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 remember=5
-------------------
#grep -Pi "^\h*ENCRYPT_METHOD\h*yescrypt\h*$" /etc/login.defs -ne 0
######################################
{"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" : "FAILED"}
######################################
# Đặt shell cho tất cả tài khoản hệ thống sang /sbin/nologin:
# usermod -s /sbin/nologin <user>
# Thực hiện câu lệnh sau sẽ đặt mọi tài khoản hệ thống sang non-login shell:
# awk -F: '($1\!~/^(root|halt|sync|shutdown|nfsnobody)$/ && $3<'"$(awk '/^\s*UID_MIN/{print $2}' /etc/login.defs)"' && $7\!~/^(\/usr)?\/sbin\/nologin(\/)?$/ && $7\!~/(\/usr)?\/bin\/false(\/)?$/) { print $1 }' /etc/passwd | while read user; do usermod -s $(which nologin) $user; done
# Khoá tất cả tài khoản hệ thống không phải root:
# usermod -L <user>
# Thực hiện câu lệnh sau sẽ tự động khoá mọi tài khoản hệ thống ngoài root:
# awk -F: '($1!="root" && $1\!~/^\+/ && $3<'"$(awk '/^\s*UID_MIN/{print $2}' /etc/login.defs)"') {print $1}' /etc/passwd | xargs -I '{}' passwd -S '{}' | awk '($2!="L" && $2!="LK") {print $1}' | while read user; do usermod -L $user; done
-------------------
#awk -F: '($1\!~/^(root|halt|sync|shutdown|nfsnobody)$/ && $3<'"$(awk '/^\s*UID_MIN/{print $2}' /etc/login.defs)"' && $7\!~/^(\/usr)?\/sbin\/nologin(\/)?$/ && $7\!~/(\/usr)?\/bin\/false(\/)?$/) { print $1 }' /etc/passwd -eq 0
solr
######################################
{"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" : "FAILED"}
######################################
# Tạo ra một nhóm rỗng sẽ được chỉ định để sử dụng trong lệnh su, tên nhóm nên được đặt tên theo chính sách:
# groupadd sugroup
# Thêm dòng sau vào file /etc/pam.d/su, chỉ định nhóm rỗng vừa tạo vào:
# auth required pam_wheel.so use_uid group=sugroup
# Tạo một danh sách người dùng được ngăn cách bởi dấu phẩy ở dòng wheel trong file /etc/group:
# wheel:x:10:root,<user list>
-------------------
#grep -Pi '^\h*auth\h+(?:required|requisite)\h+pam_wheel\.so\h+(?:[^#\n\r]+\h+)?((?!\2)(use_uid\b|group=\H+\b))\h+(?:[^#\n\r]+\h+)?((?!\1)(use_uid\b|group=\H+\b))(\ h+.*)?$' /etc/pam.d/su -ne 0
-------------------
#grep -P "^\h*sugroup:x:.*:$" /etc/group -ne 0
######################################
{"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" : "FAILED"}
######################################
# Thực hiện các câu lệnh sau để đặt quyền ở file /etc/shadow:
# # /etc/shadow
# chown root:root /etc/shadow
# chmod u-x,g-wx,o-rwx /etc/shadow
-------------------
#stat /etc/shadow | grep "0640.*Uid:.*0/.*root.*Gid:.*0/.*root" -ne 0
######################################
{"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" : "FAILED"}
######################################
# Thực hiện các câu lệnh sau để đặt quyền ở file /etc/gshadow:
# # /etc/gshadow
# chown root:root /etc/gshadow
# chmod u-x,g-wx,o-rwx /etc/gshadow
-------------------
#stat /etc/gshadow | grep "0640.*Uid:.*0/.*root.*Gid:.*0/.*root" -ne 0
######################################
{"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-" : "FAILED"}
######################################
# Thực hiện các câu lệnh sau để đặt quyền ở file /etc/shadow-:
# # /etc/shadow-
# chown root:root /etc/shadow-
# chmod 0640 /etc/shadow-
-------------------
#stat /etc/shadow- | grep "0640.*Uid:.*0/.*root.*Gid:.*0/.*root" -ne 0
######################################
{"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-" : "FAILED"}
######################################
# Thực hiện các câu lệnh sau để đặt quyền ở file /etc/gshadow-:
# # /etc/gshadow-
# chown root:root /etc/gshadow-
# chmod 0640 /etc/gshadow-
-------------------
#stat /etc/gshadow- | grep -E "0640.*Uid:.*0/.*root.*Gid:.*0/.*root" -ne 0
######################################
{"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" : "PASSED"}
{"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"}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,299 @@
============================================================================
THÔNG TIN HỆ THỐNG
============================================================================
Script Version: 2.0.1
--- Thông tin cơ bản ---
Operating System: Oracle Linux Server release 7.9
Kernel Version: 5.4.17-2136.326.6.el7uek.x86_64
Architecture: x86_64
Hostname: mkt-nonb-db02
FQDN: mkt-nonb-db02.vascloud.vnpt.vn
IP Address: 10.144.89.3
All IP Addresses: 10.144.89.3,10.144.89.5,192.168.135.27,169.254.225.152,192.168.122.1
Audit Time: 2026-06-10 16:29:46
Timezone: Asia/Bangkok
Uptime: up 7 weeks, 15 hours, 41 minutes
--- Thông tin CPU ---
CPU Model: Intel(R) Xeon(R) Gold 5220R CPU @ 2.20GHz
CPU Cores: 96
CPU Architecture: x86_64
--- Thông tin Memory ---
Total Memory: 93G
Used Memory: 46G
Free Memory: 858M
Swap Total: 23G
--- Thông tin Disk ---
Disk Usage:
/ 2.2G used of 94G (3%)
/ 2.2G used of 94G (3%)
/var 4.7G used of 10G (47%)
/tmp 43M used of 15G (1%)
--- Thông tin Network Interfaces ---
Primary Interface: ens192
MAC Address: 00:50:56:9e:77:a3
Default Gateway: 10.144.89.1
DNS Servers: 192.168.105.101,192.168.105.102
--- Thông tin bổ sung ---
SELinux Status: Disabled
Firewall: unknown
inactive (firewalld) / inactive
inactive (iptables)
Last Boot: 2026-04-22 07:48
Current Users: 1
Load Average: 1.11 1.80 2.42
============================================================================
CentOS Version Detected: 7
IPv6 Status: DISABLED (kernel support not available)
############################################################################
=== 1. Thiết lập ban đầu ===
--- 1.1. Cấu hình filesystem ---
{"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.1.8. Cấu hình vô hiệu hoá usb-storage filesystem" : "FAILED"}
######################################
# Khuyến nghị:
# Thêm vào /etc/modprobe.d/filesystem.conf:
# install usb-storage /bin/true
# blacklist usb-storage
# Gỡ module nếu đang nạp: rmmod usb-storage
######################################
--- 1.1.2. Cấu hình phân vùng /tmp ---
{"1.1.2.1. Cấu hình tuỳ chọn nodev cho phân vùng /tmp" : "FAILED"}
{"1.1.2.2. Cấu hình tuỳ chọn nosuid cho phân vùng /tmp" : "FAILED"}
{"1.1.2.3. Cấu hình tuỳ chọn noexec cho phân vùng /tmp" : "FAILED"}
--- 1.1.3. Cấu hình phân vùng /var/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"}
--- 1.1.4. Cấu hình phân vùng /home ---
{"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"}
--- 1.1.5. Cấu hình phân vùng /dev/shm ---
{"1.1.5.1. Cấu hình tuỳ chọn nodev cho phân vùng /dev/shm" : "FAILED"}
{"1.1.5.2. Cấu hình tuỳ chọn nosuid cho phân vùng /dev/shm" : "FAILED"}
{"1.1.5.3. Cấu hình tuỳ chọn noexec cho phân vùng /dev/shm" : "FAILED"}
--- 1.2. Cấu hình cập nhật phần mềm ---
{"1.2.1. Cấu hình kích hoạt gpgcheck" : "PASSED"}
--- 1.3. Kiểm tra tính toàn vẹn của filesystem ---
{"1.3.1. Kiểm tra cài đặt AIDE" : "FAILED"}
{"1.3.2. Cấu hình kiểm tra tính toàn vẹn của filesystem" : "FAILED"}
--- 1.4. Cấu hình khởi động an toàn ---
{"1.4.1. Phân quyền đối với file cấu hình bootloader" : "FAILED"}
{"1.4.2. Cấu hình xác thực khi truy cập rescue mode" : "PASSED"}
{"1.4.3. Cấu hình xác thực khi truy cập single user mode" : "PASSED"}
{"1.4.4. Cấu hình vô hiệu hoá interactive boot" : "PASSED"}
--- 1.5. Additional Process Hardening ---
{"1.5.1. Cấu hình vô hiệu hoá core dump" : "PASSED"}
{"1.5.2. Cấu hình kích hoạt ASLR (address space layout randomization)" : "PASSED"}
{"1.5.3. Cấu hình vô hiệu hoá prelink" : "PASSED"}
--- 1.6. Kiểm soát nội dung cảnh báo ---
{"1.6.1. Kiểm soát nội dung motd (Message Of The Day)" : "PASSED"}
{"1.6.2. Kiểm soát nội dung thông báo khi đăng nhập" : "PASSED"}
{"1.6.3. Kiểm soát nội dung thông báo khi đăng nhập từ xa" : "PASSED"}
{"1.6.4. Cấu hình phân quyền đối với file /etc/motd" : "PASSED"}
{"1.6.5. Cấu hình phân quyền đối với file /etc/issue" : "PASSED"}
{"1.6.6. Cấu hình phân quyền đối với file /etc/issue.net" : "PASSED"}
{"1.6.7. Kiểm soát nội dung thông báo khi truy cập GNOME" : "FAILED"}
=== 2. Service ===
--- 2.1. Cấu hình Time Synchronization ---
{"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. Các Service với mục đích riêng biệt ---
{"2.2.1. Cấu hình vô hiệu hoá xinetd services" : "PASSED"}
{"2.2.9. Cấu hình vô hiệu hoá autofs services" : "PASSED"}
{"2.2.11. Cấu hình vô hiệu hoá avahi daemon services" : "PASSED"}
{"2.2.12. Cấu hình vô hiệu hoá cups services" : "FAILED"}
{"2.2.13. Cấu hình vô hiệu hoá dhcp server services" : "PASSED"}
{"2.2.14. Cấu hình vô hiệu hoá ldap server services" : "PASSED"}
{"2.2.15. Cấu hình vô hiệu hoá dns server services" : "PASSED"}
{"2.2.16. Cấu hình vô hiệu hoá dnsmasq services" : "PASSED"}
{"2.2.17. Cấu hình vô hiệu hoá ftp server services" : "PASSED"}
{"2.2.18. Cấu hình vô hiệu hoá tftp server services" : "PASSED"}
{"2.2.19. Cấu hình vô hiệu hoá web server services" : "PASSED"}
{"2.2.20. Cấu hình vô hiệu hoá imap and pop3 server services" : "PASSED"}
{"2.2.21. Cấu hình vô hiệu hoá samba file server services" : "PASSED"}
{"2.2.22. Cấu hình vô hiệu hoá web proxy server services" : "PASSED"}
{"2.2.23. Cấu hình vô hiệu hoá snmp services" : "PASSED"}
{"2.2.24. Cấu hình vô hiệu hoá nis server services" : "PASSED"}
{"2.2.25. Cấu hình vô hiệu hoá telnet server services" : "PASSED"}
{"2.2.27. Cấu hình vô hiệu hoá network file system services" : "PASSED"}
{"2.2.28. Cấu hình vô hiệu hoá rpcbind services" : "FAILED"}
{"2.2.29. Cấu hình vô hiệu hoá rsync services" : "PASSED"}
{"2.2.2. Cấu hình vô hiệu hoá chargen services" : "PASSED"}
{"2.2.3. Cấu hình vô hiệu hoá daytime services" : "PASSED"}
{"2.2.4. Cấu hình vô hiệu hoá discard services" : "PASSED"}
{"2.2.5. Cấu hình vô hiệu hoá echo services" : "PASSED"}
{"2.2.6. Cấu hình vô hiệu hoá time services" : "PASSED"}
{"2.2.7. Cấu hình vô hiệu hoá rsh server" : "PASSED"}
{"2.2.8. Cấu hình vô hiệu hoá talk server" : "PASSED"}
{"2.2.10. Cấu hình vô hiệu hoá X window server services" : "FAILED"}
{"2.2.26. Cấu hình mail transfer agents sang chế độ local-only" : "PASSED"}
--- 2.3. Service Clients ---
{"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á ftp client" : "PASSED"}
{"2.3.7. Cấu hình vô hiệu hoá tftp client" : "PASSED"}
=== 3. Cấu hình mạng ===
--- 3.1. Tham số cấu hình mạng (Host Only) ---
{"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. Tham số cấu hình mạng (Host và Router) ---
{"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" : "FAILED"}
{"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" : "FAILED"}
{"3.2.7. Cấu hình TCP SYN Cookies" : "PASSED"}
--- 3.4. Cấu hình Firewall ---
--- 3.4.1. Cấu hình firewalld ---
{"3.4.1.1. Cấu hình kích hoạt firewalld" : "FAILED"}
######################################
# Khuyến nghị:
# Kích hoạt firewalld:
# systemctl --now enable firewalld
# Hoặc kích hoạt iptables:
# systemctl --now enable iptables
######################################
{"3.4.1.3. Cấu hình firewalld rule cho tất cả các port và protocol đang mở" : "FAILED"}
{"3.4.1.4. Cấu hình chính sách từ chối mặc định cho firewalld" : "FAILED"}
--- 3.4.2. Iptables ---
{"3.4.2.1. Cấu hình kích hoạt Iptables" : "FAILED"}
{"3.4.2.3. Cấu hình iptables loopback traffic" : "FAILED"}
{"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" : "FAILED"}
=== 4. Logging và Auditing ===
--- 4.1. Cấu hình logging ---
--- 4.1.1. Cấu hình rsyslog ---
{"4.1.1.1. Cấu hình kích hoạt rsyslog service" : "FAILED"}
{"4.1.1.2. Phân quyền đối với file log sinh ra từ rsyslog" : "FAILED"}
{"4.1.1.3. Cấu hình lưu trữ log sinh ra từ rsyslog tập trung" : "PASSED"}
{"4.1.1.4. Phân quyền đối với tất cả các file log" : "PASSED"}
=== 5. Cấu hình truy cập, xác thực và ủy quyền ===
--- 5.1. Cấu hình cron ---
{"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. Cấu hình máy chủ SSH ---
{"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" : "FAILED"}
{"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" : "FAILED"}
{"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 vô hiệu hoá SSH AllowTcpForwarding" : "FAILED"}
{"5.2.14. Cấu hình cảnh báo SSH" : "PASSED"}
{"5.2.15. Cấu hình SSH MaxAuthTries" : "PASSED"}
{"5.2.16. Cấu hình SSH MaxStartups" : "PASSED"}
{"5.2.17. Cấu hình SSH MaxSessions" : "PASSED"}
{"5.2.18. Cấu hình SSH LoginGraceTime" : "PASSED"}
{"5.2.19. Cấu hình khoảng thời gian chờ không hoạt động cho máy chủ SSH" : "PASSED"}
{"5.2.20. Cấu hình các thuật toán MAC được cho phép" : "FAILED"}
--- 5.3. Cấu hình PAM ---
{"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" : "FAILED"}
{"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 sang SHA-512" : "PASSED"}
--- 5.4. Cấu hình tài khoản người dùng và môi trường ---
--- 5.4.1. Cấu hình mật khẩu người dùng ---
{"5.4.1.1. Cấu hình thời gian hết hạn sử dụng mật khẩu" : "PASSED"}
{"5.4.1.2. 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.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" : "FAILED"}
{"5.4.3. Cấu hình shell timeout mặc định" : "PASSED"}
{"5.4.4. Cấu hình group mặc định của tài khoản root" : "PASSED"}
{"5.4.5. Cấu hình user umask mặc định" : "PASSED"}
{"5.4.6. Cấu hình hạn chế truy cập cho câu lệnh su" : "FAILED"}
=== 6. System Maintenance ===
--- 6.1. Quyền của file hệ thống ---
{"6.1.1. Cấu hình sticky bit cho tất cả các thư mục dùng chung" : "FAILED"}
{"6.1.2. Cấu hình phân quyền cho file /etc/passwd" : "PASSED"}
{"6.1.3. Cấu hình phân quyền cho file /etc/shadow" : "PASSED"}
{"6.1.4. Cấu hình phân quyền cho file /etc/group" : "PASSED"}
{"6.1.5. Cấu hình phân quyền cho file /etc/gshadow" : "PASSED"}
{"6.1.6. Cấu hình phân quyền cho file /etc/passwd-" : "PASSED"}
{"6.1.7. Cấu hình phân quyền cho file /etc/shadow-" : "PASSED"}
{"6.1.8. Cấu hình phân quyền cho file /etc/group-" : "PASSED"}
{"6.1.9. Cấu hình phân quyền cho file /etc/gshadow-" : "PASSED"}
{"6.1.10. Đảm bảo không có file world-writable tồn tại" : "FAILED"}
{"6.1.11. Đảm bảo các file hoặc thư mục không có chủ sở hữu không tồn tại" : "FAILED"}
{"6.1.12. Đảm bảo các file hoặc thư mục không có nhóm không tồn tại" : "FAILED"}
--- 6.2. Thiết lập cho người dùng và nhóm ---
{"6.2.1. Đảm bảo trường mật khẩu không để trống" : "PASSED"}
{"6.2.2. Đảm bảo mọi nhóm trong file /etc/passwd tồn tại trong file /etc/group" : "PASSED"}
{"6.2.3. Đảm bảo UID không bị lặp" : "PASSED"}
{"6.2.4. Đảm bảo GID không bị lặp" : "PASSED"}
{"6.2.5. Đảm bảo tên người dùng không bị lặp" : "PASSED"}
{"6.2.6. Đảm bảo tên group không bị lặp" : "PASSED"}
{"6.2.7. Đảm bảo tính toàn vẹn cho biến môi trường PATH của root" : "PASSED"}
{"6.2.8. Đảm bảo root là tài khoản duy nhất có UID là 0" : "PASSED"}
{"6.2.9. Đảm bảo mọi người dùng đều tồn tại thư mục home" : "PASSED"}
{"6.2.10. Đảm bảo người dùng sở hữu thư mục home của chính họ" : "FAILED"}
{"6.2.11. Đảm bảo quyền thư mục home của người dùng có mức bảo mật cao" : "FAILED"}
{"6.2.12. Đả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"}
{"6.2.13. Đảm bảo không người dùng nào có file .forward" : "PASSED"}
{"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 .rhosts" : "PASSED"}
############################################################################
# Audit completed at: 2026-06-10 16:30:45
############################################################################