Ssh sau khi cài xong linux server

Đối với các hệ điều hành của họ Linux như CentOS, Ubuntu, Fedora, Debian … thì việc điều khiển thông thường thực hiện qua thao tác dòng lệnh CLI. Để thực hiện việc này, người dùng sẽ sử dụng các phần mềm như Putty, MobaXterm, XShell để thực hiện SSH tới port mặc định 22 của máy chủ. Trong hướng dẫn này, cloud365 đã hướng dẫn bạn sử dụng cơ bản về MobaXteam. Bạn có thể trải nghiệm thêm các tính năng khác của nó ở trên các tab, hãy tự trải nghiệm và chia sẻ cùng chúng tôi nếu bạn muốn nhé.

SSH [Secure Socket Shell] là một giao thức đăng nhập vào server từ xa dùng để thiết lập kết nối mạng một cách bảo mật.

SSH làm việc thông qua 3 bước đơn giản:

  • Định danh host - xác định định danh của hệ thống tham gia phiên làm việc SSH.
  • Mã hoá - thiết lập kênh làm việc mã hoá.
  • Chứng thực - xác thực người sử dụng có quyền đăng nhập hệ thống.

OpenSSH là một phần mềm nguồn mở được cài đặt mặc định trên các server sử dụng CentOS, Ubuntu.

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

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

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

sudo apt-get install openssh-server openssh-client

Sau khi cài đặt các bạn chạy lệnh sau để khởi động SSH Server

systemctl start sshd

Trên đây là các thông tin cơ bản về SSH Server và cách cài đặt trên Linux.

Chúc bạn thành công!

Trong quá trình vận hành máy chủ Linux, việc phải sử dụng SSH là chuyện hàng ngày cần làm. Bài viết này sẽ hướng dẫn các Bạn cách cài đặt và thiết lập một số cấu hình cơ bản đẻ bảo mật ssh trên linux server.

Nội dung bài viết

1. Cài đặt SSH trên Linux Server

Đối với Ubuntu Server

apt-get install openssh-server openssh-client

CentOS Server

yum -y install openssh-server openssh-clients

Khi hệ thốn chạy lệnh xong, để sử dụng được lệnh SSH, bạn cần chỉnh sửa file cấu hình bằng cách mở file /etc/ssh/sshd_config.

Một số cấu hình cơ bản như sau:

#Cổng mặc định của SSH Server 
Port 22 
#Cho phép user root đăng nhập qua kết nối SSH 
PermitRootLogin no 
#Cho phép đăng nhập bằng password 
PasswordAuthentication yes

Sau cùng, Bạn chỉ cần khởi động lại dịch vụ để hệ thống ghi nhận lại các thay đổi.

sudo service ssh restart

Đến bước này, bạn đã kích hoạt xong dịch vụ SSH, Bạn có thể tiến hành SSH bằng các phần mềm trên windows như là Puty, SecureSSH,… hoặc sử dụng lệnh SSH trực tiếp trên command line của các hệ điều hành Linux hoặc MacOS.

2. Thiết lập một số bảo mật cho SSH trên Linux

Bởi mặc định SSH hoạt động trên port 22 và user Root là người dùng mặc định có quyền tối cao trong hệ thống nên để tăng cường bảo mật có một số phương án bạn có thể áp dụng:

2.1. Đổi port SSH sang port khác

Mặc định SSH hoạt động trên port 22, Để tăng thêm tính bảo mật cho Server, các bạn nên thay đổi port đăng nhập SSH sang một port khác.

Để thay đổi, bạn thực hiện theo các bước sau:

– Bước 1: Login bằng tài khoản root hoặc tài khoản có quền sudo

– Bước 2: Mở file cấu hình ssh để chỉnh sửa:

vim /etc/ssh/sshd_config

– Bước 3: Tìm kiếm dòng

yum -y install openssh-server openssh-clients
5, bỏ dấu # ở đầu và thay bằng port bạn muốn dùng.

– Bước 4: Khởi động lại dịch vụ SSH để hệ thống cập nhật thay đổi

systemctl restart sshd.service

2.2. Sử dụng một tài khoản khác không phải tài khoản root để login từ xa

Ngoài việc sử dụng tài khoản mặc định cấp cao là root, bạn nên định nghĩa tên một tài khoản quản trị cho riêng mình và cho phép tài khoản này được login từ xa qua SSH.

Mặc định, quyền truy xuất từ xa với tài khoản root đã bị cấm [denied], khi bạn truy xuất sẽ nhận được kết quả: “Permission denied”

$ ssh root@10.0.0.55 
root@10.0.0.55's password: 
Permission denied, please try again. 
root@10.0.0.55's password:

2.3. Không cho phép login bằng mật khẩu và thay bằng việc sử dụng private/public key

Ngoài cách login qua SSH sử dụng password theo cách thông thường, bạn có thể sử dụng cách bảo mật hơn bằng việc sử dụng cặp private/public key và chặn việc đăng nhập bằng password.

Để tạo cặp key dùng login qua SSH, bạn thực hiện như sau:

– Bước 1: tạo ra cặp key trên máy client [máy mà bạn muốn dùng login ssh vào server]

Sử dụng lệnh sau để tạo ssh key:

ssh-keygen

Mặc định thì hệ thống sẽ tạo SSH key loại RSA với số bit mã hóa là 2048. Bạn có thể thay đổi bằng một số tùy chọn như sau:

-t: khai báo loại key mà bạn muốn tạo, có thể là rsa, dsa, ecdsa và ed25519.
-b: đây là số bit mã hóa của khóa
RSA: tối thiểu là 1024 và tối đa là 16384 bits.
DSA: 1024 bits.
ECDSA: 256, 384 hoặc 521 bits.
Ed25519: 256 bits.
-C: comment cho khóa, về mục đích sử dụng của khóa, hoặc một nội dung gì đó.

Ví dụ, mình muốn tạo SSH key loại RSA 4096 bits, sử dụng lệnh sau:

ssh-keygen -t rsa -b 4096 -C "comment_here"

[Trong trường hợp bạn dùng máy windows, bạn có thể tạo key bằng cách sử dụng phần mềm Putty]

Sau khi chạy lệnh trên, mặc định SSH key sẽ được lưu trong thư mục

yum -y install openssh-server openssh-clients
6 của user tạo ra [ví dụ
yum -y install openssh-server openssh-clients
7]. Bạn vào thư mục .ssh sẽ thấy có 2 file là id_rsa và id_rsa.pub lần lượt tương ứng với private key và public key.

Công việc tiếp theo bạn là add public key lên server.

– Bước 2: add public key tạo ra trên máy client lên máy server

Bạn cần login vào server và thực hiện theo các bước sau:

  • Tạo thư mục 
    yum -y install openssh-server openssh-clients
    6 tại thư mục home của user [tài khoản bạn dùng ssh vào server]:
yum -y install openssh-server openssh-clients
0
  • Tạo file 
    yum -y install openssh-server openssh-clients
    9 trong thư mục
    yum -y install openssh-server openssh-clients
    6 vừa tạo ở trên:
yum -y install openssh-server openssh-clients
1

=> copy toàn bộ nội dung trong file id_rsa.pub ở bước 1 và lưu vào file này.

  • Thiết lập quyền cho thư mục và file ở trên:
yum -y install openssh-server openssh-clients
2

Vậy là bạn đã thiết lập xong trên máy chủ.

– Bước 3: khởi động lại dịch vụ SSH trên máy server để hệ thống cập nhật thay đổi

Khởi động lại dịch vụ SSH trên server:

systemctl restart sshd.service

Bây giờ, bạn có thể sử dụng lệnh SSH trên terminal để kiểm tra hệ thống đã login được bằng private/public key chưa. Nếu máy client của bạn không tự nhận diện private/public key thì bạn cần thực hiện lệnh SSH như sau:

yum -y install openssh-server openssh-clients
4

Trong đó:

  • #Cổng mặc định của SSH Server 
    Port 22 
    #Cho phép user root đăng nhập qua kết nối SSH 
    PermitRootLogin no 
    #Cho phép đăng nhập bằng password 
    PasswordAuthentication yes
    1: đây là lệnh sử dụng để kết nối SSH
  • #Cổng mặc định của SSH Server 
    Port 22 
    #Cho phép user root đăng nhập qua kết nối SSH 
    PermitRootLogin no 
    #Cho phép đăng nhập bằng password 
    PasswordAuthentication yes
    2: [port]sử dụng tùy chọn này nếu bạn muốn chỉ định một cổng SSH khác [nếu bạn đã thay đổi port].
  • #Cổng mặc định của SSH Server 
    Port 22 
    #Cho phép user root đăng nhập qua kết nối SSH 
    PermitRootLogin no 
    #Cho phép đăng nhập bằng password 
    PasswordAuthentication yes
    3: gán thêm tùy chọn này nếu như bạn muốn sử dụng SSH key.
    #Cổng mặc định của SSH Server 
    Port 22 
    #Cho phép user root đăng nhập qua kết nối SSH 
    PermitRootLogin no 
    #Cho phép đăng nhập bằng password 
    PasswordAuthentication yes
    4: đây là đường dẫn của private key.
  • #Cổng mặc định của SSH Server 
    Port 22 
    #Cho phép user root đăng nhập qua kết nối SSH 
    PermitRootLogin no 
    #Cho phép đăng nhập bằng password 
    PasswordAuthentication yes
    5: đây là user và địa chỉ IP của server mà bạn muốn kết nối đến [bạn cũng có thể sử dụng domain]

Nếu kết nối thành công thì bạn đã thực hiện đúng. Sau cùng, để không cho phép người dùng login qua SSH sử dụng password, bạn cần mở file cấu hình sshd như mục số 1 trên đây, sau đó tìm dòng #PasswordAuthentication yes và sửa “yes” thành “no” là xong.

Chủ Đề