Cập nhật máy chủ Ubuntu 20.04 là một bước quan trọng để đảm bảo hệ thống của bạn luôn được bảo mật và hoạt động ổn định. Tuy nhiên, nếu thực hiện sai cách, bạn có thể gây ra những sự cố hoặc lỗi không mong muốn. Do đó trong bài viết này, mình sẽ hướng dẫn bạn cách cập nhật máy chủ Ubuntu 20.04 an toàn, chính xác nhất.
Những điểm chính
- Điều kiện cần đáp ứng: Để có thể cập nhật máy chủ Ubuntu 20.04, bạn cần tài khoản người dùng non-root có quyền sudo.
- Các bước thực hiện: Bắt đầu từ việc sử dụng các phương pháp quản lý ứng dụng, cấu hình cập nhật tự động không giám sát (Unattended Upgrades) và cuối cùng cập nhật, cài đặt các bản vá Kernel bằng Livepatching.
- Biết đến Vietnix là nhà cung cấp VPS tốc độ, ổn định và hỗ trợ chuyên nghiệp.
Điều kiện để có thể hướng dẫn cách cập nhật máy chủ Ubuntu 20.04
- Máy chủ Ubuntu 20.04.
- Tài khoản người dùng của bạn không phải root và có quyền sudo.
Nếu bạn đang tìm kiếm giải pháp máy chủ ổn định, bảo mật cao để thiết lập máy chủ Ubuntu 20.04, hãy xem xét dịch vụ VPS AMD từ Vietnix. Với đội ngũ kỹ thuật giàu kinh nghiệm, Vietnix sẽ giúp bạn quản lý và cập nhật máy chủ một cách tự động, đảm bảo hệ thống luôn hoạt động ổn định và an toàn mà không cần bạn phải thao tác thủ công. Bên cạnh đó, VPS AMD của Vietnix còn mang lại hiệu năng vượt trội với chi phí hợp lý, giúp bạn tập trung vào phát triển dự án của mình.
Bước 1: Sử dụng các phương pháp quản lý ứng dụng
Việc thực hiện các phương pháp quản lý ứng dụng mục đích cơ bản là để việc cấu hình máy chủ của bạn có thể cập nhật tự động và đảm bảo rằng tất cả các ứng dụng đang chạy trên máy chủ đều có khả năng được khởi chạy lại bình thường sau khi cập nhật.
Khi bạn cài đặt các ứng dụng trên máy chủ Ubuntu, hầu hết các ứng dụng này sẽ được quản lý bởi hệ thống systemd
. Systemd
sẽ giúp bạn tương tác với các dịch vụ và tự động khởi động lại chúng khi cần. Nếu bạn tự phát triển ứng dụng hoặc triển khai từ Git, bạn có thể viết các tệp của riêng mình để tích hợp với systemd
. Nếu bạn muốn sử dụng một công cụ nhẹ hơn, bạn có thể sử dụng Supervisor
.
Ngoài ra, Nếu bạn muốn chạy một tác vụ nào đó mỗi khi khởi động lại máy chủ, bạn có thể sử dụng lịch trình cron với cú pháp @reboot
. Bạn cũng có thể khởi động lại máy chủ bằng cách chạy lệnh:
sudo shutdown now -r
Lệnh này sẽ dừng các tiến trình đang chạy và khởi động lại máy chủ ngay lập tức. Sau khi khởi động lại, hãy kiểm tra xem các dịch vụ và chức năng của hệ thống có hoạt động bình thường hay không.
Bước 2: Cấu hình cập nhật tự động không giám sát (Unattended Upgrades)
Bạn có thể hiểu đơn giản cấu hình cập nhật tự động không giám sát là một tính năng cho phép bạn cài đặt và cập nhật các bản vá bảo mật cho máy chủ của bạn một cách tự động và không cần sự can thiệp của người dùng.
Máy chủ Ubuntu có một công cụ gọi là apt
để quản lý các gói trên máy chủ. Để nâng cấp toàn bộ máy chủ, bạn cần chạy 2 lệnh:
sudo apt update
Lệnh trên dùng để cập nhật danh sách các gói và lệnh dưới đây sẽ nâng cấp các gói đó:
sudo apt upgrade
Tuy nhiên, nếu bạn có các gói của bên thứ ba hoặc muốn giữ lại một số gói không được nâng cấp, thì quy trình sẽ có một số khác biệt.
Để tự động cài đặt các bản vá bảo mật và các nâng cấp cần thiết khác cho máy chủ của bạn, Ubuntu có cung cấp công cụ gọi là unattended-upgrades
. Công cụ này thường được cài đặt sẵn trên hầu hết các máy chủ Ubuntu, nhưng nếu chưa có, bạn có thể cài đặt nó bằng các lệnh đơn giản sau đây:
sudo apt update
sudo apt install unattended-upgrades
Sau khi cài đặt, bạn có thể kiểm tra để đảm bảo rằng dịch vụ nâng cấp không giám sát đang chạy trong systemctl
bằng lệnh:
sudo systemctl status unattended-upgrades.service
Bạn sẽ nhận được output như bên dưới:
Output
● unattended-upgrades.service - Unattended Upgrades Shutdown
Loaded: loaded (/lib/systemd/system/unattended-upgrades.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2022-02-14 17:51:49 UTC; 3h 4min ago
Docs: man:unattended-upgrade(8)
Main PID: 829 (unattended-upgr)
Tasks: 2 (limit: 1137)
Memory: 10.6M
CGroup: /system.slice/unattended-upgrades.service
Dịch vụ unattended-upgrades
sẽ tự động tải và cài đặt các bản vá lỗi và bảo mật cho hầu hết các gói trong kho lưu trữ Ubuntu.
Tuy nhiên, nếu bạn sử dụng các phiên bản cũ của một số gói hoặc sử dụng kho lưu trữ gói (repositories) từ bên thứ ba, bạn cần cấu hình cho dịch vụ này. Để làm điều này, bạn chỉ cần sửa tệp cấu hình bằng lệnh:
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
Tệp cấu hình sẽ có dạng như thế này:
// Automatically upgrade packages from these (origin:archive) pairs
//
// Note that in Ubuntu security updates may pull in new dependencies
// from non-security sources (e.g. chromium). By allowing the release
// pocket these get automatically pulled in.
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}";
"${distro_id}:${distro_codename}-security";
// Extended Security Maintenance; doesn't necessarily exist for
// every release and this system may not have it installed, but if
// available, the policy for updates is such that unattended-upgrades
// should also install from here by default.
"${distro_id}ESMApps:${distro_codename}-apps-security";
"${distro_id}ESM:${distro_codename}-infra-security";
// "${distro_id}:${distro_codename}-updates";
// "${distro_id}:${distro_codename}-proposed";
// "${distro_id}:${distro_codename}-backports";
};
…
Tệp này được chú thích rất rõ ràng về chức năng của từng phần. Phần cấu hình đầu tiên xác định các gói sẽ được cập nhật tự động. Theo mặc định, các tệp trong kho lưu trữ chính và kho lưu trữ -security
sẽ được cập nhật, nhưng các dòng lệnh chứa kho lưu trữ -updates
, -proposed
và -backports
hiện đang ở chế độ chú thích (lệnh sẽ không thực thi).
Những kho lưu trữ này bị tắt mặc định vì đôi lúc chứa các thay đổi có thể làm hỏng các gói đã cài đặt trên máy chủ của bạn. Tuy nhiên, bạn có thể kích hoạt chúng bằng cách xóa các ký tự chú thích //
trên các dòng này.
Bên dưới tệp cấu hình sẽ có phần toggles lựa chọn true/false
, ví dụ như Automatic-reboot
, … Tuy nhiên hãy chắc chắn rằng việc thực hiện này không gây ảnh hưởng luồng công việc vì điều này có thể dẫn đến tình trạng không thể sử dụng ở những khoảng thời gian ngẫu nhiên sau mỗi đợt cập nhật.
...
//Unattended-Upgrade::Automatic-Reboot "false";
...
Sau khi bạn đã thực hiện các thay đổi cấu hình, lưu và đóng tệp bằng cách nhấn Ctrl + X
, sau đó nhấn Y
rồi Enter
. Để dịch vụ unattended-upgrades
có thể hoạt động như mong muốn sau khi bạn sửa tệp cấu hình thì hãy tiến hành khởi động lại dịch vụ bằng lệnh:
sudo systemctl reload unattended-upgrades.service
Qua một số bước trên, bạn đã có các giải pháp để đảm bảo rằng tất cả các gói trên máy chủ của bạn đều nhận được các cập nhật bảo mật cần thiết mà không cần thêm bất kỳ sự can thiệp bổ sung nào khác.
Bước 3: Cập nhật và cài đặt các bản vá Kernel bằng Livepatching
Đôi khi bạn sẽ cần cập nhật Kernel của hệ thống. Kernel Linux chứa (gần như) tất cả các trình điều khiển phần cứng và chịu trách nhiệm cho hầu hết các tương tác hệ thống cấp thấp. Cập nhật Kernel thường chỉ cần thiết nếu có lỗ hổng cần phải giải quyết hoặc nếu bạn cần sử dụng một tính năng Kernel mới được công bố hoặc nếu Kernel của bạn đã quá cũ, có rủi ro tích tụ các lỗi và lỗ hổng mà bạn có thể không biết được.
Trong quá trình cập nhật, máy chủ phải ngừng hoạt động, vì vậy không có cách nào để chạy các dịch vụ từ máy chủ nữa. Vì vậy để tránh tình trạng này, bạn cần dùng Livepatching.
Tính năng này cho phép thực hiện nâng cấp Kernel mà không cần phải khởi động lại hệ thống. Hiện có hai nhà cung cấp chính cho các bản vá kernel LivePatching đó là Canonical và KernelCare chuyên cung cấp dịch vụ Livepatch cho Ubuntu.
Bạn có thể đăng ký một Livepatch key
tại trang chủ của Canonical. Sau khi đăng ký, tiến hành cài đặt gói snap canonical-livepatch
bằng lệnh:
sudo snap install canonical-livepatch
Snap là một trình quản lý gói Ubuntu chạy song song với apt
, tiến hành kích hoạt canonical-livepatch
với một dòng lệnh và sử dụng key mà bạn đã đăng ký:
sudo canonical-livepatch enable your-key
Thay thế your-key bằng key mà bạn đã đăng ký trên Canonical. Kết quả sẽ chứa thông báo Successfully enabled device
có nghĩa là đã thành công. Dịch vụ sẽ chạy trong nền từ bây giờ trở đi và bạn có thể kiểm tra trạng thái của nó bằng lệnh:
sudo canonical-livepatch status
Chỉ một vài bước như vậy, bạn đã cấu hình cập nhật Kernel tự động cho máy chủ của mình, điều này có nghĩa là bây giờ bạn không cần khởi động lại máy chủ để cập nhật nữa.
Ngoài ra, bạn cũng có thể tham khảo thêm cách thiết lập Redis làm cache cho MySQL bằng PHP trên Ubuntu 20.04 để có thể tối ưu hóa hiệu suất MySQL và cải thiện ứng dụng web của bạn.
VPS Vietnix: Tốc độ, ổn định và hỗ trợ chuyên nghiệp
Vietnix, với 12 năm kinh nghiệm đồng hành cùng sự phát triển của hàng ngàn doanh nghiệp và cá nhân, đã mang đến dịch vụ VPS chất lượng hàng đầu Việt Nam. VPS Vietnix không chỉ đảm bảo hiệu suất vượt trội, tính ổn định cao, mà còn được xây dựng trên nền tảng hạ tầng hiện đại, bảo mật tối đa. Hơn thế nữa, Vietnix cam kết hỗ trợ kỹ thuật tận tâm 24/7, giúp bạn an tâm tập trung vào việc phát triển kinh doanh. Hãy để Vietnix trở thành bệ phóng vững chắc cho sự phát triển của bạn.
Thông tin liên hệ:
- Địa chỉ: 265 Hồng Lạc, Phường 10, Quận Tân Bình, Thành Phố Hồ Chí Minh.
- Hotline: 1800 1093.
- Email: sales@vietnix.com.vn.
- Website: https://vietnix.vn/.
Việc cập nhật máy chủ thường xuyên là điều vô cùng quan trọng để đảm bảo hệ thống của bạn luôn hoạt động ổn định, bảo mật và hiệu quả. Hy vọng với hướng dẫn cách cập nhật máy chủ Ubuntu 20.04 trên của mình, bạn có thể thực hiện thao tác này thành công. Ngoài ra, bạn có thể xem thêm một số cách giúp nâng cao bảo mật cho máy chủ Ubuntu qua một số bài viết dưới đây của mình:
Mọi người cũng xem: