Security KSC Linux 16.2
Lab thực hành · Step-by-Step · Endpoint Security Management

Kaspersky Security Center Linux 16.2

Hướng dẫn cài đặt Administration Server + Web Console đầy đủ từng bước — Ubuntu Server 26.04 LTS · PostgreSQL · Single-node · 50 client.

Ubuntu Server 26.04 / 20.04 LTS PostgreSQL 15/16 50 Clients · Single-node ~45 phút cài đặt
00

Yêu cầu hệ thống

Kiểm tra trước khi bắt đầu cài đặt

Phiên bản OS được hỗ trợ: Hướng dẫn này viết cho Ubuntu Server 26.04 LTS, nhưng áp dụng giống hệt cho các bản LTS khác trong danh sách tương thích chính thức của KSC 16.2: Ubuntu Server 20.04 / 22.04 / 24.04 LTS. Tất cả đều dùng Netplan, systemd, UFW nên lệnh không đổi. Khác biệt duy nhất: PostgreSQL mặc định trong repo (20.04 → PG 12, 22.04 → PG 14) — nhưng ở Bước 2 ta cài PG 15 từ repo PGDG chính thức nên đồng nhất trên mọi bản.
Lưu ý Ubuntu Server: Bản Server không cài GUI (GNOME) nên tiết kiệm RAM hơn Desktop — toàn bộ tài nguyên dành cho KSC. RAM tối thiểu cho 50 client = 6 GB, khuyến nghị 8 GB. Không cài ubuntu-desktop trên server production để tránh lãng phí tài nguyên và tăng bề mặt tấn công.
Phần cứng tối thiểu (50 clients)
Thành phần Tối thiểu Khuyến nghị (lab)
CPU2 nhân / 2.5 GHz4 nhân / 2.5 GHz
RAM (Server)6 GB8 GB
Swap≥ 9 GB (1.5× RAM)12 GB
Đĩa hệ thống40 GB (EXT4)60 GB (SSD)
Thư mục dữ liệu KSC≥ 10 GB20 GB riêng
Network100 Mbps1 Gbps
Ports cần mở trên firewall
Port Giao thức Mô tả
13000TCPAdmin Server ← Network Agent (SSL) BẮT BUỘC
14000TCPAdmin Server ← Network Agent (non-SSL)
13291TCPAdmin Console / MMC connection
8080TCPWeb Console (trình duyệt quản trị) BẮT BUỘC
13299TCPWeb Console ↔ Admin Server (internal)
5432TCPPostgreSQL (localhost only — KHÔNG mở ra ngoài)
01

Chuẩn bị Ubuntu Server 26.04 LTS

Cập nhật hệ thống · IP tĩnh (Netplan) · Hostname · Swap · Firewall

Quan trọng: KSC Administration Server bắt buộc phải có hostname tĩnh và DNS resolution hoạt động. Network Agent trên các client sẽ kết nối vào đúng địa chỉ này.

1.1 Cập nhật hệ thống

# Cập nhật và nâng cấp toàn bộ package
sudo apt update && sudo apt -y upgrade

# Cài các công cụ cần thiết cho server tối giản
sudo apt install -y curl wget net-tools gnupg2 software-properties-common
Tắt Automatic Updates: Ubuntu Server 26.04 mặc định bật unattended-upgrades cho bản vá bảo mật — có thể restart PostgreSQL hoặc các service KSC ngoài ý muốn. Nên tắt (hoặc cấu hình lịch bảo trì) trước khi cài:
sudo systemctl disable --now unattended-upgrades
sudo apt remove -y unattended-upgrades

1.2 Cấu hình IP tĩnh (Netplan)

Ubuntu Server 26.04 dùng Netplan với renderer systemd-networkd — cấu hình qua file YAML trong /etc/netplan/. Thay ens33192.168.1.100 theo môi trường thực tế.
# Xem tên interface hiện tại
ip a

# Mở file cấu hình Netplan (tên file có thể khác: 00-installer-config.yaml)
sudo nano /etc/netplan/50-cloud-init.yaml

Nhập nội dung YAML (chú ý thụt lề bằng space, không dùng tab):

network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      dhcp4: false
      addresses:
        - 192.168.1.100/24
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 1.1.1.1]
# Set quyền file (Netplan cảnh báo nếu quá mở)
sudo chmod 600 /etc/netplan/50-cloud-init.yaml

# Kiểm tra cú pháp trước khi áp (an toàn — tự rollback sau 120s nếu mất kết nối)
sudo netplan try

# Áp dụng vĩnh viễn
sudo netplan apply

# Xác nhận IP
ip a show ens33
Nếu server cài kèm cloud-init (image cloud), tạo file /etc/netplan/99-disable-cloud-init.yaml hoặc tắt network của cloud-init để tránh bị ghi đè config khi reboot.

1.3 Đặt Hostname tĩnh

# Đặt hostname — dùng FQDN nếu có domain nội bộ
sudo hostnamectl set-hostname ksc-server.lab.local

# Thêm vào /etc/hosts để phân giải nội bộ
echo "192.168.1.100  ksc-server.lab.local  ksc-server" | sudo tee -a /etc/hosts

# Kiểm tra
hostname -f

1.4 Tạo Swap (bắt buộc)

# Kiểm tra swap hiện tại
free -h

# Tạo 12 GB swap (≥ 1.5× RAM = 1.5 × 8GB = 12GB — Server 26.04)
sudo fallocate -l 12G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

# Ghi vào fstab để tự động mount khi reboot
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

# Xác nhận
free -h

1.5 Cấu hình UFW Firewall

# Bật UFW và cho phép SSH trước (tránh bị khóa)
sudo ufw allow ssh

# Mở port KSC Administration Server
sudo ufw allow 13000/tcp   # Network Agent SSL
sudo ufw allow 14000/tcp   # Network Agent non-SSL
sudo ufw allow 13291/tcp   # Admin console

# Mở port Web Console
sudo ufw allow 8080/tcp

# Bật firewall
sudo ufw enable
sudo ufw status verbose
02

Cài đặt và cấu hình PostgreSQL

Cài PostgreSQL 15 · Tạo DB user & database · Tinh chỉnh hiệu năng

2.1 Cài PostgreSQL 15

BẮT BUỘC dùng PostgreSQL 15 — KHÔNG dùng bản mặc định của Ubuntu: KSC 16.2 yêu cầu PostgreSQL 13 trở lên. Bản mặc định trong repo Ubuntu quá cũkhông được hỗ trợ (Ubuntu 20.04 → PG 12, 22.04 → PG 14). Nếu apt install postgresql không kèm phiên bản, hệ thống sẽ cài PG mặc định → postinstall.pl sau này báo lỗi version. Phải thêm repo PGDG và cài đúng postgresql-15.
Nếu đã lỡ cài PG cũ (12/14): gỡ trước khi cài PG15 để tránh xung đột port 5432 (chỉ làm khi chưa có data):
pg_lsclusters # xem cluster hiện có
sudo pg_dropcluster 12 main --stop # thay 12 = version thật
sudo apt purge -y 'postgresql-12' 'postgresql-client-12'
# Thêm PostgreSQL official repository (PGDG)
sudo apt install -y postgresql-common curl ca-certificates
sudo /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh

# Cài đúng phiên bản 15 (KHÔNG gõ 'postgresql' trống)
sudo apt install -y postgresql-15

# Bật service
sudo systemctl enable --now postgresql

# XÁC NHẬN: cột Ver = 15, Status = online, Port = 5432
pg_lsclusters
sudo ss -tlnp | grep 5432

2.2 Tạo DB User và Database

# Đăng nhập vào psql với postgres superuser
sudo -u postgres psql
-- Chạy trong psql shell

-- Tạo user KSC — dùng psql interactive để nhập mật khẩu có ký tự !
CREATE USER ksc WITH PASSWORD 'A@q1w2e3r4t5';

-- Tạo database chính cho Administration Server
CREATE DATABASE kscdb OWNER ksc ENCODING 'UTF8' LC_COLLATE 'en_US.UTF-8' LC_CTYPE 'en_US.UTF-8';

-- Tạo database riêng cho IAM service (PHẢI KHÁC kscdb — bắt buộc!)
CREATE DATABASE ksciam OWNER ksc ENCODING 'UTF8' LC_COLLATE 'en_US.UTF-8' LC_CTYPE 'en_US.UTF-8';

-- Cấp quyền tạo DB (cần cho quá trình khởi tạo)
ALTER ROLE ksc CREATEDB;

-- Xác nhận
\l
\du ksc

-- Thoát
\q

2.3 Tinh chỉnh postgresql.conf (50 clients)

# Tìm vị trí file config
sudo -u postgres psql -c "SHOW config_file;"

# Mở và chỉnh (thường ở /etc/postgresql/15/main/postgresql.conf)
sudo nano /etc/postgresql/15/main/postgresql.conf
Lỗi gõ nhầm phổ biến nhất — đơn vị PHẢI viết đầy đủ: PostgreSQL không chấp nhận viết tắt 64M, 2G — phải gõ đủ 64MB, 2GB. Gõ thiếu chữ B → service không start được, báo lỗi "contains errors"không có thông báo rõ ràng qua systemctl — phải xem trực tiếp file log mới thấy nguyên nhân.
# Thêm / sửa các tham số sau (cho 8GB RAM, 50 clients)
# Chép chính xác — không tự viết tắt đơn vị

shared_buffers = 2GB           # 25% RAM
effective_cache_size = 6GB     # 75% RAM
work_mem = 16MB
maintenance_work_mem = 256MB
max_connections = 151          # Kaspersky khuyến nghị
checkpoint_completion_target = 0.9
wal_buffers = 64MB
default_statistics_target = 100
random_page_cost = 1.1        # SSD
effective_io_concurrency = 200 # SSD

# Chỉ lắng nghe localhost (bảo mật)
listen_addresses = 'localhost'
# Kiểm tra lại các dòng vừa sửa — soi kỹ đơn vị trước khi restart
grep -E "shared_buffers|effective_cache_size|work_mem|wal_buffers|maintenance_work_mem" /etc/postgresql/15/main/postgresql.conf

2.4 Cấu hình pg_hba.conf (xác thực)

Lỗi phổ biến nhất: Mặc định PostgreSQL dùng peer hoặc scram-sha-256 cho kết nối local — KSC yêu cầu phương thức md5 qua 127.0.0.1. Nếu sai → password authentication failed khi chạy postinstall.pl.
# Xem auth method hiện tại
grep -E "^host|^local" /etc/postgresql/15/main/pg_hba.conf

# Mở file chỉnh sửa
sudo nano /etc/postgresql/15/main/pg_hba.conf

Thêm 2 dòng sau vào pg_hba.conf (cho cả kscdb và ksciam):

# Thêm 2 dòng này vào pg_hba.conf (trước dòng "host all all ...")
host    kscdb     ksc    127.0.0.1/32    md5
host    ksciam    ksc    127.0.0.1/32    md5
# Restart PostgreSQL để áp dụng
sudo systemctl restart postgresql

# Test kết nối cả 2 database (nhập password khi hỏi)
psql -h 127.0.0.1 -U ksc -d kscdb -c "SELECT current_database();"
psql -h 127.0.0.1 -U ksc -d ksciam -c "SELECT current_database();"
Mật khẩu A@q1w2e3r4t5 chứa ! — lưu ý khi dùng trong bash:
  • psql interactive (sudo -u postgres psql → gõ SQL trực tiếp): ✓ AN TOÀN
  • postinstall.pl (Perl đọc stdin): ✓ AN TOÀN
  • bash -c "...": ✗ LỖI — chạy set +H trước để tắt history expansion, hoặc dùng psql interactive.
03

Cài gói Administration Server

Tải gói .deb · Cài đặt · Tạo service account

Tải gói ksc64_16.2.xxxx_amd64.deb từ tài khoản My Kaspersky hoặc kênh phân phối chính thức. Đặt vào /tmp/ksc/ trước khi chạy các lệnh bên dưới.

3.0 Tải gói cài đặt từ Kaspersky

Cần tải 2 gói .deb riêng biệt — Administration Server và Web Console. Vào trang download chính thức kaspersky.com/small-to-medium-business-security/downloads/endpoint → chọn Kaspersky Security Center → phiên bản 16.2 → hệ điều hành Linux (.deb) → Download.
Danh sách file cần tải (KSC Linux 16.2 · Ubuntu/Debian)
Tên file Thành phần Ghi chú
ksc64_16.2.x.x_amd64.deb Administration Server Thành phần core — bắt buộc
ksc-web-console_16.2.x.x_amd64.deb Web Console (GUI) Giao diện web quản trị — bắt buộc
klnagent64_15.x.x.x_amd64.deb (tuỳ chọn) Network Agent (Linux client) Nếu client là Linux. Windows dùng .exe
Cách upload lên server Ubuntu:
# Tạo thư mục chứa gói
mkdir -p /tmp/ksc && cd /tmp/ksc
# Copy từ máy Windows qua SCP (chạy lệnh này trên Windows Terminal)
scp ksc64_16.2.*.deb ksc-web-console_16.2.*.deb [email protected]:/tmp/ksc/
# Hoặc dùng USB/shared folder nếu cài trực tiếp trên máy vật lý
# Xác minh file tải về không bị hỏng
ls -lh /tmp/ksc/
sha256sum /tmp/ksc/*.deb   # so sánh với checksum trên trang Kaspersky

3.1 Tạo service account và group

# Tạo group bảo mật kladmins
sudo groupadd kladmins

# Tạo user ksc (không có login shell)
sudo adduser --system --no-create-home --ingroup kladmins ksc

# Thêm ksc vào group kladmins
sudo gpasswd -a ksc kladmins
sudo usermod -g kladmins ksc

# Xác nhận
id ksc

3.2 Cài gói ksc64

# Di chuyển vào thư mục chứa gói cài
cd /tmp/ksc/

# Cài gói Administration Server (.deb)
sudo apt install ./ksc64_16.2*.deb

# Hoặc dùng dpkg (nếu cần)
sudo dpkg -i ksc64_16.2*.deb
sudo apt install -f   # Tự động fix dependencies
Sau khi cài xong, file binary và script được đặt tại /opt/kaspersky/ksc64/. Chưa có service nào chạy — cần chạy postinstall.pl ở bước tiếp theo.
04

Cấu hình với postinstall.pl

Script tương tác hỏi ~22 tham số — điền theo bảng bên dưới, bao gồm cả phần IAM

Script này là bước quan trọng nhất. Chạy với quyền sudo và không ngắt giữa chừng. Toàn bộ cấu hình database, tài khoản quản trị đều được thiết lập ở đây.

4.1 Chạy script

sudo /opt/kaspersky/ksc64/lib/bin/setup/postinstall.pl

4.2 Bảng trả lời tham số đầy đủ (50 clients · PostgreSQL · IAM)

Hai lỗi hay gặp nhất khi chạy postinstall.pl:
Để trống ô passwordpassword authentication failed. Phải gõ đúng mật khẩu đã tạo ở Bước 2.
IAM database trùng với Admin Server database → script báo lỗi và yêu cầu nhập lại. IAM phải dùng ksciam, Admin Server dùng kscdb.
# Script hỏi Giá trị nhập Ghi chú
— Điều khoản sử dụng —
1Accept Privacy PolicyYY và nhấn Enter
— Administration Server —
2Installation mode11 = Standard (single-node lab)
3Administration Server DNS-name or IPksc-server.lab.localPhải khớp hostname đặt ở Bước 1
4Administration Server SSL port13000Mặc định → nhấn Enter
5Số thiết bị quản lý11 = 1–100 thiết bị ← chọn cho lab 50 clients
6Security group name for serviceskladminsMặc định → nhấn Enter
7Account to start Administration Server servicekscMặc định → nhấn Enter
8Account to start other serviceskscMặc định → nhấn Enter
— Database cho Administration Server —
9DBMS type22 = PostgreSQL / Postgres Pro
10DBMS address127.0.0.1PostgreSQL cùng máy
11DBMS port5432Mặc định → nhấn Enter
12Database name (Admin Server)kscdbĐã tạo ở Bước 2
13DBMS loginkscUser PostgreSQL đã tạo
14DBMS passwordA@q1w2e3r4t5KHÔNG để trống — nhập đúng pw Bước 2
— IAM Service (Identity and Access Management) —
15IAM Server DNS-nameksc-server.lab.localCùng hostname với Admin Server
16Account to start KLIAM servicekscMặc định → nhấn Enter
17DBMS type (IAM)22 = PostgreSQL
18DBMS address (IAM)127.0.0.1Mặc định → nhấn Enter
19DBMS port (IAM)5432Mặc định → nhấn Enter
20Database name (IAM)ksciamPHẢI KHÁC kscdb — nhập ksciam
21DBMS login (IAM)kscUser PostgreSQL đã tạo
22DBMS password (IAM)A@q1w2e3r4t5KHÔNG để trống — cùng pw với #14

4.3 Kiểm tra service sau khi cài

# Kiểm tra trạng thái Administration Server
sudo systemctl status kladminserver_srv

# Kiểm tra port đang lắng nghe
sudo ss -tlnp | grep -E '13000|14000|13291'

# Xem log nếu có lỗi
sudo tail -50 /var/log/kaspersky/ksc/
05

Cài đặt Web Console

Gói ksc-web-console · File cấu hình JSON · Truy cập HTTPS:8080

5.1 Tạo file cấu hình Web Console

Đường dẫn BẮT BUỘC chính xác — sai vị trí gói sẽ cài "im lặng" mà không tạo service: Theo tài liệu chính thức Kaspersky, response file phải đặt tại /etc/ksc-web-console-setup.jsonkhông phải thư mục tạm như /tmp/. Script postinstall của gói chỉ đọc đúng đường dẫn này; nếu không thấy file, nó bỏ qua việc tạo systemd service mà không báo lỗi gì — kết quả: gói báo "cài thành công" nhưng không có service, không listen port 8080.

Trước tiên, tìm đường dẫn cert thật của Administration Server trên máy (số thư mục ví dụ 1093 là ngẫu nhiên theo từng lần cài, phải tự kiểm tra):

# Tìm thư mục cert thật (thay số ngẫu nhiên theo máy bạn)
sudo find /var/opt/kaspersky/klnagent_srv -maxdepth 2 -type d
ls -la /var/opt/kaspersky/klnagent_srv/*/cert/klserver.cer

Tạo file JSON tại đúng vị trí chuẩn /etc/ (thay <CERT_PATH> bằng kết quả lệnh trên):

sudo nano /etc/ksc-web-console-setup.json
{
  "address": "ksc-server.lab.local",
  "port": 8080,
  "trusted": "ksc-server.lab.local|13299|<CERT_PATH>|KSC Administration Server",
  "acceptEula": true,
  "defaultLangId": 1033,
  "enableLog": true
}
# Set quyền file cho an toàn
sudo chmod 600 /etc/ksc-web-console-setup.json
Giải thích tham số
addressHostname hoặc IP mà trình duyệt truy cập Web Console
portPort Web Console (8080). Nếu dùng 443 cần setcap
trustedChuỗi: address|port|cert_path|name — nhiều server ngăn cách bằng ||
defaultLangId1033 = English (US), 1049 = Russian
enableLogBật logging Web Console — khuyến nghị true khi mới cài

5.2 Cài gói Web Console

Đảm bảo /etc/ksc-web-console-setup.json đã tồn tại (Bước 5.1) trước khi cài gói — script postinstall của gói tự đọc file này trong lúc cài, không cần chạy thêm lệnh setup nào khác.
# Cài gói — postinstall tự đọc /etc/ksc-web-console-setup.json và tạo systemd service
sudo dpkg -i /tmp/ksc/ksc-web-console_16.2*.deb
Nếu đã lỡ cài trước khi tạo file JSON (gói báo "installed" nhưng không có service, không listen 8080): tạo file JSON đúng vị trí (Bước 5.1) rồi buộc postinstall chạy lại:
sudo dpkg --configure ksc-web-console
# nếu không có tác dụng, cài đè lại — an toàn vì service chưa từng chạy
sudo dpkg -i /tmp/ksc/ksc-web-console_16.2*.deb

5.3 Kiểm tra Web Console service

# Xác nhận service ksc-web-console đã được tạo (dynamic — chỉ xuất hiện nếu postinstall chạy đúng)
systemctl list-unit-files | grep -i ksc-web-console

# Kiểm tra service
sudo systemctl status ksc-web-console

# Kiểm tra port 8080 đang mở
sudo ss -tlnp | grep 8080

# Xem log khởi động
sudo journalctl -u ksc-web-console -f
Ghi chú kỹ thuật: Service ksc-web-console.service được sinh động (dynamic) bởi script postinstall — không nằm sẵn trong danh sách file của gói (dpkg -L sẽ không thấy). Nếu bước 5.3 báo "Unit ksc-web-console.service could not be found", quay lại Bước 5.1/5.2 — chắc chắn file JSON nằm đúng /etc/ksc-web-console-setup.json trước khi cài.
06

Đăng nhập & Quick Start Wizard

Truy cập Web Console · License · Policy mặc định · Download updates

Thông tin đăng nhập
URLhttps://ksc-server.lab.local:8080
Usernameadmin
PasswordA@q1w2e3r4t5
Lần đầu đăng nhập
Trình duyệt sẽ cảnh báo chứng chỉ tự ký. Chọn Advanced → Proceed (hoặc import cert vào browser). Đây là hành vi bình thường trong lab.

Các bước trong Quick Start Wizard

1
Nhập License Key
Settings → Licensing → Add license. Nếu không có key, chọn "Use without license" để dùng thử 30 ngày với giới hạn.
2
Kaspersky Security Network (KSN)
Chọn tham gia KSN để cập nhật định nghĩa malware theo thời gian thực. Nếu môi trường cô lập, bỏ qua hoặc dùng KSN Proxy.
3
Tải gói cài đặt (Installation packages)
Operations → Repositories → Installation packages → tải Network Agent + Kaspersky Endpoint Security cho Windows/Linux phù hợp với OS của 50 clients.
4
Cấu hình Policy & Task mặc định
Wizard tự tạo policy bảo vệ mặc định và update task. Có thể chỉnh sau ở Assets → Managed devices → Policies.
5
Cấu hình Email thông báo (tùy chọn)
Settings → General → Notifications → nhập SMTP server để gửi cảnh báo bảo mật qua email.
07

Triển khai Network Agent (50 clients)

Phát hiện thiết bị · Cài Network Agent · Thêm vào Managed Devices

7.0 Phân nhóm thiết bị (Administration Groups)

Tạo nhóm trước khi deploy để mỗi nhóm có Policy riêng — exclusion scan, cấu hình firewall, và quyền khác nhau tùy vai trò server. Đường dẫn trong Web Console: Assets → Managed devices → chọn thư mục gốc → Add group.
# Cấu trúc Administration Groups khuyến nghị

Managed Devices/
├── Domain Controllers/       ← Windows Server chạy AD DS
├── File Servers/              ← File share, DFS, NAS gateway
├── FTP Servers/              ← IIS FTP, vsftpd, FileZilla Server
├── Web Servers/              ← IIS, Apache, Nginx, Tomcat, Node.js
└── Workstations/             ← Máy tính người dùng cuối
Nhóm: Domain Controllers (AD)
Windows Server chạy Active Directory Domain Services, DNS, SYSVOL replication
Scan Exclusions (KES Policy)
  • %WINDIR%\SYSVOL\
  • %WINDIR%\NTDS\ (ntds.dit, ntds.jfm)
  • %WINDIR%\SysWOW64\dns\
  • lsass.exe (Behavior Analysis)
  • ntfrs.exe, dfsr.exe
  • dns.exe, dfsrs.exe
Ports & Policy Settings
53/TCP+UDP 88/TCP 135/TCP 389/TCP+UDP 445/TCP 464/TCP 636/TCP 3268–3269/TCP 49152–65535/TCP
Tắt Exploit Prevention cho process lsass.exe
Tắt auto restart khi update (máy chủ AD critical)
Bật KES Firewall: cho phép AD replication inbound
Scan schedule: ngoài giờ hành chính
Nhóm: File Servers
Windows File Share (SMB), DFS Namespace, NAS Gateway — lưu trữ dữ liệu nội bộ
Scan Exclusions
  • %SystemRoot%\Temp\ (temp OS)
  • %Temp%\ (user temp)
  • \$Recycle.Bin\ (thùng rác)
  • *.log, *.tmp (app logs)
  • *.vhd, *.vhdx (nếu lưu VM image)
Ports & Policy Settings
445/TCP 137–139/TCP 2049/TCP+UDP
Anti-Cryptor bật — phát hiện ransomware mã hóa file share
Real-time On-Access Scan bật cho tất cả shared folders
Scan nén (archive) bật — phát hiện malware ẩn trong .zip/.rar
Scheduled scan: hàng tuần, ngoài giờ hành chính
Giới hạn CPU scan: ≤ 50% để tránh ảnh hưởng I/O
Nhóm: FTP Servers
IIS FTP, vsftpd, FileZilla Server — nhận upload file từ bên ngoài (nguy cơ malware cao)
Scan Settings
  • Scan on-access: bật cho FTP root directory — scan file ngay khi upload
  • Scan archive & compressed: bật (upload .zip độc hại)
  • Exclusion (tuỳ chọn): thư mục log FTP service
  • Process: svchost.exe (IIS FTP), ftpsvc.exe
Ports & Policy Settings
20/TCP 21/TCP 990/TCP 989/TCP 49152–65535 (passive)
Web Threat Protection bật — phát hiện malware tải lên qua FTP
Quarantine tự động file độc hại thay vì xóa
Cấu hình KES Firewall: mở passive port range cho FTP client
Bật cảnh báo email khi phát hiện malware trong upload
Nhóm: Web Servers
IIS, Apache, Nginx, Tomcat, Node.js — phục vụ ứng dụng web nội bộ hoặc internet-facing
Scan Exclusions
  • %SystemDrive%\inetpub\logs\ (IIS logs)
  • /var/log/apache2/, /var/log/nginx/ (Linux)
  • Temp/cache thư mục của app framework
  • w3wp.exe (Behavior Analysis — không File Scan)
  • httpd.exe, nginx.exe, node.exe, java.exe
KHÔNG loại trừ thư mục web root khỏi File Scan — malware có thể upload shell vào đây
Ports & Policy Settings
80/TCP 443/TCP 8080/TCP 8443/TCP
Web Threat Protection bật — phát hiện webshell, script độc hại
Behavior Detection bật cho w3wp.exe, httpd.exe
Application Control: chỉ cho phép web server process đã whitelist
Giới hạn CPU scan: ≤ 30% (web server cần latency thấp)
Alert ngay khi có process con bất thường từ web process
Quy trình tạo Policy cho mỗi nhóm trong Web Console
  1. 1.Vào Assets → Policies & profilesAdd policy
  2. 2.Chọn application: Kaspersky Endpoint Security for Windows (hoặc Linux)
  3. 3.Đặt tên policy rõ ràng: POL-FileServers-Strict, POL-WebServers
  4. 4.Application Settings → Threats and Exclusions → thêm exclusion paths và processes theo bảng trên
  5. 5.Cấu hình Firewall rules nếu bật KES Firewall → thêm các port tương ứng
  6. 6.Gán policy vào đúng group: trong trang Policy → tab Policy scope → chọn Administration Group tương ứng
  7. 7.Sau khi deploy Network Agent, kéo thiết bị vào đúng nhóm: Assets → Managed devices → Move to group

7.1 Network Discovery (tìm thiết bị)

  1. 1.Vào Discovery & Deployment → Discovery → Windows network
  2. 2.Hoặc IP ranges — nhập dải 192.168.1.1–192.168.1.254
  3. 3.Chạy discovery — KSC sẽ liệt kê các thiết bị chưa được quản lý trong Unassigned devices

7.2 Cài Network Agent từ xa (Push install)

  1. 1.Vào Discovery & Deployment → Deployment & Assignment → Install applications
  2. 2.Chọn gói Network Agent 16.x đã tải ở bước 6
  3. 3.Chọn các thiết bị đích từ Unassigned devices (50 clients)
  4. 4.Nhập credentials admin của client (domain admin hoặc local admin)
  5. 5.Run task — Network Agent sẽ tự kết nối về KSC Server sau khi cài xong

7.3 Cài Kaspersky Endpoint Security cho Windows

# Sau khi Network Agent kết nối vào KSC, tạo Remote Installation Task
# Assets → Tasks → New Task
# Task type: Install application remotely
# Package: Kaspersky Endpoint Security for Windows 12.x
# Target: 50 managed devices
# Schedule: Run immediately
Sau khi KES được cài, các client sẽ hiển thị trong Assets → Managed devices với trạng thái OK (màu xanh). Policy bảo vệ mặc định tự áp dụng. Hệ thống sẵn sàng hoạt động.

Kiểm tra & Xử lý lỗi thường gặp

Checklist xác nhận · Log command · Lỗi phổ biến

Checklist xác nhận hoàn thành

Lệnh kiểm tra nhanh

# Trạng thái tất cả services KSC
sudo systemctl status kladminserver_srv ksc-web-console postgresql

# Ports đang hoạt động
sudo ss -tlnp | grep -E '13000|13291|14000|8080|5432'

# Log Administration Server (real-time)
sudo tail -f /var/log/kaspersky/ksc/*.log

# Log Web Console
sudo journalctl -u ksc-web-console -n 100 --no-pager

# Kiểm tra database kết nối
psql -h 127.0.0.1 -U ksc -d kscdb -c "SELECT NOW();"

Lỗi thường gặp và cách khắc phục

Connection refused / port 5432 không listen (PostgreSQL không chạy)

systemctl restart postgresql trả về OK nhưng không đảm bảo cluster đã chạypostgresql chỉ là service wrapper. Cluster thật là postgresql@15-main, thường chết do lỗi cú pháp trong postgresql.conf (Bước 2.3).

# 1. Kiểm tra cluster thật — cột Status "down" = đã chết
pg_lsclusters
# 2. Port có listen không
sudo ss -tlnp | grep 5432
# 3. Xem log tìm dòng config gây lỗi
sudo tail -50 /var/log/postgresql/postgresql-15-main.log
# 4. Sửa config lỗi rồi start lại cluster cụ thể
sudo systemctl restart postgresql@15-main

Đảm bảo postgresql.conflisten_addresses = 'localhost'port = 5432 (không bị comment #).

FATAL: configuration file "postgresql.conf" contains errors (invalid value for parameter)

Trường hợp cụ thể hay gặp nhất: gõ tắt đơn vị dung lượng khi sửa postgresql.conf ở Bước 2.3. Log báo:

LOG: invalid value for parameter "wal_buffers": "64M"
HINT: Valid units for this parameter are "B", "kB", "MB", "GB", and "TB".
FATAL: configuration file "/etc/postgresql/15/main/postgresql.conf" contains errors

Nguyên nhân: gõ 64M thay vì 64MB. Tương tự với 2G thay vì 2GB. Sửa:

sudo sed -i 's/^wal_buffers = 64M$/wal_buffers = 64MB/' /etc/postgresql/15/main/postgresql.conf
sudo systemctl restart postgresql@15-main
pg_lsclusters # phải thấy "online"
DBMS connection failed / password authentication failed
  • Kiểm tra PostgreSQL đang chạy: pg_lsclusters (Status = online)
  • Kiểm tra pg_hba.conf có dòng host kscdb ksc 127.0.0.1/32 md5
  • Kiểm tra mật khẩu DB đúng với mật khẩu nhập ở Bước 4 (#14) — mặc định A@q1w2e3r4t5
  • Test: psql -h 127.0.0.1 -U ksc -d kscdb
Unit ksc-web-console.service could not be found

Nguyên nhân gần như luôn luôn là: file cấu hình không nằm đúng vị trí lúc cài gói. Postinstall chỉ đọc /etc/ksc-web-console-setup.json — nếu không thấy, nó âm thầm bỏ qua bước tạo systemd service (không báo lỗi khi cài).

ls -la /etc/ksc-web-console-setup.json # phải tồn tại TRƯỚC khi cài
sudo dpkg --configure ksc-web-console # thử buộc chạy lại postinstall
sudo dpkg -i /tmp/ksc/ksc-web-console_16.2*.deb # hoặc cài đè lại
systemctl list-unit-files | grep -i ksc-web-console
Web Console không truy cập được (ERR_CONNECTION_REFUSED) dù service đã chạy
  • Kiểm tra service: sudo systemctl status ksc-web-console
  • Kiểm tra port 8080 mở UFW: sudo ufw status
  • Kiểm tra file JSON đúng cú pháp và đường dẫn cert (trusted) tồn tại thật trên máy
Hostname resolve thất bại (Network Agent không kết nối)
  • Đảm bảo /etc/hosts trên KSC server có entry đúng
  • Client phải resolve được hostname KSC — thêm vào DNS server hoặc hosts file của từng client
  • Test từ client: ping ksc-server.lab.local
kladminserver_srv crash / không start được
  • Kiểm tra swap đủ không: free -h
  • Kiểm tra đĩa còn trống: df -h
  • Xem chi tiết log: sudo journalctl -u kladminserver_srv -n 200
bash: !': event not found — lỗi khi reset password PostgreSQL

Xảy ra khi dùng psql -c "ALTER USER ksc WITH PASSWORD '...!';" trong bash — ký tự ! bị bash hiểu là history expansion.

Giải pháp — dùng psql interactive:

sudo -u postgres psql
-- trong psql prompt:
ALTER USER ksc WITH PASSWORD 'A@q1w2e3r4t5';
\q

Hoặc chạy set +H trước lệnh psql -c để tắt history expansion tạm thời.

IAM database trùng với Admin Server database

Script báo: "The name of the database used by IAM service must be different". Nhập lại: Admin Server → kscdb, IAM → ksciam. Đảm bảo đã tạo cả 2 DB ở Bước 2.

Zalo