Server

Cài đặt OpenSSH Server trên Linux

OpenSSH là phần mềm nguồn mở, nó cho phép tạo dịch vụ SSH Server (máy chủ SSH) và các chương trình SSH CLient. Cài đặt mặc định trong các máy chủ CentOS, Ubuntu thường là có sẵn OpenSSH Server, nếu chưa có thì cài đặt như sau (gồm cả trình client và server):

Cài đặt OpenSSH Server trên CentOS/RHEL

Thực hiện các lệnh sau để cài đặt:

yum install openssh openssh-server openssh-clients openssl-libs -y

Cài đặt OpenSSH Server trên Ubuntu

Thự hiện các lệnh sau để cài đặt:

sudo apt-get install openssh-server openssh-client

Chạy dịch vụ SSH Server, thiết lập chạy ngay khi khởi động

systemctl start sshd
systemctl enable sshd

Mặc định SSH dùng cổng 22 nên bạn phải mở cổng này nếu có firewall

firewall-cmd --add-port=22/tcp --permanent
firewall-cmd --reload

Nếu sau này bạn cấu hình đổi cổng SSH mặc định, bạn cần mở cổng đó (thay 22 bằng cổng của bạn)

File cấu hình của OpenSSH Server tại /etc/ssh/sshd_config, bạn có thể mở và chỉnh sửa nó theo nhu cầu (có thể dùng Vim, Nano để soạn thảo). Sau khi sửa Config thì cần khởi động lại SSH Server.

systemctl restart sshd

Kiểm tra trạng thái SSH Server

systemctl status sshd
SSH

Như vậy đã có SSH Server, hãy xem phần cấu hình để biết cầu hình cơ bản: Cấu hình SSH Server cơ bản

Cài đặt OpenSSH Server trên Windows

Phần này hướng dẫn cài đặt từng bước - thủ công, để có SSH Server trên Windows (Để áp dụng được cho nhiều phiên bản Windows (Desktop, Server - từ 7 đến 10, 2008, 2019 ..., vì các phiên bản mới của Windows cung cấp sẵn gói OpenSSH nên có thể cài đặt bằng gõ vài lệnh PowserShell, cái này sẽ nói ở một phần khác)

Bước 1 Tải về OpenSSH - vào đường link Win OpenSSH, chọn đúng phiên bản phù hợp với hệ thống của bạn (chọn OpenSSH-Win32.zip hay OpenSSH-Win64.zip theo kiến trúc Windows của bạn), File tải về giải nén vào thư mục muốn cài đặt, ví dụ chọn giải nén vào thư mục C:\OpenSSH

SSH Windows

Bước 2 Chạy PowserShell hoặc (Cmd) với quyền Administrator (Nhấn phải chuột vào biểu tượng PowerShell hoặc Cmd và chọn Run as Administrator ...), sau đó chuyển đến thư mục C:\OpenSSH bằng lệnh

cd C:\OpenSSH

Đang ở thư mục C:\OpenSSH, gõ lệnh sau để cài đặt dịch vụ OpenSSH Server vào Windows

powershell -ExecutionPolicy ByPass -File install-sshd.ps1
SSH Windows

Bước 3services.msc vào Menu Start, chạy và mở Windows Services Manager, tìm đến OpenSSH SSH Server và dịch vụ OpenSSH Authetication Agent. Thiết lập cả hai dịch vụ có Startup typeAutomatic (khởi chạy cùng hệ thống), cuối cùng hãy chạy 2 dịch vụ đó (nhấn phải chuột vào nó, chọn start)

SSH Windows

Bước 4 Mở cổng 22, vì SSH Server làm việc trên cổng 22 nên cần thiết lập Firewall cho phép kết nối đến cổng này. Để tự động tạo rule cho phép kết nối đến cổng 22 trong Windows Firewall, bạn có thể tải file .bat sau về Open Port 22 , lưu vào đĩa, ví dụ lưu tại C:\OpenSSH\openport22.bat, sau đó chạy file bat này với quyền Administrator.

SSH Windows

Sau khi chạy, nó sẽ tạo một Rule có tên Open Port 22 trong Windows Firewall là thành công

SSH Windows

File cấu hình của OpenSSH Server tại C:\OpenSSH\sshd_config_default, nếu có chỉnh sửa / thiết lập từ file này, bạn cần khở động lại dịch vụ SSH từ Service Manager như trên

Cấu hình dịch vụ OpenSSH Server

Các cấu hình cho dịch vụ SSH trên Server giống nhau giữa Windows và Linux, các thiết lập thực hiện bằng việc chỉnh sửa file cấu hình, sau khi cập nhật thì khởi động lại dịch vụ SSH. Vị trí file cấu hình tại:

  • /etc/ssh/sshd_config trên Linux
  • C:\OpenSSH\sshd_config_default trên Windows (Theo đường dẫn thư mục bạn cài OpenSSH)

Dưới đây là một số cấu hình (trong các file cấu hình một số thiết lập mặc định để ở chế độ commment - có ký tự # phía trước - nếu bạn thiết lập riêng thì xóa #)

  • 1) Đổi cổng mặc định nếu muốn đổi cổng kết nối SSH, ví dụ đổi sang cổng 2233

    Port 1235
  • 2) Chỉ cho phép một số User kết nối SSH nếu chỉ muốn một số User được chỉ ra được phép kết nối SSH, ví dụ chỉ cho phép user1, user2 thì thêm vào

    AllowUsers abcuser xtlab

    CHÚ Ý: nếu không có dòng này, mặc định tất các các user được kết nối.
    User là tài khoản của hệ thống (ví dụ root trên Linux, Administrator trên Windows, những User này do bạn tạo - như trên Linux là lệnh useradd, trên Windows thêm bằng trình User Accounts trong Control Panel)

  • 3) Cấm một số User ngược lại với AllowUsers, muốn cấm User nào, ví dụ user3, user4 thì thêm vào

    DenyUsers abcuser xtlab
  • 4) Bật chế độ xác thực SSH Key

    PubkeyAuthentication yes

    Chế độ xác thực này - tìm hiểu cụ thể ở phần Xác thực SSH bằng Public/Private key

  • 5) Chỉ ra đường dẫn lưu Public key ví sụ lưu tại .ssh/authorized_keys (tìm hiểu sau)

    AuthorizedKeysFile .ssh/authorized_keys
  • 6) Tắt xác thực bằng Password nếu muốn tắt chế độ cho phép nhập Password để kết nối SSH thì thêm vào

    PasswordAuthentication no

    Bạn nhớ là chế độ này on mặc định, bạn chỉ nên tắt khi đã có thể kết nối bằng Private Key

  • 7) Không cho xác thực bằng password rỗng

    PermitEmptyPasswords no
  • 8) Không cho tài khoản root đăng nhập

    PermitRootLogin no

Vậy là đã có dịch vụ SSH chạy ở Server - với cấu hình cơ bản, giờ đến lúc từ máy trạm kết nối vào Shell của Server bằng SSH tại Kết nối vào Server bằng SSH


Đăng ký nhận bài viết mới