08:00 - 21:00

SSH Là Gì? Kiến Thức Từ A – Z Về Giao Thức SSH

Bạn đang băn khoăn không biết SSH là gì mà lại đảm bảo mức độ bảo mật cao? Hãy cùng T2QWIFI tìm hiểu chi tiết vấn đề này qua nội dung dưới đây nhé!

SSH là một thuật ngữ quen thuộc với những người làm trong lĩnh vực công nghệ thông tin. Nhưng đối với người mới bắt đầu, SSH là gì và tại sao giao thức này lại quan trọng đến vậy? T2QWIFI sẽ giải đáp mọi thắc mắc của bạn về SSH, từ định nghĩa, cách hoạt động cho đến những lợi ích mà giao thức này mang lại. 

Cùng chúng tôi khám phá thế giới của SSH và nâng cao kiến thức về bảo mật mạng qua nội dung dưới đây nhé!

Giới thiệu về SSH

gioi thieu ve ssh

Để hiểu rõ về SSH, ngoài việc nắm vững định nghĩa cơ bản, bạn cần tìm hiểu cơ chế hoạt động của giao thức này:

SSH là gì?

SSH (viết tắt của Secure Shell) là một giao thức cho phép các quản trị viên mạng truy cập từ xa vào máy chủ thông qua mạng internet không bảo mật. Giao thức này cung cấp một bộ công cụ hỗ trợ phát triển và sử dụng SSH.

SSH thiết lập cơ chế xác thực mạnh mẽ bằng mật khẩu và tạo ra một kết nối dữ liệu được mã hóa giữa hai máy qua internet. Hiện nay, SSH được sử dụng rộng rãi bởi các quản trị viên mạng để quản lý và điều chỉnh các ứng dụng từ xa. Giao thức này cho phép người dùng đăng nhập vào mạng máy tính và thực hiện các tác vụ cơ bản như chuyển file.

Cơ chế hoạt động SSH

SSH hoạt động dựa trên nguyên lý mã hóa và xác thực để đảm bảo kết nối an toàn giữa client và server. Dưới đây là các bước chính trong cơ chế hoạt động của SSH:

  • Khởi tạo kết nối: Client thiết lập kết nối TCP tới server qua cổng 22;
  • Xác thực server: Server gửi khóa công khai, client kiểm tra khóa này và yêu cầu xác nhận nếu là lần kết nối đầu tiên;
  • Xác thực client: Server yêu cầu client cung cấp thông tin xác thực (mật khẩu hoặc khóa cá nhân);
  • Thỏa thuận mã hóa: Client và server đồng ý về thuật toán mã hóa và tạo khóa phiên (session key) để mã hóa dữ liệu;
  • Thiết lập kết nối bảo mật: Kết nối bảo mật được thiết lập, cho phép truyền dữ liệu an toàn giữa client và server;
  • Thực hiện tác vụ: Client thực hiện các lệnh từ xa, truyền file hoặc sử dụng dịch vụ qua kết nối SSH;
  • Kết thúc kết nối: Kết nối và tất cả các kênh dữ liệu được đóng khi phiên làm việc kết thúc.

Chức năng của SSH

Giao thức đảm nhiệm nhiều vai trò quan trọng trong việc quản lý và kết nối máy chủ. Các chức năng chính bao gồm:

  • Truy cập từ xa: Hỗ trợ truy cập vào hệ thống và thiết bị qua giao thức SSH;
  • Chuyển file an toàn: Cho phép truyền file một cách bảo mật;
  • Thực thi lệnh: Thực hiện lệnh từ xa một cách an toàn và bảo mật;
  • Quản lý mạng: Quản lý hiệu quả và an toàn các thành phần hạ tầng mạng;
  • Thay thế Telnet: SSH có thể kết hợp với Terminal Session để thay thế các chương trình Telnet, vốn có mức độ bảo mật thấp.

Kỹ thuật mã hóa trong SSH

ky thuat ma hoa trong ssh

Giao thức SSH sử dụng một loạt các kỹ thuật mã hóa để đảm bảo an toàn và bảo mật trong quá trình kết nối từ xa. Các kỹ thuật mã hóa chính trong SSH bao gồm:

Mã hóa Symmetric Encryption

Mã hóa Symmetric Encryption là một phương thức mã hóa sử dụng khóa bí mật để mã hóa và giải mã dữ liệu giữa Host và Client. Bất kỳ ai có khóa này đều có thể giải mã tin nhắn trong quá trình truyền tin.

Quá trình mã hóa theo phương thức mã hóa đối xứng gồm:

  • Khóa đối xứng được sử dụng để mã hóa toàn bộ phiên giao dịch trong giao thức SSH;
  • Host và Client sẽ tạo ra một khóa bí mật và giữ bí mật này tuyệt đối, không tiết lộ cho bên thứ ba;
  • Hai máy tính có thể chia sẻ thông tin chung để xác định khóa bí mật mà bất kỳ máy tính nào khác, dù có nắm bắt thông tin, cũng không thể giải mã khóa này;
  • Khóa bí mật chỉ có thời hạn sử dụng trong một phiên SSH và được tạo ra từ việc chứng thực Client.

Mã hóa Asymmetric Encryption

Không giống với Symmetric Encryption, phương thức Asymmetric Encryption sử dụng hai khóa riêng biệt cho việc mã hóa và giải mã: khóa công khai (Public Key) và khóa riêng tư (Private Key), tạo thành một cặp khóa Public-Private.

Cách thức mã hóa theo phương thức Asymmetric Encryption như sau:

  • Khóa công khai Public Key được chia sẻ với tất cả các bên liên quan;
  • Public Key liên kết trực tiếp với khóa riêng tư Private Key;
  • Public Key không thể tự mã hóa hoặc giải mã bất kỳ thông tin nào đã được mã hóa bởi Private Key;
  • Private Key luôn được giữ bí mật, không chia sẻ với bất kỳ bên thứ ba nào;
  • Nếu một bên giải mã thành công thông tin gửi đến Public Key, có nghĩa bên đó đang sở hữu Private Key.

Mã hóa Hashing

Hashing một chiều là phương thức mã hóa phổ biến trong kết nối SSH. Không giống như Symmetric Encryption và Asymmetric Encryption, Hashing không dùng để giải mã. Hash được tạo ra từ mỗi lần nhập liệu và không thể khai thác ngược lại để giải mã.

Để tạo ra một mã Hash rất đơn giản, chỉ cần một lần nhập liệu (Input). Tuy nhiên, không thể tái tạo lại Input từ mã Hash đã tạo. Điều này có nghĩa là chỉ Client nắm giữ Input đó có thể tạo ra mã Hash.

Quy trình xử lý các dạng mã hóa trong SSH

quy trinh xu ly cac dang ma hoa trong ssh

Quy trình xử lý các dạng mã hóa trong SSH thường bao gồm các bước chính sau:

Giai đoạn Session Encryption Negotiation

Để kết nối Client với Server qua TCP, Server phải cung cấp giao thức mã hóa và các phiên bản hỗ trợ. Nếu Client có giao thức tương thích và phiên bản đúng, một thỏa thuận sẽ được khởi tạo để sử dụng giao thức này. Server cũng sử dụng khóa công khai đối xứng (Symmetric Public Key) để xác thực.

Nếu thiết lập thành công, cả hai bên sẽ sử dụng thuật toán trao đổi khóa Diffie-Hellman để tạo ra khóa đối xứng nhằm đồng bộ quá trình liên lạc sau này.

Tóm tắt cách thức hoạt động của thuật toán Diffie-Hellman như sau:

  • Client và Server đồng ý sử dụng một giá trị khởi tạo chung;
  • Cả hai bên áp dụng thuật toán đặc biệt để triển khai thách thức mã hóa từ giá trị khởi tạo này. Cơ chế mã hóa này có tác động lớn đến seed value;
  • Hai bên tạo ra Private Key riêng;
  • Private Key được sử dụng cùng với thuật toán AES để tạo ra Public Key, sau đó phân phối đến máy còn lại;
  • Cả hai bên sử dụng Private Key của mình và Public Key của đối phương để tạo ra một khóa chung (Shared Key);
  • Khi cả hai đã có khóa chung, quá trình mã hóa đối xứng cho phiên SSH chính thức bắt đầu.

Giai đoạn chứng thực người dùng 

Đây là bước cuối cùng để người dùng có thể truy cập vào server, yêu cầu xác nhận thông tin trên hệ thống đăng nhập. Người dùng cần nhập tên đăng nhập trước, sau đó là mật khẩu. Thông tin này sau đó được truyền đến một hệ thống bảo mật đối xứng, ngăn chặn bất kỳ bên thứ ba nào thu thập.

Mặc dù mật khẩu đã được mã hóa, người dùng vẫn có nguy cơ bị lộ thông tin nếu không cẩn thận. Khi mật khẩu bị thu thập thành công bởi bên thứ ba, tài khoản của người dùng có thể bị chiếm đoạt. Các chuyên gia bảo mật khuyến nghị người dùng nên sử dụng SSH Key Pair, một bộ khóa bất đối xứng giúp xác thực người dùng mà không yêu cầu nhập mật khẩu.

Hướng dẫn kết nối SSH đến Server Linux

Trong khi tìm hiểu về SSH, bạn cũng nên nắm vững cách kết nối với Server Linux thông qua giao thức này:

Thiết lập Server Linux để chấp nhận kết nối

Trong hướng dẫn này, chúng tôi sẽ chỉ bạn cách cài đặt OpenSSH, công cụ hỗ trợ đăng nhập từ xa qua SSH. Sau khi tải xuống công cụ, mở Terminal (bằng cách nhấn Ctrl + Alt + T), và thực hiện các bước cài đặt:

  • Cập nhật danh sách gói hệ thống;
  • Nâng cấp các gói hệ thống hiện tại;
  • Cài đặt OpenSSH Server.

Cấu hình SSH Server

Sau khi cài đặt thành công OpenSSH, bước tiếp theo là cấu hình SSH Server. Bạn sẽ cần chỉnh sửa các thiết lập cơ bản để đảm bảo kết nối an toàn:

  • Mở Terminal và chỉnh sửa file cấu hình SSH;
  • Thay đổi cài đặt cổng mặc định (nếu cần) và cấu hình các tùy chọn bảo mật như giới hạn số lần đăng nhập.

Khi đã thực hiện xong các cài đặt, SSH Server sẽ tự động khởi chạy. Bạn có thể kiểm tra trạng thái của SSH Server để đảm bảo nó hoạt động đúng cách. Nếu cần dừng dịch vụ SSH, bạn có thể thực hiện lệnh tương ứng.

So sánh SSH, SSL/TLS và Telnet

Để hiểu rõ hơn sự khác biệt của hệ điều hành, bạn hãy tham khảo bảng so sánh sau đây:

Tiêu chí so sánhGiao thức SSHGiao thức SSL/TLSGiao thức Telnet
Mục đích chínhTruy cập và quản lý hệ thống từ xaBảo mật kết nối giữa trình duyệt và máy chủ webTruy cập và điều khiển hệ thống từ xa
Bảo mật Rất cao, mã hóa dữ liệu và xác thực bằng Public KeyCao, mã hóa dữ liệu trong kết nối web; SSL cũ có thể không an toànThấp, dữ liệu truyền qua văn bản đơn thuần
Cơ chế mã hóaMã hóa bằng Public Key và Symmetric KeyMã hóa bằng Public Key và Symmetric KeyKhông có mã hóa
Vị trí Port chạyPort 22Port 443 (thường dùng cho HTTPS)Port 23
Hệ thống phù hợpMạng công cộng (Public Network)Mạng công cộng (Public Network)Mạng nội bộ (Private Network)
Mạng nội bộ (Private Network)Tất cả hệ điều hànhTất cả hệ điều hànhLinux và Windows
Sử dụng phổ biếnQuản lý hệ thống từ xa, truyền tệp tinBảo mật giao dịch web, email và dữ liệu trực tuyếnTruy cập terminal từ xa
Khả năng bảo mật nâng caoCó, với các thiết lập và chứng thực mạnh mẽCó, với các chứng thực và mã hóa SSL/TLS mới nhấtKhông có
Xác thực người dùngPublic Key, mật khẩuCertificate (chứng chỉ số)Mật khẩu (không mã hóa)

Khi nào nên dùng SSH?

khi nao nen dung ssh

SSH là một giao thức mạnh mẽ được sử dụng rộng rãi để bảo vệ các kết nối mạng và thực hiện quản lý từ xa. Dưới đây là các trường hợp khi bạn nên sử dụng SSH:

  • Ứng dụng trong datacenter: Cung cấp kết nối bảo mật cho hệ thống cục bộ và máy chủ từ xa, hỗ trợ quản lý thiết bị và nền tảng ảo hóa;
  • Kết nối hệ thống máy chủ: Hỗ trợ các tác vụ tự động như sao lưu và quản lý cấu hình thông qua SSH Key Pair;
  • Đăng nhập một lần (SSO): Hỗ trợ hệ thống SSO, cho phép người dùng di chuyển giữa các tài khoản mà không cần nhập lại mật khẩu;
  • Mã hóa dữ liệu: Mã hóa toàn bộ dữ liệu truyền tải, đảm bảo an toàn khi chuyển file, duyệt web, hoặc nhập lệnh;
  • Xác thực thông tin: Sử dụng ID người dùng và mật khẩu cho xác thực. Mỗi kết nối yêu cầu một Public Key Pair để xác thực máy cục bộ từ xa và trực tiếp.

>>XEM THÊM:

Hy vọng qua những chia sẻ trên đây, bạn đã hiểu thêm về câu hỏi SSH là gì và kỹ thuật mã hóa trong giao thức này. Nếu vẫn còn thắc mắc, hãy nhanh tay liên hệ với T2QWIFI qua hotline: 0903 797 383 để được nhân viên tư vấn nhiệt tình bạn nhé!

Tin liên quan
Giao thức mạng ARP là gì? Phân loại, tầm quan trọng và cơ chế hoạt động của giao thức ARP. Tham khảo ngay nhé!
Giải đáp thắc mắc cáp quang là gì, phân loại cáp quang phổ biếny, tìm hiểu chi tiết về mạng cáp quang
IP Public là gì? Vì sao địa chỉ IP Public lại thay đổi? Điểm khác biệt giữa địa chỉ IP Public và địa chỉ IP Private
youtube
youtube
youtube