6. Encrypt data communication
Tất cả dữ liệu truyền trên mạng đều có thể bị nghe lén bởi,
và do vậy cần mã hóa dữ liệu khi truyền khi có thể bằng password hoặc sử dụng các kênh truyền có mã hóa.
Sử dụng scp, ssh, rsyncm hoặ sftp cho việc truyền file. Với
các công cụ sshfs và fuse bạn có thể mount file system hoặc thư mục home của
chính bạn từ xa (remote server file system).
GnuPG cho phép mã hóa và ký vào dữ liệu và thông điệp của
bạn, thêm nữa hỗ trợ quản lý file một cách tiện lợi.
Fugu là một giao diện đồ họa frontend hỗ trợ SFTP. SFTP là
một giao thức an toàn hơn FTP, vì nó mã hóa dữ liệu trên đường truyền. Hoặc có
lựa chọn khác là sử dụng FileZilla.
OpenVPN là một giải pháp hiệu quả
Không sử dụng FTP, Telnet và Rlogin/Rsh
Các dữ liệu truyền trên mạng mà sử dụng các dịch vụ trên có
thể bị nghe lén bới bất cứ ai bằng cách bắt gói tin (packet sniffer). Giải pháp
hiệu quả là sử dụng các giao thức an toàn hơn như OpenSSH, SFTP hoặc FTPS (FTP
over SSL). Thực hiện câu lệnh dưới đây để loại bỏ các dịch vụ không an toàn:
# yum erase inetd xinetd ypserv
tftp-server telnet-server rsh-server
7.
Không login với tài khoản root
Không bao giờ sử dụng tài khoản root. Bạn chỉ nên sử dụng
sudo để thực thi với quyền của root mỗi khi cần. sudo giúp gia tăng tính bảo
mật cho hệ thống khi không cần sử dụng mật khẩu của root cho tài khoản khác.
Sudo còn cho phép auditing và tracking những gì đã được thực hiện.
8. Thiết lập chính sách mật khẩu tốt
Để thiết lập một chính sách mật khẩu tốt các bạn tham khảo thêm bài viết Thiết lập chính sách mật khẩu trong Linux
Ngoài ra còn một số vấn đề cần đề cập thêm để đảm bảo tính an toàn cho hệ thống trong quá trình sử dụng đối với từng tài khoản cụ thể.
Số ngày được phép hoạt động của 1
password
Thực hiện câu lệnh dưới đây để kiểm tra số ngày được phép sử
dụng của một tài khoản nào đó:
# chage –l userName
Hoặc có thể xem trong /etc/shadow. Cấu trúc file /etc/shadow như sau:
{userName}:{password}:{lastpasswdchanged}:{Minimum_days}:{Maximum_days}:{Warn}:{Inactive}:{Expire}:
Trong đó:
Minimum_days: là số ngày tối thiểu mà 1 mật khẩu
phải được sử dụng
Maximum_days: là số ngày tối đa mà 1 mật khẩu
được sử dụng
Warn: số ngày hệ thống sẽ cảnh báo tài
khoản cần đổi mật khẩu
Expire: số ngày kể từ 1/1970 tài khoản sẽ
bị khóa
Nếu muốn thay đổi giới hạn về số ngày thực hiện câu lệnh:
# chage -M MAX -m MIN -W WARN
userName
Trong đó:
MAX là maximum_days
– số ngày tối đa được sử dụng muốn thiết
lập
MIN là Minimum_days – số ngày tối thiểu muốn thiết lập
WARN là Warn – Số ngày cảnh báo muốn thiết lập
userName là tên tài khoản muốn áp dụng
Không sử dụng các tài khoản không có
password
Thực hiện câu lệnh sau để tìm các tài khoản không có
password
# awk -F: '($2 == "")
{print}' /etc/shadow
Sau đó, sử dụng câu lệnh sau để khóa tài khoản
# passwd -l accountName
Chắc chắn rằng không có tài khoản nào khác root được thiết
lập UID là 0
Thực hiện câu lệnh sau:
# awk -F: '($3 == "0")
{print}' /etc/passwd
9. Loại bỏ các ứng dụng không cần
thiết
Cần xem xét lại các dịch vụ đang được sử dụng có thực sự cần
thiết? Tránh cài đặt các phần mềm không cần thiết để tránh những lỗi từ các
phần mềm này. Sử dụng RPM quản lý các
gói đã cài như yum, apt-get hoặc dpkg. Xóa bỏ các gói không cần thiết:
# yum list installed
# yum list packageName
# yum remove packageName
Hoặc
# dpkg --list
# dpkg –info packageName
# apt-get remove packageName
10.
Loại bỏ các dịch vụ không mong muốn
Đối với các dịch vụ không sử dụng càn phải disable để tránh
các nguy cơ tiềm ẩn từ các dịch vụ này. Thực hiện câu lệnh sau để kiểm tra danh
sách các service được khởi động cùng hệ thống chạy với level 3
# /sbin/chkconfig --list | grep
'3:on'
Mặc định để tìm các dịch vụ đang chạy với level 5 :
# /sbin/chkconfig --list
Để disable dịch vụ nào đó:
# service serviceName stop
# /sbin/chkconfig serviceName off
Nếu không có nhu cầu sử dụng, tắt các dịch vụ sau:
anacron haldaemon messagebus
apmd hidd microcode_ctl
autofs` hplip* pcscd
avahi-daemon* isdn readahead_early
bluetooth kdump readahead_later
cups* kudzu rhnsd*
firstboot mcstrans setroubleshoot
gpm mdmonitor xfs
Trong đó: * là các dịch vụ mạng.
Nếu nó không thực sự cần thiết thì nên disable. Thêm nữa các dịch vụ sau cũng
nên disable nếu không sử dụng NFS: netfs, nfslock, portmap, rpcgssd, and rpcidmapd.
Các dịch vụ như haldaemon and messagebus, nên xem xét cẩn
thận khi disable chúng.
Để thiết lập có hiệu lực cần reboot hệ thống.
Đóng các cổng không cần thiết
Thực hiện câu lệnh sau để liệt kê các cổng đang được mở:
# netstat –tulpn
Từ đó lọc ra các công mà không được sử dụng thì thực hiện đóng
lại bằng Iptables hoặc dừng các dịch vụ chạy trên cổng đó.
(còn nữa)
-- Jukai Helios --
No comments:
Post a Comment