0
0
Posts
Admin Team
Admin Teamtechmely

Hướng Dẫn Toàn Diện về Giao Thức SSH: Kết Nối An Toàn và Quản Lý Từ Xa

Đăng vào 1 ngày trước

• 4 phút đọc

Chủ đề:

SSHNetworking

Giao Thức SSH (Secure Shell)

SSH (Secure Shell) là một giao thức mạng quan trọng được thiết kế để tạo ra kết nối an toàn giữa hai thiết bị. Công nghệ này thường được sử dụng để quản lý từ xa các hệ thống và truyền tải dữ liệu một cách an toàn qua các mạng không tin cậy. SSH đã thay thế các giao thức chưa bảo mật như Telnet và FTP nhờ vào khả năng mã hóa dữ liệu, từ đó bảo vệ thông tin trước các mối đe dọa từ bên ngoài.

Cách Hoạt Động của SSH

SSH hoạt động theo mô hình client-server, trong đó:

  • Máy chủ SSH (SSH Server) lắng nghe các kết nối đến từ máy khách.
  • Máy khách SSH (SSH Client) thực hiện kết nối tới máy chủ thông qua giao thức SSH.

Quy Trình Kết Nối SSH

  1. Khởi Tạo Kết Nối: Máy khách gửi yêu cầu kết nối đến máy chủ SSH qua cổng 22 (cổng mặc định).
  2. Xác Thực Danh Tính: Máy chủ yêu cầu máy khách xác thực bằng cách sử dụng mật khẩu hoặc khóa SSH.
  3. Thiết Lập Phiên Mã Hóa: Sau khi xác thực thành công, một kênh mã hóa được thiết lập để bảo vệ dữ liệu truyền giữa hai thiết bị.
  4. Giao Tiếp An Toàn: Máy khách có thể thực thi lệnh trên máy chủ hoặc truyền tệp tin qua SSH.

Các Phương Thức Xác Thực trong SSH

SSH hỗ trợ hai phương thức xác thực chính:

  • Xác Thực Bằng Mật Khẩu: Người dùng cần nhập tên đăng nhập và mật khẩu để kết nối.
  • Xác Thực Bằng Khóa Công Khai: Sử dụng cặp khóa private key - public key:
    • Private key được lưu trên máy khách.
    • Public key được lưu trên máy chủ.
    • Khi kết nối, máy chủ xác minh khóa riêng của máy khách mà không cần mật khẩu.

Các Tính Năng Chính của SSH

  • Điều Khiển Từ Xa: SSH cho phép quản trị viên quản lý máy chủ Linux/Unix từ xa, thực thi lệnh mà không cần ở gần máy chủ.
  • Chuyển Tiếp Cổng (Port Forwarding): SSH cho phép chuyển tiếp lưu lượng mạng từ một cổng trên máy khách đến cổng trên máy chủ, tạo đường hầm an toàn cho các dịch vụ như HTTP, FTP hoặc cơ sở dữ liệu.
  • Truyền Tệp An Toàn (SCP & SFTP): SSH hỗ trợ truyền tải tệp an toàn qua hai giao thức:
    • SCP (Secure Copy Protocol): Sao chép tệp giữa hai máy thông qua SSH.
    • SFTP (SSH File Transfer Protocol): Truyền tải tệp với tính năng phong phú hơn SCP, bảo mật hơn như FTP.

Cách Sử Dụng SSH

Kết Nối SSH từ Máy Khách đến Máy Chủ

Trên hệ điều hành Linux hoặc macOS, bạn có thể sử dụng terminal để kết nối:

Copy
ssh user@remote_host

Ví dụ:

Copy
ssh admin@192.168.1.10

Nếu bạn cần sử dụng cổng khác với cổng mặc định 22:

Copy
ssh -p 2222 user@remote_host

Sao Chép Tệp bằng SCP

Để sao chép tệp từ máy khách đến máy chủ:

Copy
scp file.txt user@remote_host:/home/user/

Để sao chép tệp từ máy chủ về máy khách:

Copy
scp user@remote_host:/home/user/file.txt .

Sử Dụng Xác Thực Khóa SSH

Để tạo cặp khóa, sử dụng lệnh sau:

Copy
ssh-keygen -t rsa -b 4096

Sao chép khóa công khai lên máy chủ:

Copy
ssh-copy-id user@remote_host

Sau khi thiết lập xong, bạn có thể kết nối thông qua SSH mà không cần nhập mật khẩu.

SSH Tunneling và Port Forwarding

Chuyển Tiếp Cổng Cục Bộ (Local Port Forwarding)

Cho phép bạn truy cập vào dịch vụ từ xa thông qua máy tính cục bộ:

Copy
ssh -L 8080:localhost:80 user@remote_host

Chuyển Tiếp Cổng Từ Xa (Remote Port Forwarding)

Cho phép máy từ xa truy cập vào dịch vụ trên máy khách:

Copy
ssh -R 9090:localhost:3306 user@remote_host

Bảo Mật SSH

Để tăng cường bảo mật cho SSH, bạn có thể thực hiện một số biện pháp sau:

  • Thay Đổi Cổng Mặc Định: Thay đổi cổng từ 22 sang cổng khác trong tệp cấu hình /etc/ssh/sshd_config
Copy
Port 2222 
  • Tắt Đăng Nhập Root qua SSH: Giảm thiểu nguy cơ tấn công brute-force.
Copy
PermitRootLogin no 
  • Chỉ Cho Phép Đăng Nhập Bằng Khóa SSH:
Copy
PasswordAuthentication no 
  • Hạn Chế Địa Chỉ IP được Phép Kết Nối: Sử dụng các tường lửa như iptables hoặc ufw để bảo vệ máy chủ.

Sử Dụng SSH trên Windows

Trên hệ điều hành Windows, bạn có thể sử dụng:

  • Windows Terminal / PowerShell: Hỗ trợ SSH từ Windows 10 trở lên.
  • PuTTY: Phần mềm client SSH phổ biến trên Windows.
  • WinSCP: Hỗ trợ truyền tệp SCP/SFTP trên Windows.

Tổng Kết

Như vậy, SSH là một giao thức mạng không thể thiếu trong quản lý hệ thống, cho phép các quản trị viên thực hiện các thao tác từ xa và truyền tải dữ liệu một cách an toàn. Với khả năng mã hóa mạnh mẽ và nhiều phương thức xác thực, SSH chính là lựa chọn tối ưu để thay thế các giao thức không bảo mật như Telnet và FTP.

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào