Các phương pháp hay với OpenSSH

OpenSSH (Mở Secure Shell) là một tập hợp các ứng dụng cho phép truyền thông đượ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à cởi mở cho chương trình Secure Shell, là phần mềm độc quyền. « Wikipedia.

Một số người dùng có thể nghĩ rằng các thực hành tốt chỉ nên được áp dụng trên các máy chủ và trường hợp này không đúng. Nhiều bản phân phối GNU / Linux bao gồm OpenSSH theo mặc định và có một số điều cần lưu ý.

An ninh

Đây là 6 điểm quan trọng nhất cần ghi nhớ khi định cấu hình SSH:

  1. Sử dụng mật khẩu mạnh.
  2. Thay đổi cổng mặc định của SSH.
  3. Luôn sử dụng phiên bản 2 của giao thức SSH.
  4. Vô hiệu hóa quyền truy cập root.
  5. Giới hạn quyền truy cập của người dùng.
  6. Sử dụng xác thực khóa.
  7. Các tùy chọn khác

Mật khẩu mạnh

Mật khẩu tốt là mật khẩu có chứa các ký tự chữ và số hoặc ký tự đặc biệt, dấu cách, chữ hoa và chữ thường, v.v. Ở đây DesdeLinux Chúng tôi đã chỉ ra một số phương pháp để tạo mật khẩu tốt. Có thể ghé thăm Bài viết này y cái này cái kia.

Thay đổi cổng mặc định

Cổng mặc định cho SSH là 22. Để thay đổi nó, tất cả những gì chúng ta phải làm là chỉnh sửa tệp / etc / ssh / sshd_config. Chúng tôi tìm kiếm dòng có nội dung:

#Port 22

chúng tôi bỏ ghi chú nó và thay đổi số 22 cho một số khác .. ví dụ:

Port 7022

Để biết các cổng mà chúng tôi không sử dụng trong máy tính / máy chủ của mình, chúng tôi có thể thực thi trong thiết bị đầu cuối:

$ netstat -ntap

Bây giờ để truy cập máy tính hoặc máy chủ của chúng tôi, chúng tôi phải thực hiện với tùy chọn -p như sau:

$ ssh -p 7022 usuario@servidor

Sử dụng Giao thức 2

Để đảm bảo rằng chúng tôi đang sử dụng phiên bản 2 của giao thức SSH, chúng tôi phải chỉnh sửa tệp / etc / ssh / sshd_config và tìm dòng có nội dung:

# Giao thức 2

Chúng tôi bỏ ghi chú nó và khởi động lại dịch vụ SSH.

Không cho phép truy cập với tư cách người chủ

Để ngăn người dùng root có thể truy cập từ xa qua SSH, chúng tôi tìm kiếm trong tệp/ etc / ssh / sshd_config dòng:

#PermitRootLogin no

và chúng tôi bỏ ghi chú nó. Tôi nghĩ cần làm rõ rằng trước khi thực hiện việc này, chúng tôi phải đảm bảo rằng người dùng của chúng tôi có các quyền cần thiết để thực hiện các tác vụ quản trị.

Giới hạn quyền truy cập của người dùng

Việc chỉ cho phép truy cập qua SSH đối với một số người dùng đáng tin cậy nhất định cũng không ảnh hưởng gì, vì vậy chúng tôi quay lại tệp / etc / ssh / sshd_config và chúng tôi thêm dòng:

Cho phép Người dùng elav usemoslinux kzkggaara

Rõ ràng, người dùng elav, usemoslinux và kzkggaara là những người có thể truy cập.

Sử dụng xác thực khóa

Mặc dù phương pháp này được khuyến khích nhất nhưng chúng ta phải đặc biệt lưu ý vì chúng ta sẽ truy cập vào máy chủ mà không cần nhập mật khẩu. Điều này có nghĩa là nếu người dùng truy cập vào phiên của chúng tôi hoặc máy tính của chúng tôi bị đánh cắp, chúng tôi có thể gặp rắc rối. Tuy nhiên, chúng ta hãy xem làm thế nào để làm điều đó.

Điều đầu tiên là tạo một cặp khóa (công khai và riêng tư):

ssh-keygen -t rsa -b 4096

Sau đó, chúng tôi chuyển khóa của chúng tôi đến máy tính / máy chủ:

ssh-copy-id -i ~/.ssh/id_rsa.pub elav@200.8.200.7

Cuối cùng, chúng tôi phải bỏ ghi chú, trong tệp / etc / ssh / sshd_config dòng:

AuthorizedKeysFile .ssh/authorized_keys

Các tùy chọn khác

Đóng góp của Yukiteru

Chúng tôi có thể giảm thời gian chờ mà người dùng có thể đăng nhập thành công vào hệ thống xuống còn 30 giây

LoginGraceTime 30

Để tránh các cuộc tấn công ssh thông qua TCP Spoofing, để bên ssh được mã hóa tồn tại trong tối đa 3 phút, chúng ta có thể kích hoạt 3 tùy chọn này.

TCPKeepAlive no ClientAliveInterval 60 ClientAliveCountMax 3

Vô hiệu hóa việc sử dụng tệp rhosts hoặc shosts, vì lý do bảo mật được khuyến khích không sử dụng.

Bỏ quaRhosts có Bỏ quaUserKnownHosts có Rhosts Xác thực không RhostsRSAA xác thực không

Kiểm tra các quyền hiệu quả của người dùng trong khi đăng nhập.

StrictModes yes

Cho phép phân tách các đặc quyền.

UsePrivilegeSeparation yes

Kết luận:

Bằng cách thực hiện các bước này, chúng tôi có thể tăng cường bảo mật cho máy tính và máy chủ của mình, nhưng chúng tôi không bao giờ được quên rằng có một yếu tố quan trọng: cái gì giữa ghế và bàn phím. Đó là lý do tại sao tôi khuyên bạn nên đọc Bài viết này.

Fuente: Làm thế nào để rèn


Để 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: Miguel Ángel Gatón
  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.   yukiteru dijo

    Bài đăng tuyệt vời @elav và tôi thêm một số điều thú vị:

    Đăng nhậpGraceTime 30

    Điều này cho phép chúng tôi giảm thời gian chờ đợi mà người dùng có thể đăng nhập thành công vào hệ thống xuống còn 30 giây

    TCPKeepAlive không
    Khoảng thời gian ClientAlive 60
    Khách hàngAliveCountMax 3

    Ba tùy chọn này khá hữu ích để tránh các cuộc tấn công ssh bằng phương thức TCP Spoofing, giữ cho phần mã hóa tồn tại ở phía ssh hoạt động trong tối đa 3 phút.

    Bỏ quaRhosts có
    Bỏ quaUserKnownHosts có
    RhostsAuthentication không
    RhostsRSAAuthentication không

    Nó vô hiệu hóa việc sử dụng các tệp rhosts hoặc shosts, vì lý do bảo mật nên không được sử dụng.

    Nghiêm ngặt có

    Tùy chọn này được sử dụng để kiểm tra các quyền hiệu quả của người dùng trong quá trình đăng nhập.

    UsePrivilegeSepraction có

    Cho phép phân tách các đặc quyền.

    1.    sống động dijo

      Chà, trong một thời gian nữa tôi sẽ chỉnh sửa bài viết và thêm nó vào bài đăng 😀

  2.   Eugenio dijo

    Bỏ ghi chú để không thay đổi dòng là thừa. Các dòng nhận xét hiển thị giá trị mặc định của mỗi tùy chọn (đọc phần giải thích ở đầu tệp). Quyền truy cập root bị tắt theo mặc định, v.v. Do đó, việc bỏ ghi chú nó hoàn toàn không có tác dụng.

    1.    sống động dijo

      # Chiến lược được sử dụng cho các tùy chọn trong sshd_config mặc định được vận chuyển cùng
      # OpenSSH là chỉ định các tùy chọn với giá trị mặc định của chúng trong đó
      # có thể, nhưng hãy để họ nhận xét. Các tùy chọn không có chú thích ghi đè lên
      # giá trị mặc định.

      Có, nhưng chẳng hạn, làm sao chúng ta biết rằng chúng ta chỉ đang sử dụng phiên bản 2 của giao thức? Bởi vì chúng ta có thể sử dụng 1 và 2 cùng một lúc. Như dòng cuối cùng cho biết, ví dụ: bỏ ghi chú tùy chọn này, ghi đè tùy chọn mặc định. Nếu chúng tôi đang sử dụng phiên bản 2 theo mặc định, tốt, nếu không, thì chúng tôi sử dụng nó CÓ hoặc CÓ 😀

      Cảm ơn vì đã bình luận

  3.   sli dijo

    Bài viết rất hay, tôi biết vài thứ nhưng có một điều mà tôi không bao giờ rõ đó là công dụng của các khóa, thực sự chúng là gì và nó có những ưu điểm gì, nếu tôi sử dụng khóa thì tôi có thể dùng mật khẩu được không ??? Nếu vậy, tại sao nó tăng bảo mật và nếu không, làm cách nào để truy cập nó từ một máy tính khác?

  4.   từ biệt dijo

    Xin chào, tôi đã cài đặt debian 8.1 và tôi không thể kết nối từ máy tính windows của mình sang debian bằng WINSCP, tôi có phải sử dụng giao thức 1 không? bất kỳ giúp đỡ .. cảm ơn
    từ biệt

  5.   franksanabria dijo

    Bạn có thể quan tâm đến video này về openssh https://m.youtube.com/watch?v=uyMb8uq6L54

  6.   Ngói dijo

    Tôi muốn thử một số thứ ở đây, một số thứ tôi đã thử nhờ Arch Wiki, một số khác do lười biếng hoặc thiếu kiến ​​thức. Tôi sẽ lưu nó khi tôi bắt đầu RPi của mình