qhoa
12-22-2007, 12:59 PM
Trong bài này, chúng tôi giới thiệu một số thủ thuật đơn giản giúp bạn nâng cao tính năng bảo mật cho dịch vụ Secure Shell (SSH).
File cấu h́nh server SSH được đặt trong thư mục /etc/ssh/sshd_conf. Bạn cần khởi động lại dịch vụ SSH sau mỗi lần thay đổi để các thay đổi đó được thực thi.
Thay đổi cổng SSH
Mặc định, SSH tuân theo các kết nối đến trên cổng 22. Kẻ tấn công thường sử dụng phần mềm quét cổng xem liệu các host (máy trạm) có sử dụng dịch vụ SSH không. Thay đổi cổng SSH lên cao hơn 1024 là một lựa chọn khôn ngoan, v́ hầu hết mọi chương tŕnh quét cổng (gồm cả nmap) mặc định đều rà soát được các cổng cao.
Mở file /etc/ssh/sshd_config và t́m ḍng có ghi:
Port 22
Thay đổi số cổng và khởi động lại dịch vụ SSH:
/etc/init.d/ssh restart
Chỉ cho phép sử dụng giao thức SSH 2
Có hai loại giao thức SSH. Nếu chỉ dùng giao thức SSH 2 th́ sẽ an toàn hơn nhiều v́ SSH 1 thường gặp phải vấn đề bảo mật với kiểu tấn công man-in-the-middle và insertion. Mở file /etc/ssh/sshd_config và t́m ḍng sau:
Protocol 2,1
Thay đổi ḍng thành protocol 2.
Chỉ cho phép một số đối tượng người dùng đăng nhập qua SSH
Bạn không nên cho phép người dùng root đăng nhập qua SSH, v́ điều này gây nên mối đe doạ bảo mật lớn mà không cần thiết. Nếu một kẻ tấn công nào đó thu được đặc quyền root khi đăng nhập vào máy, khả năng phá hoại có thể gấp mấy lần người dùng thông thường. Bạn nên cấu h́nh server SSH không cho phép người dùng root đăng nhập. Đầu tiên, t́m ḍng ghi:
PermitRootLogin yes
Thay đổi yes thành no và khởi động lại dịch vụ. Sau đó bạn có thể đăng nhập lại hệ thống với bất kỳ vai tṛ người dùng xác định nào đó và chuyển sang người dùng root nếu muốn trở thành siêu người dùng.
Sẽ khôn ngoan hơn khi tạo một user cục bộ giả hoàn toàn không có đặc quyền ǵ trên hệ thống và dùng tên user đó để đăng nhập SSH. Sử dụng cách thức này sẽ giúp máy tính không bị hại dù tài khoản người dùng có bị xâm phạm. Khi tạo người dùng này, hăy chắc chắn nó phải nằm trong nhóm wheel để bạn có thể chuyển sang nhóm superuser (siêu người dùng) nếu cần.
Nếu muốn tạo danh sách một số đối tượng người dùng được phép đăng nhập vào SSH, bạn có thể mô tả chúng trong file sshd_config. Ví dụ, nếu muốn cho phép người dùng anze, dasa, kimy đăng nhập qua SSH, ở cuối file sshd_config, thêm vào một ḍng như sau:
AllowUsers anze dasa kimy
Tạo banner SSH tuỳ biến
Nếu muốn mời một người dùng kết nối tới dịch vụ SSH để xem một thư nào đó, bạn có thể tạo banner SSH tuỳ biến. Thực hiện đơn giản bằng cách tạo một file text (trong ví dụ là file etc/ssh-banner.txt) và đặt bất kỳ kiểu thư text nào bạn có vào trong đó. Ví dụ:
************************************************** ***************
*This is a private SSH service. You are not supposed to be here.*
*Please leave immediately. *
************************************************** ***************
Khi muốn chỉnh sửa hoặc ghi file, trong sshd_conf, t́m ḍng ghi:
#Banner /etc/issue.net
Không cần b́nh luận về ḍng trên mà hăy thay đổi đường dẫn tới file text banner SSH tuỳ biến của bạn.
File cấu h́nh server SSH được đặt trong thư mục /etc/ssh/sshd_conf. Bạn cần khởi động lại dịch vụ SSH sau mỗi lần thay đổi để các thay đổi đó được thực thi.
Thay đổi cổng SSH
Mặc định, SSH tuân theo các kết nối đến trên cổng 22. Kẻ tấn công thường sử dụng phần mềm quét cổng xem liệu các host (máy trạm) có sử dụng dịch vụ SSH không. Thay đổi cổng SSH lên cao hơn 1024 là một lựa chọn khôn ngoan, v́ hầu hết mọi chương tŕnh quét cổng (gồm cả nmap) mặc định đều rà soát được các cổng cao.
Mở file /etc/ssh/sshd_config và t́m ḍng có ghi:
Port 22
Thay đổi số cổng và khởi động lại dịch vụ SSH:
/etc/init.d/ssh restart
Chỉ cho phép sử dụng giao thức SSH 2
Có hai loại giao thức SSH. Nếu chỉ dùng giao thức SSH 2 th́ sẽ an toàn hơn nhiều v́ SSH 1 thường gặp phải vấn đề bảo mật với kiểu tấn công man-in-the-middle và insertion. Mở file /etc/ssh/sshd_config và t́m ḍng sau:
Protocol 2,1
Thay đổi ḍng thành protocol 2.
Chỉ cho phép một số đối tượng người dùng đăng nhập qua SSH
Bạn không nên cho phép người dùng root đăng nhập qua SSH, v́ điều này gây nên mối đe doạ bảo mật lớn mà không cần thiết. Nếu một kẻ tấn công nào đó thu được đặc quyền root khi đăng nhập vào máy, khả năng phá hoại có thể gấp mấy lần người dùng thông thường. Bạn nên cấu h́nh server SSH không cho phép người dùng root đăng nhập. Đầu tiên, t́m ḍng ghi:
PermitRootLogin yes
Thay đổi yes thành no và khởi động lại dịch vụ. Sau đó bạn có thể đăng nhập lại hệ thống với bất kỳ vai tṛ người dùng xác định nào đó và chuyển sang người dùng root nếu muốn trở thành siêu người dùng.
Sẽ khôn ngoan hơn khi tạo một user cục bộ giả hoàn toàn không có đặc quyền ǵ trên hệ thống và dùng tên user đó để đăng nhập SSH. Sử dụng cách thức này sẽ giúp máy tính không bị hại dù tài khoản người dùng có bị xâm phạm. Khi tạo người dùng này, hăy chắc chắn nó phải nằm trong nhóm wheel để bạn có thể chuyển sang nhóm superuser (siêu người dùng) nếu cần.
Nếu muốn tạo danh sách một số đối tượng người dùng được phép đăng nhập vào SSH, bạn có thể mô tả chúng trong file sshd_config. Ví dụ, nếu muốn cho phép người dùng anze, dasa, kimy đăng nhập qua SSH, ở cuối file sshd_config, thêm vào một ḍng như sau:
AllowUsers anze dasa kimy
Tạo banner SSH tuỳ biến
Nếu muốn mời một người dùng kết nối tới dịch vụ SSH để xem một thư nào đó, bạn có thể tạo banner SSH tuỳ biến. Thực hiện đơn giản bằng cách tạo một file text (trong ví dụ là file etc/ssh-banner.txt) và đặt bất kỳ kiểu thư text nào bạn có vào trong đó. Ví dụ:
************************************************** ***************
*This is a private SSH service. You are not supposed to be here.*
*Please leave immediately. *
************************************************** ***************
Khi muốn chỉnh sửa hoặc ghi file, trong sshd_conf, t́m ḍng ghi:
#Banner /etc/issue.net
Không cần b́nh luận về ḍng trên mà hăy thay đổi đường dẫn tới file text banner SSH tuỳ biến của bạn.