Android

Cấu hình cập nhật tự động với yum

Update yum repository using script and cron in #CentOS 7 | yum server

Update yum repository using script and cron in #CentOS 7 | yum server

Mục lục:

Anonim

Cập nhật thường xuyên hệ thống CentOS của bạn là một trong những khía cạnh quan trọng nhất của bảo mật hệ thống tổng thể. Nếu bạn không cập nhật các gói của hệ điều hành với các bản vá bảo mật mới nhất, bạn sẽ khiến máy của mình dễ bị tấn công.

Trong hướng dẫn này, chúng tôi sẽ trải qua quá trình định cấu hình cập nhật tự động trên CentOS 7. Các hướng dẫn tương tự áp dụng cho CentOS 6.

Điều kiện tiên quyết

Trước khi tiếp tục với hướng dẫn này, hãy đảm bảo bạn đã đăng nhập với tư cách là người dùng có quyền sudo.

Cài đặt gói yum-cron

Gói yum-cron cho phép bạn tự động chạy lệnh yum dưới dạng công việc định kỳ để kiểm tra, tải xuống và áp dụng các bản cập nhật. Rất có thể gói này đã được cài đặt trên hệ thống CentOS của bạn. Nếu chưa cài đặt, bạn có thể cài đặt gói bằng cách chạy lệnh sau:

sudo yum install yum-cron

Sau khi cài đặt hoàn tất, kích hoạt và bắt đầu dịch vụ:

sudo systemctl enable yum-cron sudo systemctl start yum-cron

Để xác minh rằng dịch vụ đang chạy, gõ lệnh sau:

systemctl status yum-cron

Thông tin về trạng thái dịch vụ yum-cron sẽ được hiển thị trên màn hình:

● yum-cron.service - Run automatic yum updates as a cron job Loaded: loaded (/usr/lib/systemd/system/yum-cron.service; enabled; vendor preset: disabled) Active: active (exited) since Sat 2019-05-04 21:49:45 UTC; 8min ago Process: 2713 ExecStart=/bin/touch /var/lock/subsys/yum-cron (code=exited, status=0/SUCCESS) Main PID: 2713 (code=exited, status=0/SUCCESS) CGroup: /system.slice/yum-cron.service

Cấu hình yum-cron

yum-cron đi kèm với hai tệp cấu hình được lưu trữ trong thư mục /etc/yum , tệp cấu hình hàng giờ yum-cron.conf và tệp cấu hình hàng ngày yum-cron-hourly.conf .

Dịch vụ yum-cron chỉ kiểm soát xem các công việc cron có chạy hay không. Tiện ích yum-cron được gọi bởi các tệp cron /etc/cron.daily/0yum-daily.cron /etc/cron.daily/0yum-daily.cron .

Theo mặc định, cron hàng giờ được cấu hình để không làm gì. Nếu có bản cập nhật có sẵn, cron hàng ngày được đặt để tải xuống nhưng không cài đặt các bản cập nhật có sẵn và gửi tin nhắn đến thiết bị xuất chuẩn. Cấu hình mặc định là đủ cho các hệ thống sản xuất quan trọng nơi bạn muốn nhận thông báo và thực hiện cập nhật thủ công sau khi kiểm tra các bản cập nhật trên các máy chủ thử nghiệm.

Tệp cấu hình được cấu trúc trong các phần và mỗi phần chứa các nhận xét mô tả những gì từng dòng cấu hình làm.

Để chỉnh sửa tệp cấu hình yum-cron, hãy mở tệp trong trình soạn thảo văn bản của bạn:

sudo nano /etc/yum/yum-cron-hourly.conf

Trong phần đầu tiên, bạn có thể xác định loại gói mà bạn muốn được cập nhật, bật tin nhắn và tải xuống và đặt thành tự động áp dụng các bản cập nhật khi chúng có sẵn. Theo mặc định, update_cmd được đặt thành mặc định sẽ cập nhật tất cả các gói. Nếu bạn muốn đặt các bản cập nhật không giám sát tự động, bạn nên thay đổi giá trị thành security , điều này sẽ cho yum cập nhật các gói chỉ khắc phục sự cố bảo mật.

Trong ví dụ sau, chúng tôi đã thay đổi update_cmd thành security và kích hoạt các cập nhật không giám sát bằng cách đặt apply_updates thành yes :

/etc/yum/yum-cron-hourly.conf

update_cmd = security update_messages = yes download_updates = yes apply_updates = no random_sleep = 360

Phần thứ hai xác định cách gửi tin nhắn. Để gửi tin nhắn đến cả thiết bị xuất chuẩn và email, hãy thay đổi giá trị của emit_via thành stdio, email .

/etc/yum/yum-cron-hourly.conf

system_name = None emit_via = stdio, email output_width = 80

bên trong phần bạn có thể đặt địa chỉ email người gửi và người nhận. Đảm bảo rằng bạn có một công cụ có thể gửi email được cài đặt trên hệ thống của bạn, chẳng hạn như mailx hoặc postfix.

/etc/yum/yum-cron-hourly.conf

email_from = [email protected] email_to = [email protected] email_host = localhost

Các phần cho phép bạn ghi đè cài đặt được xác định trong tệp yum.conf . Nếu bạn muốn loại trừ các gói cụ thể khỏi bị cập nhật, bạn có thể sử dụng tham số exclude . Trong ví dụ sau, chúng tôi đang loại trừ gói.

/etc/yum/yum-cron-hourly.conf

debuglevel = -2 mdpolicy = group:main exclude = mongodb*

Bạn không cần phải khởi động lại dịch vụ yum-cron để các thay đổi có hiệu lực.

Xem nhật ký

Sử dụng grep để kiểm tra xem các công việc cron liên quan đến yum có được thực thi hay không:

sudo grep yum /var/log/cron

May 4 22:01:01 localhost run-parts(/etc/cron.hourly): starting 0yum-hourly.cron May 4 22:32:01 localhost run-parts(/etc/cron.daily): starting 0yum-daily.cron May 4 23:01:01 localhost run-parts(/etc/cron.hourly): starting 0yum-hourly.cron May 4 23:01:01 localhost run-parts(/etc/cron.hourly): finished 0yum-hourly.cron

Lịch sử của các bản cập nhật yum được ghi vào tệp /var/log/yum . Bạn có thể xem các bản cập nhật mới nhất bằng lệnh tail:

sudo tail -f /var/log/yum.log

May 04 23:47:28 Updated: libgomp-4.8.5-36.el7_6.2.x86_64 May 04 23:47:31 Updated: bpftool-3.10.0-957.12.1.el7.x86_64 May 04 23:47:31 Updated: htop-2.2.0-3.el7.x86_64

Phần kết luận

Trong hướng dẫn này, bạn đã học cách định cấu hình cập nhật tự động và giữ cho hệ thống CentOS của bạn luôn cập nhật.

bảo mật centos yum