OpenSSH 9.0 đến với SFTP thay vì scp, các cải tiến và hơn thế nữa

Gần đây việc phát hành phiên bản mới của OpenSSH 9.0 đã được công bố, một triển khai máy khách và máy chủ mở để làm việc với các giao thức SSH 2.0 và SFTP.

Đối với những người không biết về OpenSSH (Open Secure Shell) nên biết rằng đây là một tập hợp các ứng dụng cho phép giao tiếp được mã hóa qua mạng, sử dụng giao thức SSH. Nó được tạo ra như một giải pháp thay thế miễn phí và mở cho chương trình Secure Shell, là phần mềm độc quyền.

Bộ OpenSSH bao gồm các tiện ích và daemon dòng lệnh sau:

  • scp: thay thế cho rcp.
  • sftp - Một sự thay thế cho ftp để sao chép tệp giữa các máy tính.
  • ssh - Một sự thay thế cho rlogin, rsh và telnet để cho phép truy cập shell vào một máy từ xa.
  • ssh-add và ssh-agent: một tập hợp các tiện ích để tạo điều kiện xác thực bằng cách giữ cho các khóa luôn sẵn sàng và tránh phải nhập mật khẩu mỗi khi chúng được sử dụng.
  • ssh-keygen - Một công cụ để kiểm tra và tạo các khóa RSA, DSA và đường cong elip được sử dụng để xác thực người dùng và máy chủ.
  • ssh-keycan: quét danh sách các máy chủ và thu thập các khóa công khai của chúng.
  • sshd: daemon máy chủ SSH.

Các tính năng mới chính của OpenSSH 9.0

Trong phiên bản mới, tiện ích Scp được chuyển theo mặc định để sử dụng SFTP thay vì giao thức SCP / RCP kế thừa.

SFTP sử dụng các phương pháp xử lý tên dễ đoán hơn và nó không sử dụng xử lý shell của các mẫu hình cầu trên các tên tệp ở phía bên kia của máy chủ, điều này tạo ra các vấn đề bảo mật. Đặc biệt, khi sử dụng SCP và RCP, máy chủ quyết định tệp và thư mục nào sẽ gửi cho máy kháchvà máy khách chỉ kiểm tra tính đúng đắn của các tên đối tượng được trả về, trong trường hợp máy khách không kiểm tra chính xác, cho phép máy chủ chuyển các tên tệp khác với tên tệp được yêu cầu.

Giao thức SFTP không có những vấn đề này, nhưng nó không hỗ trợ mở rộng tuyến đường đặc biệt. như "~ /". Để giải quyết sự khác biệt này, kể từ OpenSSH 8.7, việc triển khai máy chủ SFTP hỗ trợ phần mở rộng giao thức "expand-path@openssh.com" để mở rộng đường dẫn ~ / và ~ người dùng /.

Khi sử dụng SFTP, người dùng cũng có thể gặp phải tình trạng không tương thích gây ra bởi sự cần thiết phải tăng gấp đôi các ký tự mở rộng đường thoát trong các yêu cầu SCP và RCP để ngăn chúng được thông dịch ở phía từ xa.

Trong SFTP, việc thoát này là không cần thiết và các dấu ngoặc kép có thể gây ra lỗi truyền dữ liệu. Đồng thời, các nhà phát triển OpenSSH đã từ chối thêm một phần mở rộng để lặp lại hành vi của scp trong trường hợp này, vì tính năng thoát kép được coi là một lỗ hổng không có ý nghĩa để lặp lại.

Những thay đổi khác nổi bật trong phiên bản OpenSSH 9.0 mới này là ssh và sshd có một thuật toán trao đổi khóa kết hợp "sntrup761x25519-sha512@openssh.com" (ECDH / x25519 + NTRU Prime) được bật theo mặc định, có khả năng chống bạo lực trên máy tính lượng tử và kết hợp với ECDH / x25519 để chặn các sự cố có thể xảy ra trong NTRU Prime có thể phát sinh trong tương lai. Trong danh sách Các thuật toán KexAl, xác định thứ tự các phương pháp trao đổi khóa được chọn, thuật toán được đề cập hiện đứng đầu và được ưu tiên hơn các thuật toán ECDH và DH.

Mặt khác, người ta cũng nhấn mạnh rằng máy tính lượng tử vẫn chưa đạt đến trình độ giải mã khóa truyền thống, nhưng việc sử dụng bảo vệ lai nó sẽ bảo vệ người dùng khỏi các cuộc tấn công liên quan đến việc lưu trữ các phiên SSH bị chặn với kỳ vọng rằng chúng có thể được giải mã trong tương lai, khi các máy tính lượng tử cần thiết trở nên khả dụng.

Phần mở rộng "copy-data" đã được thêm vào sftp-server, cho phép sao chép dữ liệu ở phía máy chủ mà không cần chuyển nó đến máy khách, nếu tệp nguồn và tệp đích nằm trên cùng một máy chủ.

Ngoài ra, lệnh "cp" đã được thêm vào tiện ích sftp để buộc máy khách sao chép tệp ở phía máy chủ.

Cuối cùng nếu bạn muốn biết thêm về nó về phiên bản mới này, bạn có thể kiểm tra chi tiết bằng cách truy cập liên kết sau.

Làm thế nào để cài đặt OpenSSH 9 trên Linux?

Đối với những người quan tâm đến việc có thể cài đặt phiên bản OpenSSH mới này trên hệ thống của họ, bây giờ họ có thể làm điều đó tải xuống mã nguồn của cái này và thực hiện biên dịch trên máy tính của họ.

Điều này là do phiên bản mới vẫn chưa được đưa vào kho của các bản phân phối Linux chính. Để lấy mã nguồn, bạn có thể làm từ liên kết tiếp theo.

Đã tải xong, bây giờ chúng ta sẽ giải nén gói bằng lệnh sau:

tar -xvf openssh-9.0.tar.gz

Chúng tôi nhập thư mục đã tạo:

cd openssh-9.0

Y chúng tôi có thể biên dịch với các lệnh sau:

./configure --prefix=/opt --sysconfdir=/etc/ssh
make
make install

Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: AB Internet Networks 2008 SL
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.

  1.   Marcos dijo

    Cảm ơn vì bài viết rất hay và hữu ích nhưng hướng dẫn cài đặt chưa đúng:

    Khi tệp openssh-9.0.tar.gz không được nén, với lệnh được cung cấp, nó sẽ không tạo thư mục openssh-9.0 mà thay vào đó giải nén nó theo đường dẫn sau:

    ./ssh

    Dù sao và truy cập vào thư mục đã giải nén, khi khởi chạy lệnh:

    ./configure --prefix = / opt --sysconfdir = / etc / ssh

    câu trả lời như sau:

    tệp hoặc thư mục không tồn tại: ./configure

    Cám ơn rất nhiều.