使用Ubuntu系统管理工具Landscape来构建离线APT仓库:第一篇
by liam zheng on 18 January 2022
Ubuntu 是开发人员、云或横向扩展应用程序最流行的 Linux 发行版,原因之一是提供长期可用且易于安装的软件升级及安全补丁。一些企业用户可能在没有互联网访问的本地网络中运行大量 Ubuntu 桌面或服务器,这些机器无法访问在线的 Ubuntu APT 仓库导致无法获得和安装系统更新,从而导致网络中的机器存在安全问题。然而,借助 Ubuntu 系统管理工具 Landscape 则可以有效地解决此问题。
本系列博客将演示如何使用 Ubuntu 系统管理工具 Landscape 来构建一个离线的 APT 仓库为内网机器提供软件更新源。需要注意的是,Landscape 仍需通过代理访问互联网,但其它系统只需访问到 Landscape 来下载安全补下或软件升级。其为 apt-mirror 提供了一种替代的方法,如果您有着成百上千的 Ubuntu 桌面或服务器需要集中化管理,那么这将大幅提高您的管理效率,减少维护成本。
一、Landscape 和服务器安装
Landscape 是支持和监控大型且不断增长的桌面、服务器和云网络的最具成本效益的方式。减少团队进行基本日常管理所需的工作量。 Landscape 提供的工具可以像一台机器一样轻松地部署、监控和管理数千台 Ubuntu 机器。它通过以下方式节省时间并大规模提高安全性:
- 自动执行日常任务
- 接收警报以更新您指定的机器
- 使用最新的安全补丁以保持安全
- 单一界面管理多达40000台机器
- 创建您自己的软件
- 通过 API 扩展和自定义 Landscape
作为 Canonical 企业级支持服务 Ubuntu Advantage (简称“UA”)的一部分,Landscape 已包含在订阅服务中,无需额外采购。Landscape 提供10台机器的测试许可,如超过 10 台机器需要 UA 订阅,但如果您在内网内安装 Landscape On-premises,可免费管理最多 10 台机器。在您决定获得 Landscape 提供的完全自动化权限之前,您可以使用免费许可证来完成镜像和共享离线 Ubuntu APT 仓库。如并手动配置一些 APT 源,所有内部 Ubuntu 系统都能使用。
通过下面的方法,可在 Ubuntu 18.04 上通过快速入门方法安装 Landscape,更多详细内容请参考此链接。通过访问 https://<servername> 并填写请求的信息。
sudo add-apt-repository ppa:landscape/19.10 sudo apt-get install Landscape-server-quickstart
完整操作如下:
ubuntu@vm-landscape-server:~$ sudo add-apt-repository ppa:landscape/19.10 October 2019 release of Landscape More info: https://launchpad.net/~landscape/+archive/ubuntu/19.10 Press [ENTER] to continue or Ctrl-c to cancel adding it. Get:1 http://ppa.launchpad.net/landscape/19.10/ubuntu bionic InRelease [15.4 kB] Get:2 http://ppa.launchpad.net/landscape/19.10/ubuntu bionic/main amd64 Packages [6320 B] … Fetched 7218 kB in 14s (526 kB/s) Reading package lists... Done ubuntu@vm-landscape-server:~$ sudo apt-get install landscape-server-quickstart Reading package lists... Done Building dependency tree ... Processing triggers for rsyslog (8.32.0-1ubuntu4) ... ubuntu@vm-landscape-server:~$
二、Landscape api 访问
Landscape 为大多数管理任务提供了一个简洁且易于使用的仪表板。您还可以调用 Landscape 的 API,它允许您从命令行、shell 脚本或 Python 模块执行许多 Landscape 任务。虽然离线 repos 只能通过 API 进行设置和管理,但如下所示它也相当简单。
安装 Landscape api 客户端并配置使用:
- sudo add-apt-repository –update ppa:landscape/landscape-api
- sudo apt-get install Landscape-api
- 获取 api 密钥并设置环境
ubuntu@vm-landscape-server: ~$sudo add-apt-repository --update ppa:landscape/landscape-api ubuntu@vm-landscape-server: ~$sudo apt-get install Landscape-api
从下面截图(Landscape 网页界面) 中查找 API 密钥。

配置和测试api:
ubuntu@vm-landscape-server:~$ cat api.rc #!/bin/bash export LANDSCAPE_API_KEY="6QNNH5QHK2OU7JPPS7FJ" export LANDSCAPE_API_SECRET="SYFbvBezQQlgWx0JUrZVl6SJ51xqlO75mstHTqfQ" export LANDSCAPE_API_URI="https://vm-landscape-server .maas/api/" export LANDSCAPE_API_SSL_CA_FILE="/etc/ssl/certs/landscape_server_ca.crt" ubuntu@vm-landscape-server:~$ source api.rc ubuntu@vm-landscape-server:~$ landscape-api get- scripts [] ubuntu@vm-landscape-server:~$
三、下一步设置本地并同步
通过上面您已经安装了 Landscape 服务器和建立了 api 访问。下一步我们将进一步介绍客户端和本地仓库搭建的设置。同时,您也可以访问 Landscape网站 阅读更多内容。
或者联系我们获得更多关于 Landscape 的服务支持相关的内容。
本教程由Canonical FE Mao Zhanglei 所撰写。订阅博客文章
查看更多内容
Canonical 发布 Ubuntu 25.04 Plucky Puffin
Ubuntu 的最新临时版本,引入了适用于如 Spring 等热门框架的“开发软件包”,同时在各种硬件设备上增强了性能。 发布日期:2025 年 4 月 17 日 Canonical 宣布发布 Ubuntu 25.04,代号“Plucky Puffin”,用户可前往 ubuntu.com/download 进行下载并安装。 Ubuntu 25.04 搭载最新的 GNOME 48 桌面环境,支持三重缓冲技术,提供更好的安装和启动体验。引入适用于 Spring 框架的“开发软件包”,进一步扩大了 Ubuntu 中的工具链可用性。Canonical 携手合作伙伴在芯片技术上取得的进步,不仅为 Intel GPU 上人工智能工作负载提升了性能,同时还支持 AMD SEV-SN […]
什么是「应用安全」 — Application Security “AppSec” ?
网络安全领域已然迎来重大变革。如今,网络攻击、恶意软件和勒索软件等风险日益蔓延,加之新出台的网络安全法规以及针对数据泄露和数据外泄的高额罚款所带来的压力与日俱增,强化应用安全(AppSec)已毫无妥协可言。 在本文中,我们将探讨如何直面这些挑战,通过聚焦安全态势中最基本的要素,确保业务和系统安全。笔者将介绍应用安全(AppSec)的概念及其益处,探讨企业应如何设计和实现应用安全,并分享我们团队的一些实用建议和最佳实践,帮助您筑牢安全防线。 什么是 AppSec ? 应用安全(简称 AppSec)是一个广义概念,涵盖了企业组织为保护其应用程序在整个生命周期内免遭各种安全漏洞而采用的所有工具、举措与流程。应用安全的目标只有一个,就是找出应用程序和系统中可能会被恶意攻击者利用, […]
互联汽车软件开发:Anbox Cloud 为安全护航
当下,Android Automotive 操作系统(AAOS)是各大汽车制造商打造车载信息娱乐系统的首选。AAOS 是一个功能完备的信息娱乐平台,支持各类应用程序、功能和服务,其使用体验与人们熟悉的 Android 手机大同小异。 AAOS 可助力开发者构建出提升驾驶体验的新应用和新功能,促使兼容应用与服务生态系统迅速壮大。 然而遗憾的是,开发强大稳健的信息娱乐系统并非易事,前方的道路漫长且充满挑战。硬件可用性、物流配送以及系统配置等方面都存在挑战。例如,对硬件的依赖常常会导致测试中出现问题和延误。不仅如此,许多硬件变体也与开发者的测试环境存在差异,这使得搭建具有代表性的测试台变得十分困难。 云原生方案就是解决物理硬件问题的有力办法:其无需进行实物运输、搬运或安装,就能 […]