SSH là gì và cách sử dụng SSH cho người mới bắt đầu

ssh

là gì

ssh, hoặc shell an toàn, là một giao thức điều khiển từ xa cho phép người dùng điều khiển từ xa và chỉnh sửa máy chủ qua internet. Dịch vụ được tạo ra để thay thế các máy khách telnet không được mã hóa và sử dụng mã hóa để đảm bảo rằng tất cả các giao tiếp với các máy chủ từ xa đều được mã hóa. Nó cung cấp các thuật toán để xác thực người dùng từ xa, chuyển đầu vào từ máy khách đến máy chủ và chuyển tiếp kết quả trở lại máy khách.

Dấu đầu dòng

bên dưới hiển thị giao diện windows ssh điển hình. Bất kỳ người dùng linux hoặc macos nào cũng có thể chuyển đến máy chủ từ xa trực tiếp từ cửa sổ đầu cuối. Người dùng Windows có thể sử dụng máy khách ssh dưới dạng putty. Bạn có thể thực hiện các lệnh shell như thể bạn đang thực sự làm việc trên một máy tính vật lý.

shell snapshot Bạn đã biết SSH là gì vậy hãy tiếp tục tìm hiểu về cách thức hoạt động của SSH,bên cạnh việc tìm hiểu về công nghệ được sử dụng để đảm bảo tính an toàn cho các kết nối từ xa. Nó sẽ gồm nhiều lớp và loại mã hóa được sử dụng, tùy thuộc vào mục đích của từng layer.

Cách ssh hoạt động

Để hiểu ssh là gì, trước tiên bạn cần hiểu cách hoạt động của nó. Nếu bạn đang sử dụng Linux hoặc mac, việc sử dụng ssh khá dễ dàng. Nếu bạn sử dụng windows, bạn chỉ cần mở kết nối ssh với ứng dụng khách ssh. Một ứng dụng ssh phổ biến là putty, bạn có thể đọc thêm tại đây.

Đối với người dùng mac và linux, hãy mở Terminal và làm theo các hướng dẫn sau:

Lệnh ssh có 3 phần:

Lệnh

ssh key cho hệ thống biết rằng bạn muốn mở một kết nối shell an toàn được mã hóa. {user} đại diện cho tài khoản người dùng bạn muốn truy cập. Ví dụ: nếu bạn muốn truy cập người dùng root , hãy thay thế root tại đây. Người dùng root là người dùng quản trị hệ thống có toàn quyền chỉnh sửa mọi thứ trên hệ thống. {host} đại diện cho máy tính bạn muốn truy cập. Nó có thể là địa chỉ ip (ví dụ: 244.235.23.19) hoặc tên miền (ví dụ: www.xyzdomain.com).

Khi bạn nhấn enter, nó sẽ yêu cầu bạn nhập mật khẩu tài khoản tương ứng. Bạn sẽ không thấy bất kỳ ký hiệu nào trên màn hình khi nhập, nhưng nếu nhập đúng mật khẩu và nhấn enter, bạn sẽ vào được hệ thống và nhận được thông báo đăng nhập thành công.

Nếu bạn muốn biết thêm về lệnh ssh, vui lòng tham khảo tại đây

Tìm hiểu về các kỹ thuật mã hóa khác nhau

Ưu điểm của ssh so với các giao thức cũ hơn là khả năng mã hóa và truyền dữ liệu an toàn giữa máy chủ và máy khách. máy chủ đại diện cho máy chủ từ xa mà bạn muốn kết nối và máy khách là máy tính mà bạn đang truy cập máy chủ. Có 3 cách khác nhau để mã hóa qua ssh:

  1. Mã hóa đối xứng
  2. Mã hóa không đối xứng
  3. Băm.
  4. Mã hóa đối xứng

    Mã hóa đối xứng là hình thức mã hóa sử dụng khóa theo cả hai hướng để mã hóa và giải mã thông báo b cho máy chủ và máy khách. Điều này có nghĩa là bất kỳ ai có khóa đều có thể giải mã các tin nhắn đang chuyển tiếp.

    hướng dẫn sử dụng ssh là gì symmetric encryption

    Mã hóa đối xứng thường được gọi là mã hóa khóa chia sẻ hoặc mã hóa bí mật được chia sẻ . Vì một khóa hoặc một cặp khóa được sử dụng, một khóa có thể được tính toán từ khóa khác.

    Khóa đối xứng được sử dụng để mã hóa tất cả các thông tin liên lạc trong phiên ssh. Cả máy khách và máy chủ đều dùng chung một khóa như một phương thức giao thức và khóa này không được tiết lộ cho các bên thứ ba. Việc tạo khóa đối xứng được thực hiện bởi Thuật toán trao đổi khóa .

    Điều làm cho thuật toán an toàn là khóa không được chuyển giữa máy khách và máy chủ. Thay vào đó, hai máy tính chia sẻ thông tin chung và sau đó sử dụng chúng để tính khóa. Ngay cả khi một máy tính khác nắm bắt thông tin được chia sẻ, nó không thể tính toán khóa vì nó không biết thuật toán tạo khóa.

    Cũng xin lưu ý rằng mã thông báo bí mật được sử dụng cho một phiên ssh nhất định và được tạo bởi xác thực của khách hàng. Khi khóa được tạo, tất cả các gói được truyền giữa hai máy phải được mã hóa bằng khóa riêng. Điều này bao gồm mật khẩu được nhập bởi người dùng, vì vậy mật khẩu cũng có thể được bảo vệ bởi “những kẻ bắn tỉa gói” trên mạng.

    Có một số mật mã mã hóa đối xứng, bao gồm nhưng không giới hạn ở aes (Tiêu chuẩn mã hóa nâng cao), cast128, blowfish, v.v. Trước khi thiết lập kết nối an toàn, máy khách và máy chủ sẽ đồng ý về loại mật mã sẽ sử dụng bằng cách xuất bản danh sách các mật mã được hỗ trợ để tham khảo. Mật mã thích hợp nhất cho máy khách sẽ xuất hiện trong danh sách máy chủ lưu trữ dưới dạng mật mã hai chiều.

    Ví dụ: nếu 2 máy ubuntu 14.04 lts giao tiếp qua ssh, nó sẽ sử dụng aes128-ctr làm mật khẩu mặc định.

    Mã hóa không đối xứng

    Không giống như mã hóa đối xứng, mã hóa không đối xứng sử dụng hai khóa khác nhau để mã hóa và giải mã. Hai khóa này được gọi là khóa công khai khóa riêng tư . Cả hai tạo thành một cặp khóa cặp khóa công khai-riêng tư .

    Asymmetric encryption

    Khóa công khai, như tên của nó, sẽ được công khai cho tất cả các bên liên quan. Mặc dù nó có liên quan chặt chẽ về mặt chức năng với khóa riêng, nhưng khóa riêng không thể được bắt nguồn từ khóa công khai. Mối quan hệ rất phức tạp: các tin nhắn được mã hóa bằng khóa công khai của máy và chỉ có thể được giải mã bằng khóa riêng của máy. Mối quan hệ một chiều này có nghĩa là khóa công khai không thể tự giải mã thông điệp, cũng như bất kỳ thứ gì được mã hóa bằng khóa riêng tư.

    Khóa cá nhân phải luôn được bảo mật, tức là kết nối được bảo mật và không bên thứ 3 nào biết được. Độ mạnh của toàn bộ chu kỳ kết nối phụ thuộc vào việc khóa riêng tư có bị xâm phạm hay không, vì chỉ nó mới có thể giải mã thông điệp đã truyền được mã hóa bởi khóa công khai. Do đó, bên nào có khả năng giải mã thông điệp được ký bởi khóa công khai nghĩa là bên đó có khóa riêng tương ứng.

    Trái với suy nghĩ thông thường, mã hóa không đối xứng không được sử dụng để mã hóa toàn bộ phiên ssh. Thay vào đó, nó chỉ được sử dụng trong quá trình trao đổi thuật toán các khóa mã hóa đối xứng. Trước khi bắt đầu một phiên bảo mật, cả hai đồng ý tạo một cặp khóa công khai-riêng tư tạm thời, chia sẻ khóa riêng tư để tạo ra một bí mật được chia sẻ.

    Khi kết nối đối xứng an toàn được thiết lập, máy chủ tạo và thử thách bằng cách sử dụng khóa công khai của máy khách và truyền nó đến máy khách để xác thực. Nếu máy khách có thể giải mã tin nhắn, nó sẽ giữ đúng khóa cá nhân cần thiết để kết nối. phiên ssh bắt đầu.

    Băm

    Hàm băm một chiều là một dạng mã hóa khác được sử dụng cho các kết nối shell an toàn. Băm một chiều khác với hai phương pháp mã hóa ở trên ở chỗ nó không được giải mã. Chúng tạo ra một giá trị duy nhất có độ dài nhất định cho mỗi đầu vào mà không hướng nào khác có thể tận dụng được. Điều này làm cho việc giải mã ngược gần như không thể.

    hướng dẫn sử dụng ssh, hash một chiều

    Thật dễ dàng để tạo một băm mật mã từ một đầu vào, nhưng không thể tạo đầu vào đó từ một băm. Điều này có nghĩa là nếu máy khách nắm giữ đầu vào chính xác, máy khách có thể tạo cùng một giá trị băm mật mã và so sánh nó với giá trị ở phía bên kia để xác định rằng cả hai phía của đầu vào đều giống với đầu vào.

    ssh sử dụng hàm băm để xác nhận tính xác thực của tin nhắn. Nó được thực hiện bởi hmacs hoặc h m essage m a odes dựa trên tro. Điều này đảm bảo rằng lệnh không thể bị giả mạo bằng bất kỳ phương tiện nào.

    Trong khi chọn một thuật toán mã hóa đối xứng, một thuật toán xác thực tin nhắn thích hợp cũng được chọn. Như tôi đã giải thích trong phần Mã hóa đối xứng ở trên, nó hoạt động tương tự như cách một mật mã được chọn.

    Mỗi thông báo được truyền phải chứa mac, được tính từ khóa đối xứng, số thứ tự gói và nội dung thông báo. Nó gửi một gói dữ liệu được mã hóa đối xứng như một phần của gói truyền thông.

    Cách ssh xử lý các công nghệ này

    Bây giờ bạn đã hiểu ssh là gì và hiểu các loại mã hóa, hãy chuyển sang cách hoạt động của nó. ssh hoạt động bằng cách sử dụng mô hình máy khách-máy chủ, cho phép xác thực an toàn giữa hai máy tính từ xa và mã hóa dữ liệu được truyền giữa chúng.

    ssh chạy trên cổng tcp 22 mặc định (có thể thay đổi nếu cần). Máy chủ (máy chủ) lắng nghe trên cổng 22 (hoặc bất kỳ cổng nào được gán cho ssh) đối với các kết nối đến. Khi máy khách và môi trường open shell xác thực thành công, nó sẽ thiết lập một kết nối an toàn.

    ssh client và server

    Máy khách phải bắt đầu kết nối ssh bằng cách thiết lập bắt tay tcp với máy chủ, đảm bảo nó có thể thiết lập kết nối đối xứng, xác minh rằng thông tin của máy chủ khớp với dữ liệu cũ (thường là trong tệp kho khóa rsa) và so sánh thông tin đăng nhập của người dùng đã đăng nhập vào kết nối để xác minh kết nối chính xác.

    Có hai giai đoạn để thiết lập kết nối: thứ nhất, hai bên đồng ý về tiêu chuẩn mã hóa để bảo vệ các thông tin liên lạc trong tương lai và thứ hai, người dùng phải được xác thực. Nếu thông tin đăng nhập khớp, người dùng có quyền truy cập.

    Thương lượng mã hóa phiên

    Khi một máy khách cố gắng kết nối với máy chủ qua tcp, máy chủ sẽ hiển thị các giao thức mã hóa và các phiên bản liên quan mà nó hỗ trợ. Nếu máy khách cũng có giao thức tương ứng và phiên bản chính xác, giao thức được thực hiện và kết nối bắt đầu chấp nhận giao thức. Máy chủ cũng sử dụng khóa công khai đối xứng mà máy khách có thể sử dụng để xác minh tính đúng đắn của máy chủ.

    Sau khi được thiết lập, cả hai bên sử dụng một thuật toán được gọi là thuật toán trao đổi khóa khác biệt để tạo khóa đối xứng. Thuật toán này cho phép máy khách và máy chủ có khóa công khai được sử dụng để mã hóa tất cả các thông tin liên lạc trong tương lai.

    Về cơ bản, nó hoạt động như sau:

    1. Cả máy khách và máy chủ đều đồng ý về một số nguyên lớn, tất nhiên là không có bất kỳ thuộc tính nào chung. Số này được gọi là giá trị hạt giống .
    2. Tiếp theo, cả hai bên đồng ý tạo mã hóa từ giá trị gốc bằng một số thuật toán. Các cơ chế này là nguồn gốc của mật mã, phần lớn hoạt động dựa trên giá trị hạt giống. Ví dụ, trình tạo là aes (Tiêu chuẩn mã hóa nâng cao).
    3. Cả hai bên tạo một số khác một cách độc lập. Nó được sử dụng làm khóa cá nhân bí mật cho tương tác.
    4. Khóa riêng tư mới được tạo này, sử dụng số công khai và thuật toán mã hóa (aes) ở trên, được sử dụng để tạo khóa công khai để phân phối cho một máy khác.
    5. Sau đó, 2 bên sử dụng khóa riêng của mình, khóa công khai của máy khác và số nguyên ban đầu để tạo khóa công khai cuối cùng. Khóa này được tính toán độc lập bởi hai máy, nhưng cùng một khóa mã hóa được tạo trên cả hai máy.
    6. Giờ đây, cả hai đều có khóa chung, chúng có thể tạo mã hóa đối xứng cho toàn bộ phiên ssh. Khóa chia sẻ được sử dụng để mã hóa và giải mã thông điệp (đọc lại: mã hóa đối xứng).
    7. Bây giờ phiên mã hóa đối xứng đã được thiết lập, xác thực người dùng sẽ tiếp tục.

      Xác thực Người dùng

      Bước cuối cùng là cấp cho người dùng quyền truy cập vào máy chủ để xác minh thông tin họ nhập. Đối với điều này, hầu hết người dùng ssh sử dụng mật khẩu. Người dùng được yêu cầu nhập tên người dùng và sau đó nhập mật khẩu. Các thông tin xác thực này được truyền một cách an toàn thông qua một đường hầm bảo mật đối xứng, vì vậy chúng không thể bị đánh cắp từ các bên thứ ba.

      Ngay cả khi mật khẩu được mã hóa, chúng tôi vẫn không khuyên bạn nên sử dụng nó để thiết lập kết nối. Lý do là thông qua một cuộc tấn công bạo lực, một mật khẩu mặc định hoặc dễ đoán có thể được truy tìm để chiếm đoạt tài khoản của bạn. Vì vậy, cách tốt nhất là sử dụng cặp khóa ssh.

      Đây là bộ khóa bất đối xứng được sử dụng để xác thực thành viên mà không yêu cầu mật khẩu.

      Kết luận

      Hiểu ssh là gì và cách thức hoạt động của nó có thể giúp bạn tìm hiểu thêm về công nghệ bảo mật. Hầu hết mọi người nghĩ rằng quá trình này phức tạp và khó hiểu, nhưng nó đơn giản hơn nhiều so với mọi người nghĩ. Nếu bạn không biết máy tính mất bao lâu để tính toán băm và xác thực người dùng, thì thực tế chỉ mất chưa đầy một giây. Thời gian dành cho internet chủ yếu là do truyền dữ liệu từ xa.

      Hy vọng rằng thông qua hướng dẫn ssh này, chúng tôi đã cung cấp cho bạn một góc nhìn khác về công nghệ này, đây là thành phần quan trọng trong việc tạo ra các hệ thống mạnh mẽ và an toàn. Bởi vì điều này, bạn đã có thể hiểu tại sao telnet là dĩ vãng, và tại sao ssh lại chiếm vị trí của nó.

      Để biết thêm các mẹo về linux, hãy xem khu vực hướng dẫn vps của chúng tôi

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *