CentOS系统的软件仓库主要分为以下几类: - Base/OS:核心系统软件包 - Updates:系统更新包 - Extras:额外软件包 - EPEL:企业版Linux额外软件包(需额外配置) - 第三方仓库:如Remi、RPMForge等
yum repolist all
sudo yum-config-manager --disable <repository-name>
确保仓库URL以https://
开头,修改/etc/yum.repos.d/
下的.repo
文件:
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
# 改为
baseurl=https://mirrors.centos.org/$contentdir/$releasever/BaseOS/$basearch/os/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
确保所有仓库配置中包含:
gpgcheck=1
enabled=1
sudo yum install epel-release
sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8
sudo rpm --import https://rpms.remirepo.net/RPM-GPG-KEY-remi
sudo yum install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
rpm -q gpg-pubkey --qf '%{name}-%{version}-%{release} --> %{summary}\n'
对于高安全环境,可设置本地镜像:
sudo yum install yum-utils createrepo
reposync -g -l -d -m --repoid=base --newest-only --download-metadata --download_path=/var/local/repos/
createrepo /var/local/repos/base
然后创建本地仓库文件/etc/yum.repos.d/local.repo
:
[local-base]
name=Local CentOS Base
baseurl=file:///var/local/repos/base
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
定期更新仓库元数据:
sudo yum makecache
审计已安装软件包:
sudo yum list installed
优先使用签名仓库:
sudo yum-config-manager --setopt=*.gpgcheck=1 --save
限制第三方仓库:
sudo yum-config-manager --setopt=*.skip_if_unavailable=1 --save
使用yum安全插件:
sudo yum install yum-plugin-security
sudo yum update --security
sudo rpm --import <key-url>
sudo yum update ca-certificates
通过以上配置,您可以确保CentOS系统从安全可靠的远程仓库获取软件包,同时降低潜在的安全风险。