Chủ Nhật, 5 Tháng Năm, 2024
Trang chủBlogTìm hiểu về giao thức SSH 

Tìm hiểu về giao thức SSH 

Giao thức SSH (còn được gọi là Secure Shell) là một phương pháp đăng nhập từ xa an toàn từ máy tính này sang máy tính khác. Nó cung cấp một số tùy chọn thay thế để xác thực mạnh mẽ và bảo vệ tính bảo mật và tính toàn vẹn của thông tin liên lạc bằng mã hóa mạnh. Đây là giải pháp thay thế an toàn cho các giao thức đăng nhập không được bảo vệ (chẳng hạn như telnet, rlogin) và các phương thức truyền file không an toàn (chẳng hạn như FTP).

Ứng dụng của giao thức SSH

Giao thức SSH được sử dụng chủ yếu trong doanh nghiệp để:

  • Cung cấp quyền truy cập an toàn cho người dùng và các quy trình tự động
  • Tương tác với file
  • Dùng lệnh từ xa
  • Quản lý cơ sở hạ tầng mạng và các thành phần hệ thống quan trọng khác

Cách giao thức SSH hoạt động

Giao thức hoạt động theo mô hình client-server, có nghĩa là kết nối được thiết lập bởi máy khách SSH kết nối với máy chủ SSH. Máy khách SSH điều khiển quá trình thiết lập kết nối và sử dụng mã khóa công khai để xác minh danh tính của máy chủ SSH. Sau giai đoạn thiết lập, giao thức SSH sử dụng thuật toán băm và mã hóa đối xứng mạnh để đảm bảo quyền riêng tư và tính toàn vẹn của dữ liệu được trao đổi giữa máy khách và máy chủ.

Hình bên dưới trình bày quy trình thiết của một kết nối shell an toàn.

Xác thực mạnh mẽ bằng khóa SSH

Có nhiều tùy chọn có thể được sử dụng để xác thực người dùng. Phổ biến nhất là mật khẩu và Public key authentication

Public key authentication chủ yếu được sử dụng để tự động hóa và đôi khi được quản trị viên hệ thống sử dụng để đăng nhập một lần. Ý tưởng là có một cặp khóa public key và private key. Public key được cấu hình trên máy chủ để cấp quyền truy cập và sẽ được cấp cho bất kỳ ai có bản sao của Private key quyền truy cập vào Server. Các khóa được sử dụng để xác thực được gọi là SSH Keys

Khả năng mã hóa mạnh mẽ

Khi kết nối đã được thiết lập giữa máy khách và máy chủ SSH, dữ liệu được truyền đi sẽ được mã hóa theo các tham số đã được thương lượng trong quá trình thiết lập. Trong quá trình đàm phán, máy khách và máy chủ đồng ý về thuật toán mã hóa đối xứng sẽ được sử dụng và tạo khóa mã hóa sẽ được sử dụng. Lưu lượng giữa các bên giao tiếp được bảo vệ bằng thuật toán mã hóa mạnh tiêu chuẩn (chẳng hạn như AES (Advanced Encryption Standard)) và giao thức SSH cũng bao gồm cơ chế đảm bảo tính toàn vẹn của dữ liệu được truyền bằng cách sử dụng thuật toán băm tiêu chuẩn (chẳng hạn như SHA -2 (Standard Hashing Algorithm)).

Các kiểu mã hóa dữ liệu trong SSH

Giao thức SSH sử dụng 3 kiểu mã hóa sau để mã hóa dữ liệu:

1. Hashing 

Hashing một chiều là một dạng mã hoá khác sử dụng trong Secure Shell Connections. Hash một chiều không được sinh ra để giải mã đây cũng là điểm khác biệt so với hai cách sau. Nó tạo ra một giá trị duy nhất với độ dài nhất định cho mỗi lần nhập dữ liệu mà không có hướng nào để khai thác. Việc này có nhược điểm là không quay lại để giải mã được.

2. Asymmetric Encryption

Asymmetric encryption dùng 2 khoá khác nhau để giải mã và mã hóa. Hai khoá này là private key và public key. Cả 2 đã hình thành nên một cặp khóa được gọi là private-public key pair.

Public key được cung cấp công khai cho tất cả mọi người. Private key chỉ có thể được truy cập bởi người nhận hoặc hệ thống được ủy quyền.

Sự liên quan giữa private key và public key diễn ra rất phức tạp: chỉ được giải mã bằng private key của chính máy đó và thư chỉ có thể được giải mã bởi private key. Sự liên quan một chiều này nghĩa là public key không thể giải mã bất cứ thứ gì được mã hóa bằng private key hoặc không thể giải mã chính thư của nó sở hữu.

3. Symmetric Encryption

Symmetric Encryption

Symmetric Encryption là một dạng mã hoá sử dụng secret key ở cả 2 chiều giải mã và mã hoá tin nhắn bởi cả client và host. Có nghĩa là ai nắm được khoá đều có thể giải mã tin nhắn trong quá trình truyền đi.

Symmetrical Encryption còn được gọi là shared secret hoặc shared key encryption. Bởi vì có một khoá được dùng, hoặc cặp khoá mà một khoá có thể được tính ra từ khoá kia. 

Người dùng mã hoá toàn bộ liên lạc trong phiên bản giao dịch SSH bằng cách sử dụng symmetric keys. Cả server và client tạo chung một key bí mật như là một phương thức thỏa thuận, và key đó không được tiết lộ cho bên thứ 3. Quá trình tạo symmetric key được thực hiện bởi key exchange algorithm.

Bài viết liên quan

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây

Bài viết nổi bật

Ý kiến gần đây