Thứ hai, 08/07/2019 | 00:00 GMT+7

Thiết lập server ban đầu với Debian 10

Khi bạn lần đầu tiên tạo một server Debian 10 mới, có một số bước cấu hình mà bạn nên thực hiện sớm như một phần của cài đặt cơ bản. Điều này sẽ tăng tính bảo mật và khả năng sử dụng cho server của bạn và sẽ tạo cho bạn một nền tảng vững chắc cho các hành động tiếp theo.

Trong hướng dẫn này, ta sẽ tìm hiểu cách đăng nhập vào server của ta với quyền là user root , tạo user mới với quyền quản trị và cài đặt firewall cơ bản.

Bước 1 - Đăng nhập với quyền root

Để đăng nhập vào server , bạn cần biết địa chỉ IP công cộng của server . Bạn cũng cần password hoặc, nếu bạn đã cài đặt SSH key để xác thực, thì private key cho account của user gốc . Nếu bạn chưa đăng nhập vào server của bạn , bạn có thể làm theo hướng dẫn của ta về cách kết nối với Server bằng SSH , hướng dẫn chi tiết về quy trình này.

Nếu bạn chưa được kết nối với server của bạn , hãy tiếp tục và đăng nhập với quyền là user gốc bằng lệnh sau (thay thế phần được đánh dấu của lệnh bằng địa chỉ IP công khai của server của bạn):

  • ssh root@your_server_ip

Chấp nhận cảnh báo về tính xác thực của server nếu nó xuất hiện. Nếu bạn đang sử dụng xác thực password , hãy cung cấp password gốc của bạn để đăng nhập. Nếu bạn đang sử dụng SSH key được bảo vệ bằng passphrase (password bảo vệ) , bạn có thể được yêu cầu nhập passphrase (password bảo vệ) vào lần đầu tiên bạn sử dụng khóa mỗi phiên. Nếu đây là lần đầu tiên bạn đăng nhập vào server bằng password , bạn cũng có thể được yêu cầu thay đổi password gốc .

Về root

User root là admin-user trong môi trường Linux có các quyền rất rộng. Vì các quyền cao của account gốc , bạn không nên sử dụng nó một cách thường xuyên. Do quyền của account gốc có thể thực hiện lệnh rủi ro do vô tình hay cố ý. .

Bước tiếp theo là cài đặt một account user thay thế với phạm vi ảnh hưởng giảm bớt cho công việc hàng ngày. Sau đó, ta sẽ giải thích cách tăng quyền cho những lúc bạn cần.

Bước 2 - Tạo user mới

Khi bạn đã đăng nhập bằng quyền root , ta chuẩn bị thêm account user mới mà ta sẽ sử dụng để đăng nhập từ bây giờ.

Ví dụ này tạo một user mới có tên là sammy , nhưng bạn nên thay thế nó bằng một tên user bạn muốn :

  • adduser sammy

Bạn sẽ được hỏi một số câu hỏi, bắt đầu với password account .

Nhập một password mạnh và, tùy chọn, điền vào bất kỳ thông tin bổ sung nào bạn muốn. Điều này không bắt buộc và bạn có thể nhấn ENTER trong bất kỳ trường nào bạn muốn bỏ qua.

Tiếp theo, ta sẽ cài đặt user mới này với các quyền của administrator .

Bước 3 - Cấp Đặc quyền Quản trị

Bây giờ, ta đã tạo một account user mới với các quyền account thông thường. Tuy nhiên, đôi khi ta có thể cần thực hiện các công việc quản trị với nó.

Để tránh phải đăng xuất khỏi user bình thường của ta và đăng nhập lại bằng account gốc , ta có thể cài đặt những gì được gọi là siêu user hoặc quyền gốc cho account thường của bạn . Điều này sẽ cho phép user bình thường của ta chạy các lệnh có quyền quản trị bằng cách đặt từ sudo trước lệnh.

Để thêm những quyền này cho user mới của ta , ta cần thêm user mới vào group sudo . Theo mặc định, trên Debian 10, user thuộc group sudo được phép sử dụng sudo .

Như là user root , hãy chạy lệnh này để thêm user mới của bạn vào group sudo (thay thế chữ tô đậm với user mới của bạn):

  • usermod -aG sudo sammy

Bây giờ, khi đăng nhập với quyền regular user , bạn có thể nhập sudo trước các lệnh để chạy lệnh với các quyền của user siêu cấp.

Bước 4 - Cài đặt firewall cơ bản

Server Debian có thể sử dụng firewall đảm bảo chỉ cho phép một số kết nối nhất định tới các dịch vụ cụ thể. Trong hướng dẫn này, ta sẽ cài đặt và sử dụng firewall UFW để giúp cài đặt các policy firewall và quản lý các ngoại lệ.

Ta có thể sử dụng trình quản lý gói apt để cài đặt UFW. Cập nhật index local để truy xuất thông tin mới nhất về các gói có sẵn và sau đó cài đặt phần mềm firewall UFW bằng lệnh :

  • apt update
  • apt install ufw

Lưu ý: Nếu server của bạn đang chạy trên DigitalOcean, bạn có thể tùy chọn sử dụng Tường lửa cloud DigitalOcean thay vì firewall UFW. Ta khuyên bạn chỉ nên sử dụng một firewall tại một thời điểm để tránh các luật xung đột có thể khó gỡ lỗi.

Cấu hình firewall cho phép UFW quản lý các bộ luật firewall được đặt tên cho các ứng dụng đã cài đặt. Cấu hình cho một số phần mềm thông thường được đóng gói với UFW theo mặc định và các gói có thể đăng ký cấu hình bổ sung với UFW trong quá trình cài đặt. OpenSSH, dịch vụ cho phép ta kết nối với server của bạn ngay bây giờ, có cấu hình firewall mà ta có thể sử dụng.

Bạn liệt kê tất cả các cấu hình ứng dụng có sẵn bằng lệnh :

  • ufw app list
Output
Available applications: . . . OpenSSH . . .

Ta cần đảm bảo firewall cho phép kết nối SSH để có thể đăng nhập lại vào lần sau. Ta có thể cho phép các kết nối này bằng lệnh :

  • ufw allow OpenSSH

Sau đó, ta có thể kích hoạt firewall bằng lệnh :

  • ufw enable

Nhập y và nhấn ENTER để tiếp tục. Bạn có thể thấy rằng các kết nối SSH vẫn được phép bằng lệnh :

  • ufw status
Output
Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6)

tường lửa hiện đang chặn tất cả các kết nối ngoại trừ SSH , nếu bạn cài đặt và cấu hình các dịch vụ bổ sung, bạn cần điều chỉnh cài đặt firewall để cho phép lưu lượng truy cập được chấp nhận. Bạn có thể tìm hiểu một số thao tác UFW phổ biến trong hướng dẫn cơ bản về UFW của ta .

Bước 5 - Bật quyền truy cập bên ngoài cho regular user của bạn

Bây giờ ta có một regular user để sử dụng hàng ngày, ta cần đảm bảo ta có thể SSH trực tiếp vào account .

Lưu ý: Cho đến khi xác minh bạn có thể đăng nhập và sử dụng sudo với user mới của bạn , ta khuyên bạn nên đăng nhập với quyền root . Bằng cách này, nếu bạn gặp sự cố, bạn có thể khắc phục sự cố và thực hiện bất kỳ thay đổi cần thiết nào khi root . Nếu bạn đang sử dụng DigitalOcean Server và gặp sự cố với kết nối SSH gốc của bạn , bạn cũng có thể đăng nhập vào Server bằng DigitalOcean Console .

Quá trình cấu hình quyền truy cập SSH cho user mới của bạn phụ thuộc vào việc account gốc của server của bạn sử dụng password hoặc SSH key để xác thực.

Nếu account root sử dụng xác thực password

Nếu bạn đã đăng nhập vào account gốc của mình bằng password , thì xác thực password được bật cho SSH. Bạn có thể SSH vào account user mới của bạn bằng cách mở một phiên terminal mới và sử dụng SSH với tên user mới của bạn:

  • ssh sammy@your_server_ip

Sau khi nhập password của regular user , bạn sẽ được đăng nhập. Lưu ý , nếu bạn cần chạy một lệnh có quyền quản trị, hãy nhập sudo trước nó như sau:

  • sudo command_to_run

Bạn sẽ được yêu cầu nhập password regular user của bạn khi sử dụng sudo lần đầu tiên mỗi phiên (và định kỳ sau đó).

Để tăng cường bảo mật cho server của bạn, ta thực sự khuyên bạn nên cài đặt SSH key thay vì sử dụng xác thực password . Làm theo hướng dẫn của ta về cách cài đặt SSH key trên Debian 10 để tìm hiểu cách cấu hình xác thực dựa trên khóa.

Nếu account root sử dụng xác thực SSH key

Nếu bạn đã đăng nhập vào account gốc của mình bằng SSH key , thì xác thực password sẽ bị vô hiệu hóa cho SSH. Bạn cần thêm một bản sao của public key local của bạn vào file ~/.ssh/authorized_keys của user mới để đăng nhập thành công.

Vì public key của bạn đã có trong file ~/.ssh/authorized_keys của account gốc trên server , ta có thể sao chép file và cấu trúc folder đó sang account user mới trong phiên hiện có của ta bằng lệnh cp . Sau đó, ta có thể điều chỉnh quyền sở hữu các file bằng lệnh chown .

Đảm bảo thay đổi các phần được đánh dấu của lệnh bên dưới để trùng với tên regular user của bạn:

  • cp -r ~/.ssh /home/sammy
  • chown -R sammy:sammy /home/sammy/.ssh

Lệnh cp -r sao chép toàn bộ folder vào folder chính của user mới và lệnh chown -R thay đổi chủ sở hữu của folder đó (và mọi thứ bên trong nó) thành username:groupname được chỉ định username:groupname (Debian tạo một group có cùng tên với tên user của bạn theo mặc định).

Bây giờ, hãy mở một phiên terminal mới và đăng nhập qua SSH bằng tên user mới của bạn:

  • ssh sammy@your_server_ip

Bạn phải đăng nhập vào account user mới mà không cần sử dụng password . Lưu ý , nếu bạn cần chạy một lệnh có quyền quản trị, hãy nhập sudo trước nó như sau:

  • sudo command_to_run

Bạn sẽ được yêu cầu nhập password regular user của bạn khi sử dụng sudo lần đầu tiên mỗi phiên (và định kỳ sau đó).

Đi đâu từ đây?

Lúc này, bạn đã có một nền tảng vững chắc cho server của bạn . Bạn có thể cài đặt bất kỳ phần mềm nào bạn cần trên server của bạn ngay bây giờ.


Tags:

Các tin liên quan

Cách cài đặt và cấu hình Postfix làm server SMTP chỉ gửi trên Debian 10
2019-07-08
Cách xây dựng và triển khai server GraphQL với Node.js và MongoDB trên Ubuntu 18.04
2019-04-18
Cách thiết lập thủ công server Prisma trên Ubuntu 18.04
2019-01-11
Kết xuất phía server với Angular Universal
2019-01-10
Cách cài đặt và cấu hình pgAdmin 4 ở Chế độ server
2018-10-19
Cách cài đặt Linux, Apache, MySQL, PHP (LAMP) trên Debian 8
2018-10-18
Cách cài đặt Linux, Nginx, MySQL, PHP ( LEMP) trên Debian 9
2018-09-13
Cách cài đặt, chạy và kết nối với Jupyter Notebook trên server từ xa
2018-09-12
Cách cài đặt và cấu hình Postfix làm server SMTP chỉ gửi trên Debian 9
2018-09-07
Cách cấu hình BIND làm server DNS Mạng Riêng trên Debian 9
2018-09-06