• About
  • Advertise
  • Privacy & Policy
  • Contact
NQ NEWS
  • Kiến thức tổng hợp
    • Development
    • Deep Learning
    • Cloud Computing
    • Kiến thức bảo mật
    • Tin học văn phòng
  • Thủ thuật
    • Phần Mềm
    • Sửa lỗi máy tính
    • Bảo mật máy tính
    • Tăng tốc máy tính
    • Thủ thuật Wifi
  • Quản trị hệ thống
    • Giải pháp bảo mật
    • Mail Server
    • Mạng LAN – WAN
    • Máy chủ
    • Windows Server 2012
  • Tin tức
No Result
View All Result
  • Kiến thức tổng hợp
    • Development
    • Deep Learning
    • Cloud Computing
    • Kiến thức bảo mật
    • Tin học văn phòng
  • Thủ thuật
    • Phần Mềm
    • Sửa lỗi máy tính
    • Bảo mật máy tính
    • Tăng tốc máy tính
    • Thủ thuật Wifi
  • Quản trị hệ thống
    • Giải pháp bảo mật
    • Mail Server
    • Mạng LAN – WAN
    • Máy chủ
    • Windows Server 2012
  • Tin tức
No Result
View All Result
NQ NEWS
No Result
View All Result
Home Quản trị hệ thống Máy chủ

Cách bảo mật máy chủ SSH

@admiz by @admiz
06/05/2021
in Máy chủ, Quản trị hệ thống
0
Chỉnh sửa file /etc/ssh/sshd_config

Bảo mật kết nối SSH giúp bạn bảo vệ hệ thống Linux và dữ liệu. Quản trị viên hệ thống và người dùng gia đình cũng cần phải bảo mật máy tính truy cập từ mạng Internet công khai (internet-facing computer). Dưới đây là 10 cách dễ dàng giúp bạn bảo vệ máy chủ SSH của mình.

  • Cách kích hoạt và sử dụng lệnh SSH trên Windows 10
  • Cách quản lý server Linux từ xa bằng SSH
  • Cài đặt máy chủ SSH trong Windows Server 2008

Đôi điều cơ bản về bảo mật SSH

SSH viết tắt của Secure Shell. Giao thức SSH hoặc công cụ phần mềm cho phép quản trị hệ thống và người dùng thực hiện kết nối an toàn với máy tính từ xa bằng giao thức đó.

Giao thức SSH là giao thức được mã hóa, thiết kế để cung cấp kết nối an toàn qua mạng không an toàn chẳng hạn như Internet. SSH trong Linux được xây dựng trên phiên bản di động của dự án OpenSSH. Nó được triển khai trong model máy khách – máy chủ cổ điển với máy chủ SSH chấp nhận kết nối từ máy khách SSH. Máy khách được sử dụng để kết nối với máy chủ và hiển thị phiên cho người dùng từ xa. Máy chủ chấp nhận kết nối và thực hiện phiên.

Trong cấu hình mặc định của nó, máy chủ SSH sẽ “nghe” kết nối đang đến trên Transmission Control Protocol (TCP), cổng 22. Vì đây là cổng được chuẩn hóa và phổ biến, nên nó là mục tiêu của các tác nhân đe dọa và bot độc hại.

Các tác nhân độc hại khởi chạy bot quét phạm vi địa chỉ IP để tìm kiếm cổng mở. Sau đó nó thăm dò các cổng này xem có lỗ hổng có thể khai thác không. Suy nghĩ, tôi an toàn, có nhiều mục tiêu lớn và tốt hơn tôi để những kẻ xấu nhắm đến là hoàn toàn sai lầm. Các bot này không chọn mục tiêu dựa trên bất cứ tiêu chí nào, nó chỉ đang tìm kiếm một cách để xâm nhập vào hệ thống.

Bạn sẽ là nạn nhân nếu không bảo mật hệ thống của mình.

Security Friction (Ma sát bảo mật)

Điểm Security Friction là bất kì tình huống nào mà nhiệm vụ chính bị ngăn chặn hoặc trì hoãn do yêu cầu bảo mật.

Ma sát bảo mật gây ra sự khó chịu (ở bất cứ cấp độ nào) cho người dùng và những người khác khi bạn thực hiện các biện pháp bảo mật. Người mới dùng hệ thống máy tính có thể lo lắng liệu họ có thực sự phải nhập mật khẩu mỗi khi đăng nhập vào mainframe không. Điều này đối với họ mà nói cũng là một dạng ma sát bảo mật.

Giới thiệu các biện pháp bảo mật thường sẽ bao gồm vài dạng ma sát cho một số người. Chủ doanh nghiệp phải trả tiền cho các biện pháp này. Người dùng máy tính có thể phải thay đổi các thói quen hoặc nhớ thông tin xác thực khác, thêm các bước để kết nối thành công. Quản trị viên hệ thống sẽ có thêm việc để thực hiện và bảo trì các biện pháp bảo mật mới.

Thắt chặt và khóa hệ điều hành Linux hoặc hệ điều hành giống Unix có thể nhanh chóng. Những biện pháp bảo mật ở đây là một bộ các bước dễ thực hiện sẽ cải thiện bảo mật máy tính mà không cần ứng dụng bên thứ ba và can thiệp sâu vào tường lửa.

Sử dụng giao thức SSH phiên bản 2

Năm 2006, giao thức SSH đã được cập nhật từ phiên bản 1 lên phiên bản 2. Đây là một nâng cấp đáng kể. Có rất nhiều thay đổi và cải tiến, đặc biệt là về mã hóa và bảo mật, phiên bản 2 không tương thích ngược với phiên bản 1. Để ngăn kết nối từ máy khách phiên bản 1, bạn có thể quy định máy tính chỉ chấp nhận kết nối từ phiên bản 2.

Để làm điều này, chỉnh sửa file /etc/ssh/sshd_config sử dụng lệnh sau:

sudo gedit /etc/ssh/sshd_config

Chỉnh sửa file /etc/ssh/sshd_config

Thêm dòng sau:

Protocol 2

Thêm dòng Protocol 2

Và lưu file, sau đó khởi động lại quá trình SSH daemon (trình nền) sử dụng lệnh sau:

sudo systemctl restart sshd

Khởi động lại quá trình SSH daemon

Kiểm tra hoạt động của thiết lập mới bằng cách chuyển sang một máy khác và thử SSH vào máy thử nghiệm. Chúng ta sẽ sử dụng tùy chọn -1 (giao thức 1) để buộc lệnh ssh sử dụng giao thức phiên bản 1.

ssh -1 dave@howtogeek.local

Thử kết nối với máy chủ SSH qua giao thức 1

Yêu cầu kết nối bị từ chối. Hãy đảm bảo bạn vẫn có thể kết nối với giao thức 2. Chúng ta sẽ sử dụng -2 (giao thức 2) để kiểm tra.

ssh -2 dave@howtogeek.local

Thử kết nối với máy chủ SSH qua giao thức 2

Thực tế, máy chủ SSH đang yêu cầu mật khẩu là một dấu hiệu tích cực cho thấy kết nối đã được thực hiện và bạn đang tương tác với máy chủ. Các máy khách SSH hiện đại sẽ mặc định sử dụng giao thức 2, chúng ta không cần phải chỉ định giao thức 2 với điều kiện máy khách được cập nhật.

ssh dave@howtogeek.local

Máy khách SSH hiện đại sẽ mặc định sử dụng giao thức 2

Kết nối đã được chấp nhận.

Tránh cổng 22

Cổng 22 là cổng tiêu chuẩn cho kết nối SSH. Nếu sử dụng cổng khác, nó thêm một chút bảo mật qua trạng thái mập mờ (Security Through Obscurity – STO) vào hệ thống của bạn. Bảo mật qua trạng thái mập mờ không bao giờ được xem là một biện pháp bảo mật thực sự. Thực tế, một vài bot tấn công thông minh hơn thăm dò tất cả các cổng mở và quyết định dịch vụ nào chúng đang thực hiện, thay vì dựa vào danh sách tìm kiếm đơn giản của các cổng và cho là chúng cung cấp dịch vụ thông thường. Nhưng sử dụng cổng không tiêu chuẩn có thể giúp giảm lưu lượng xấu trên cổng 22.

Để định cấu hình cổng không chuẩn, hãy chỉnh sửa file cấu hình SSH như trên.

Sử dụng cổng khác

Xóa # ở đầu dòng của dòng Port và thay thế 22 với số bạn chọn. Lưu file cấu hình và khởi động lại SSH daemon.

Trên máy tính khác chúng ta sẽ sử dụng lệnh ssh để kết nối với máy chủ. Lệnh ssh mặc định sử dụng cổng 22:

ssh dave@howtogeek.local

Sử dụng lệnh ssh để kết nối với máy chủ

Kết nối bị từ chối. Hãy thử lại và chỉ định cổng 470 sử dụng tùy chọn –p (cổng):

ssh -p 479 dave@howtogeek.local

Sử dụng cổng 470

Kết nối được xác nhận.

Kết nối bộ lọc sử dụng TCP Wrappers

TCP Wrappers là một danh sách kiểm soát truy cập dễ hiểu. Nó cho phép bạn từ chối và cho phép các kết nối dựa trên các đặc điểm của yêu cầu kết nối như địa chỉ IP hoặc tên máy chủ. TCP Wrappers nên được sử dụng với, không thay thế tường lửa cấu hình thích hợp.

TCP Wrappers đã được cài đặt sẵn trên máy Ubuntu 18.04 LTS. Nó phải được cài đặt trên Manjaro 18.10 và Fedora 30.

Để cài đặt trên Fedora, sử dụng lệnh sau:

sudo yum install tcp_wrappers

Cài đặt TCP Wrappers trên Fedora

Để cài đặt trên Manjaro, sử dụng lệnh này:

sudo pacman -Syu tcp-wrappers

Cài đặt TCP Wrappers trên Manjaro

Có hai file đi kèm, một file giữ danh sách cho phép và một file giữ danh sách từ chối. Chỉnh sửa danh sách từ chối sử dụng lệnh sau:

sudo gedit /etc/hosts.deny

Chỉnh sửa danh sách từ chối

Lệnh trên sẽ mở trình chỉnh sửa gedit với file từ chối tải trong đó.

Thêm dòng ALL : ALL

Bạn cần thêm dòng:

ALL : ALL

Và lưu file. Dòng này sẽ chặn tất cả các truy cập không được phép. Bây giờ, chúng ta cần cấp quyền cho các kết nối bạn muốn chấp nhận. Để làm điều đó, cần chỉnh sửa file cho phép:

sudo gedit /etc/hosts.allow

Chỉnh sửa file cho phép

Lệnh trên sẽ mở trình chỉnh sửa gedit với file cho phép tải trong đó.

Tải file cho phép

Chúng ta đã thêm vào tên SSH daemon, SSHD và địa chỉ IP của máy tính cho phép tạo kết nối. Lưu file và xem các hạn chế, quyền có hiệu lực không.

Đầu tiên, bạn sẽ thử kết nối từ máy tính không có trong file hosts.allow:

Thử kết nối từ máy tính không có trong file hosts.allow

Kết nối bị từ chối. Chúng ta sẽ thử kết nối từ máy có địa chỉ IP 192.168.4.23:

Kết nối từ máy có địa chỉ IP 192.168.4.23

Kết nối được chấp nhận.

Ví dụ ở đây chỉ cho phép duy nhất một máy có thể kết nối. TCP wrappers khá linh hoạt, nó hỗ trợ tên máy chủ, ký tự đại diện và mặt nạ subnet để chấp nhận kết nối từ phạm vi địa chỉ IP.

Từ chối yêu cầu kết nối không có mật khẩu

Mặc dù không tốt nhưng quản trị viên hệ thống Linux có thể tạo tài khoản người dùng không có mật khẩu. Điều đó có nghĩa là không yêu cầu mật khẩu cho kết nối từ xa từ tài khoản này. Những kết nối này sẽ được chấp nhận nhưng không được xác thực.

Cài đặt mặc định cho SSH chấp nhận yêu cầu kết nối không có mật khẩu. Chúng ta có thể thay đổi nó một cách dễ dàng và đảm bảo tất cả các kết nối đó được xác thực.

Bạn cần chỉnh sửa file cấu hình SSH.

Từ chối yêu cầu kết nối không có mật khẩu

Cuộn xuống trong file cho đến khi bạn thấy dòng ghi #PermitEmptyPasswords no. Xóa # ở đầu dòng và lưu file. Khởi động lại SSH daemon.

Sử dụng key SSH thay cho mật khẩu

Key SSH cung cấp cách đăng nhập vào máy chủ SSH một cách an toàn. Mật khẩu có thể bị crack, đoán hoặc sử dụng phương thức tấn công Brute-forced. Key SSH không dễ dàng bị tấn công bởi các loại tấn công này.

Khi tạo key SSH, bạn tạo một cặp key. Một là key chung và một là key riêng. Key chung được cài đặt trên các máy chủ bạn muốn kết nối. Key riêng được giữ an toàn trên máy tính của bạn.

Key SSH cho phép tạo kết nối mà không cần mật khẩu, an toàn hơn kết nối sử dụng xác thực mật khẩu.

Khi tạo yêu cầu kết nối, máy tính từ xa sử dụng bản sao của key chung để tạo thông báo được mã hóa gửi ngược lại cho máy tính. Vì nó được mã hóa với key chung, máy tính có thể giải mã nó với key riêng.

Sau đó, máy tính sẽ trích xuất một số thông tin từ thông báo, mã hóa nó và gửi lại cho máy chủ. Nếu máy chủ có thể giải mã nó với bản sao key chung. Nếu thông tin trong thông báo khớp với những gì máy chủ gửi cho bạn, kết nối sẽ được xác nhận.

Ở đây, kết nối được tạo cho máy chủ tại 192.168.4.11 bởi người dùng có key SSH. Lưu ý họ không được nhắc để nhập mật khẩu.

ssh dave@192.168.4.11

Sử dụng key SSH thay cho mật khẩu

Vô hiệu hóa xác thực mật khẩu hoàn toàn

Bạn có thể tắt hoàn toàn xác thực mật khẩu nếu sử dụng key SSH. Chúng ta cần chỉnh sửa file cấu hình SSH.

Vô hiệu hóa xác thực mật khẩu hoàn toàn

Cuộn xuống file cho đến khi nhìn thấy dòng bắt đầu với #PasswordAuthentication yes. Xóa # ở đầu dòng, thay đổi yes thành no và lưu file. Khởi động lại SSH daemon.

Vô hiệu hóa chuyển tiếp X11

Chuyển tiếp X11 cho phép người dùng từ xa chạy ứng dụng đồ họa từ máy chủ của bạn qua phiên SSH nhưng dễ bị kẻ xấu lợi dụng. Tốt hơn hết bạn nên tắt nó đi bằng cách chỉnh sửa file cấu hình SSH.

Vô hiệu hóa chuyển tiếp X11

Cuộn xuống file cho đến khi thấy dòng #X11Forwarding no, xóa # ở đầu dòng và lưu file. Khởi động lại SSH daemon.

Thiết lập giá trị thời gian chờ nhàn rỗi

Nếu thiết lập kết nối SSH với máy tính và không có hoạt động trên đó trong một khoảng thời gian, điều này có thể gây rủi ro bảo mật.

Do đó bạn nên thiết lập giới hạn thời gian chờ. Kết nối SSH sẽ bị ngắt kết nối nếu không có hoạt động trong giới hạn thời gian. Lại một lần nữa, chúng ta cần chỉnh sửa file cấu hình SSH.

Thiết lập giá trị thời gian chờ nhàn rỗi

Cuộn xuống file cho đến khi thấy dòng bắt đầu với #ClientAliveInterval 0. Xóa # ở đầu dòng, thay đổi số 0 thành giá trị bạn mong muốn. Thường mọi người thiết lập thành 300 giây, tức 5 phút. Lưu file và khởi động lại SSH daemon.

Thiết lập giới hạn số lần nhập mật khẩu

Xác định giới hạn số lần xác nhận có thể giúp ngăn chặn việc đoán mật khẩu và tấn công brute-force. Sau số lượng yêu cầu xác thực được chỉ định, người dùng sẽ bị ngắt kết nối khỏi máy chủ SSH. Theo mặc định, không có giới hạn số lần thử mật khẩu nhưng bạn có thể chỉnh sửa điều đó trong file cấu hình SSH.

Thiết lập giới hạn số lần nhập mật khẩu

Cuộn xuống file cho đến khi thấy dòng bắt đầu với #MaxAuthTries 0. Xóa # ở đầu dòng thay đổi số thành giá trị mong muốn. Bạn có thể đặt là 3. Lưu file khi thực hiện thay đổi và khởi động lại SSH daemon.

Bạn có thể kiểm tra điều này bằng cách thử kết nối và nhập sai mật khẩu.

Thử kết nối và nhập sai mật khẩu

Lưu ý, số MaxAuthTries nhiều hơn số lần thử mà người dùng được phép. Sau hai lần thử không thành công, bạn bị ngắt kết nối thì có nghĩa MaxAuthTries được thiết lập là 3.

Vô hiệu hóa đăng nhập bằng root

Bạn được khuyên không nên đăng nhập bằng root, chỉ nên dùng như người dùng bình thường trên Linux và sử dụng sudo để thực hiện hành động yêu cầu quyền root. Bạn cũng không nên cho phép root đăng nhập vào máy chủ SSH. Chỉ người dùng bình thường mới được phép kết nối. Nếu cần thực hiện một nhiệm vụ mức quản trị, họ cũng có thể sử dụng sudo. Nếu buộc phải cho phép người dùng root đăng nhập, bạn có thể buộc họ sử dụng key SSH.

Chỉnh sửa file cấu hình để vô hiệu hóa đăng nhập root.

Cuộn xuống file cho đến khi thấy dòng bắt đầu bằng #PermitRootLogin prohibit-password, xóa # ở đầu dòng.

  • Nếu muốn ngăn root không đăng nhập, thay thế prohibit-password bằng no.
  • Nếu cho phép root đăng nhập nhưng buộc sử dụng key SSH để nguyên prohibit-password.

Lưu thay đổi và khởi động lại SSH daemon.

Bước cuối cùng

Tất nhiên, nếu không cần SSH chạy trên máy tính của mình, hãy tắt nó đi với lệnh sau:

sudo systemctl stop sshd
sudo systemctl disable sshd

Chúc các bạn thực hiện thành công!

  • Tải Windows Server 2019 và khám phá những tính năng mới
  • 5 VPS free tốt nhất bạn nên thử
  • Game server riêng có hợp pháp không?
  • So sánh VMware Workstation Pro và VMware Workstation Player
  • Tủ mạng là gì? Chức năng của tủ mạng đối với máy chủ
  • 5 lý do tại sao nên tránh các proxy server miễn phí
Post Views: 170
Previous Post

Hướng dẫn tăng tốc độ tải website một cách đơn giản

Next Post

So sánh Nginx và Apache

Related Posts

Quicktime Player Logo650 1
macOS

Cách ghép video trên macOS bằng QuickTime Player

26/12/2021
Kali Linux 2021 4 700 1
Linux

Kali Linux 2021.4: Thêm 9 công cụ mới và hỗ trợ tốt hơn cho Apple M1

26/12/2021
Openbsd La Gi 1
Linux

OpenBSD là gì? Đây là mọi thứ bạn cần biết về hệ điều hành này!

26/12/2021
Mac Os Xoa Ung Dung Cai Dat Logo640 1
macOS

Cách gỡ, xóa ứng dụng trên Mac OS

26/12/2021
Tim Thu Vien Anh Photos Library Tren May Mac700 1
macOS

Hướng dẫn tìm thư viện ảnh Photos Library trên máy Mac

26/12/2021
So Sanh Macbook Pro Macbook Air Va Ipad Pro 1
macOS

So sánh MacBook Pro 13 inch với MacBook Air và iPad Pro

26/12/2021
Next Post
Nginx và Apache chiếm lĩnh gần 85% thị trường máy chủ web

So sánh Nginx và Apache

Bài mới nhất

Schema Là Gì? Tác Dụng Và Các ảnh Hưởng Của Schema Trong Seo Website 612d2151ce010.jpeg

Schema là gì? Tác dụng và các ảnh hưởng của Schema trong SEO website

27/06/2025
Sitemap Là Gì? Vì Sao Doanh Nghiệp Lại Cần Phải Tạo Sitemap Cho Website? 612d214ccfff9.jpeg

Sitemap là gì? Vì sao doanh nghiệp lại cần phải tạo sitemap cho website?

27/06/2025
Top 11 Công Ty Thiết Kế Website Tại Huế Uy Tín, Chuyên Nghiệp, Chuẩn Seo 612d25b49e1ec.jpeg

Top 11 công ty thiết kế website tại Huế uy tín, chuyên nghiệp, chuẩn SEO

26/06/2025
mẫu thiết kế website công ty người mẫu ấn tượng

Dịch vụ thiết kế website công ty người mẫu nổi bật, cao cấp tại NQ News

26/06/2025
Thiết Kế Website Công Ty Viễn Thông, Dịch Vụ Mạng Chuyên Nghiệp, Uy Tín 612d253e4213f.jpeg

Thiết kế website công ty viễn thông, dịch vụ mạng chuyên nghiệp, uy tín

25/06/2025

Danh mục

  • Android
  • Bảo mật máy tính
  • Bảo mật, Antivirus
  • Chuyện công nghệ
  • Deep Learning
  • Development
  • Dịch vụ công trực tuyến
  • Dịch vụ nhà mạng
  • Giải pháp bảo mật
  • Hệ thống
  • Hệ thống
  • iPhone
  • Kiến thức bảo mật
  • Kiến thức cơ bản phổ thông
  • Kiến thức Marketing căn bản
  • Kiến thức tổng hợp
  • Lập trình
  • Linux
  • Linux OS
  • macOS
  • Mail Server
  • Mạng LAN – WAN
  • Máy ảo
  • Máy chủ
  • ms excel
  • ms-powerpoint
  • Nền tảng điện toán đám mây
  • Phần cứng
  • Phần Mềm
  • Quản trị hệ thống
  • Raspberry Pi
  • Sửa lỗi máy tính
  • Tăng tốc máy tính
  • Thủ thuật
  • Thủ thuật SEO
  • Thủ thuật Wifi
  • Tiện ích hệ thống
  • Tin học văn phòng
  • Tin tức
  • Uncategorized
  • Ứng dụng
  • Website
  • Windows Server 2012

Thẻ

#app #chatbot #chatbot tự động #CRM #Kiến thức cơ bản #Techblog #Thiết kế website Android apple CPU Email Marketing Google Google Drive hacker HTML hàm python hàm python có sẵn hình nền hình nền máy tính học css học python học SQL ios iphone iphone 12 iPhone X macos Microsoft mssql MS SQL Server ngôn ngữ lập trình python Raspberry Pi Samsung smartphone SQL SQL Server tham số trong C thủ thuật windows 10 tài liệu python windows windows 10 YouTube điện thoại thông minh ứng dụng
  • About
  • Advertise
  • Privacy & Policy
  • Contact

© 2022 Pha Le Solution

No Result
View All Result
  • Home

© 2022 Pha Le Solution