Ubuntu20配置本地源和局域网源(使用GPG签名解决不安全的源验证问题,亲测可行!)

前言

因外网不稳定,下载经常断连失败,所以需要用一台主机当服务器存放deb软件包,局域网内的其他主机可以通过这台主机下载安装包

在服务器上搭建apt源

1.在/usr/local/目录下新建一个localrepo文件夹存放本地deb
在这里插入图片描述
2.将预先的准备好的deb包复制到该目录下
在这里插入图片描述
3.进入本地源目录,生成Packages和Release

cd /usr/local/localrepo
apt-ftparchive packages . > Packages
apt-ftparchive release . > Release

4.Ubuntu20版本,APT要求所有软件源都要经过数字签名,以确保软件包的完整性和安全性。我们要先安装gnupg软件包,为本地源创建GPG签名

sudo apt-get install gnupg

安装rng-tools,加快gpg密钥的生成速度,并设置让其在后台运行

apt install rng-tools
rngd -r /dev/urandom

生成GPG密钥

gpg --gen-key

注册时需要输入自己的用户名和邮箱,成功后输入ok(邮箱必须填真实的,之后他会向你发邮件)
在这里插入图片描述
进入密钥生成界面,输入自己想要设置的密钥
在这里插入图片描述
成功生成密钥
在这里插入图片描述
将密钥上传至GPG服务器,我这里选择的服务器是keys.openpgp.org
在这里插入图片描述
登录keys.openpgp.org,可以查询到密钥已经上传到服务器
在这里插入图片描述
过一段时间邮箱会收到一封信,告诉你有人用你的账户上传了密钥,点击信里的链接
在这里插入图片描述
继续向邮箱发送邮件
在这里插入图片描述
邮箱里收到一封新的邮件,点击确认,至此,GPG密钥配置完成
在这里插入图片描述
在这里插入图片描述
4.将公钥导入到本地,并为本地源配置数字签名

sudo apt-key adv --keyserver keys.openpgp.org --recv-keys 99EA1EF96C040B25

在这里插入图片描述

gpg -abs -o /usr/local/localrepo/Release.gpg /usr/local/localrepo/Release

输入刚才设置的密钥
在这里插入图片描述
5.编辑source.list,vim /etc/apt/source.list,向里面填加你本地存放源的地址

deb file:///usr/local/localrepo/ ./

在这里插入图片描述
6.输入命令apt update,测试本地源是否配置成功
在这里插入图片描述
测试本地源中的软件能否顺利安装
在这里插入图片描述
至此,本地源已经配置成功

在服务端配置apache2服务器,开放文件下载

1.在服务器上下载apache2服务器

apt install apache2

2.更改apache2.conf配置文件,vim /etc/apache2/apache2.conf,将目录访问权限都改成granted
在这里插入图片描述
在这里插入图片描述
3.更改000-default.conf配置文件,vim /etc/apache2/sites-available/000-default.conf,在里面添加如下内容
在这里插入图片描述
打开浏览器输入服务器ip地址发现apache2服务已经正常启动
在这里插入图片描述

在客户端配置,能通过服务端下载

1.将刚才在服务端生成的gpg公钥导入到客户端

sudo apt-key adv --keyserver keys.openpgp.org --recv-keys 99EA1EF96C040B25

在这里插入图片描述
2.更改source.list文件,vim /etc/apt/source.list,在里面添加服务器端的本地源地址

deb http://10.10.111.223/ /

在这里插入图片描述
3.执行apt update
在这里插入图片描述
4.通过apt install安装放在局域网服务器仓库里的deb
在这里插入图片描述
至此,便完成了Ubuntu20局域网源的配置!

猜你喜欢

转载自blog.csdn.net/QAZ600888/article/details/129873143