首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏运维研习社

    开源镜像仓库Harbor的镜像安全

    之前介绍过Harbor,从安装部署到简单使用,今天这里就不再重复介绍了,有需要的可以跳转到'Harbor 功能强大的企业级私有仓库'查看,今天主要介绍Harbor的安全功能——镜像漏洞扫描 Harbor 自动进行扫描,通过定义部署安全级别,阻止某些安全级别的镜像,上传到Harbor,这部分配置在项目配置中 ? 新建项目,在项目中的配置管理里面进行漏洞扫描的配置,分别配置是否阻止潜在漏洞镜像,按照危害级别进行阻止,勾选自动扫描镜像,即在镜像上传的时候进行扫描,我们勾选,上传镜像测试 ? ,有时候有一些CVE我们想要忽略,就是这个CVE代号的漏洞,不在我们考虑的安全范围内,我们可以通过设置CVE白名单来进行忽略 CVE白名单分两种,一种是项目白名单,一种是系统白名单,在项目中的配置管理中进行配置 项目白名单,就直接在项目中进行配置,添加cve对应的cveid,并设置过期时间即可 系统白名单,需要在系统管理——配置管理——系统设置——部署安全性中进行添加 ?

    3.1K20发布于 2020-06-12
  • 来自专栏Bypass

    镜像安全扫描工具

    镜像安全扫描是确保云原生环境安全非常重要和基础的一个环节,通过镜像安全扫描可以检测容器镜像中的漏洞,避免攻击者植入恶意代码,快速响应漏洞,从而降低安全风险。 本文分享两个比较常用的镜像安全扫描工具,它们可以帮助我们识别容器镜像中的漏洞和弱点。 1、Trivy Trivy是一个全面的多功能安全扫描器,支持在容器镜像、Kubernetes、代码存储库、AWS中查找漏洞、错误配置、敏感信息和密钥、SBOM等。 github项目地址: https://github.com/chaitin/veinmind-tools.git (1)安装 veinmind-runner,使用平行容器启动脚本扫描本地镜像。 /run.sh scan image nginx:latest (2)下载单一工具veinmind-backdoor,扫描本地镜像中的后门。

    1.2K30编辑于 2023-11-07
  • 容器安全-镜像扫描

    前言容器镜像安全是云原生应用交付安全的重要一环,对上传的容器镜像进行及时安全扫描,并基于扫描结果选择阻断应用部署,可有效降低生产环境漏洞风险。 容器安全面临的风险有:镜像风险、镜像仓库风险、编排工具风险,小德今天就跟大家聊一聊镜像风险中的镜像扫描。 镜像扫描是什么? 镜像扫描就是遍历所有镜像中的文件系统,逐个检查软件包(Package)是否包含安全漏洞。例如,假设定义了“高”的阀值,如果发现某镜像内含有危险程度为“高”的安全漏洞,将拒绝所有对该镜像的拉取请求。 伴随着容器的流行,它也成为黑客攻击的对象,容器安全受到重视。在容器安全方面,镜像安全是保护容器安全的基础,镜像扫描是解决镜像安全问题的基础手段。针对镜像风险问题,有效提升镜像扫描能力是关键。 保持容器镜像安全的两个方案方案1:在镜像注册表中定期扫描通过这种方式,我们需要为镜像注册表添加一个安全扫描程序,扫描程序可以是一个定时任务(Cron Job) 作业,也可以是由特定的人触发的可执行操作。

    1.3K10编辑于 2024-04-27
  • 来自专栏云原生研究

    JDK 8 & tomcat 镜像准备

    Docker hub 上没有现成的官方 Oracle JDK 8, 所以自己准备一个吧。 准备 dockerfile 首先去 oracle 官网手动下载 oracle jdk8 的目标镜像。 测试镜像 运行一下镜像里面的命令并删除 docker run --rm 127.0.0.1:1080/base/jdk:8u251 java -version docker run --rm 127.0.0.1 :1080/base/jdk:8u251 javac -version 推送镜像 直接推送到线上私有库 docker push 127.0.0.1:1080/base/jdk:8u251 使用 在业务应用中 FROM 127.0.0.1:1080/base/jdk:8u251 # ... tomcat 镜像 许多企业在虚拟机上运行 tomcat 也是修改过的,并进行了调优,并自己编写了 启动和 停止脚本。 下面是一个 tomcat 打包的示例,将 tomcat 直接拷贝到镜像中。

    3.4K107发布于 2020-06-04
  • 来自专栏姚红专栏

    k8s-记一次安全软件导致镜像加载失败

    使用的是root用户进行加载的镜像,为啥不能进行加载? 查看系统为centos7.6,内核为x86,一般只可能在arm64或者mips64el的cpu出现不同系统下镜像不兼容的情况,x86系统真没遇到过,于是怀疑是镜像包是否存在问题。 但将镜像包拷贝到本地其他x86系统中能够顺利加载, 于是怀疑两点问题: 1.root权限被管控 2.存在安全软件限制 经过查看root权限未发现问题,但ps -ef查看进程时发现了两个名为gov_defence 且被kill掉瞬间镜像无法加载成功。 2.mv相关部署目录发现被权限管控,无法移走。 3.stop两个进程相关服务后,镜像无法加载成功。 之前遇到过安全软件导致k8s 网络异常等使用问题,列举如下: 1.ds_agent 2.qaxsafed # 奇安信,查下 qax 看看有没有其他的 3.secdog # 也查下 dog 和 sec 4

    1.3K20发布于 2021-06-22
  • 来自专栏JFrog杰蛙DevOps

    你的镜像安全吗?

    但是,我们还是需要采取专门针对Docker部署的安全措施。因此,以下列出了确保容器平台上托管的应用程序安全的三个基本步骤。 让我们从最重要的开始。 1. 但是,此方法无法解决映像本身的潜在安全缺陷。因此,最好在Dockerfile中指定一个非root用户,以便您的容器始终安全运行。 私有注册中心可以让您获得更完善的镜像的管理方式,并且通常提供更高级的功能,可以帮助确保库存安全。 例如: l 复杂的镜像扫描工具,用于识别威胁和未修补的漏洞。 相比之下,诸如Docker Hub之类的公共注册表一般仅提供基本服务-您必须信任镜像发布者,而镜像发布者可能未遵循相同的高安全标准。 /app"] 验证镜像完整性 改善容器安全状况的另一种方法是在将镜像从Docker Hub中拉出之前进行验证。 Docker守护程序默认在不检查其完整性的情况下拉取Docker映像。

    2.6K20发布于 2021-01-08
  • 来自专栏张善友的专栏

    .NET 8 的openEuler 容器镜像

    目前.NET 8的容器镜像已经支持openEuler,以openEuler为基础镜像的应用镜像:dotnet-deps、dotnet-runtime 和 dotnet-aspnet。 基础镜像简介 这里存放着由openEuler官方提供的容器镜像,包含openEuler基础镜像、应用镜像。在这里,你可以参考对应镜像的介绍,部署你需要的镜像容器。 开源项目地址 openeuler-docker-images 基础镜像地址 repo.openeuler.org 应用镜像仓库 基础镜像以及应用镜像会上传到以下仓库 hub.docker.com quay.io

    54210编辑于 2024-05-06
  • 来自专栏CNCF

    Flux项目谈安全镜像来源

    关于 Flux 项目谈安全的博客系列的下一篇文章将介绍我们如何以及为什么要为 Flux CLI 及其所有控制器镜像使用签名,以及你可以在工作流中做些什么来验证镜像来源。 自 Flux 0.26 以来,我们的安全文档添加了以下内容: The Flux CLI and the controllers' images are signed using Sigstore[1] 我们很高兴向你介绍这一点,并鼓励你在工作流程中使用它,以使你的集群更加安全。但是,让我们把上面这一节所说的全部内容都分解一下。 为什么要在一开始就签署发布工件? 这只是我们为确保你们的安全而采取的又一项措施。 fluxcd/source-controller/pull/550/files [7]安装 cosign 工具: https://docs.sigstore.dev/cosign/installation [8]

    1.4K30编辑于 2022-03-28
  • 来自专栏全栈程序员必看

    CentOS8国内镜像下载地址

    目录 CentOS介绍 CentOS Linux 和 CentOS Stream 区别 镜像下载说明 CentOS介绍 CentOS 是基于 Red Hat Enterprise Linux (RHEL 镜像下载说明 清华CentOS8下载 历史版本下载 CentOS8官网下载 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/131251.html原文链接:https

    14K10编辑于 2022-07-01
  • 来自专栏summerking的专栏

    k8s使用本地镜像

    1s (x11 over 87s) kubelet, master Error: ErrImageNeverPull [root@master ~]# 解决方法: k8S 使用本地镜像一定记得在各节点都需要上传镜像!!!

    1.3K30编辑于 2022-10-27
  • 来自专栏后端云

    k8s-provision - 获取镜像

    k8s-provision - 获取镜像 fetch-images.sh #! /bin/bashset -euo pipefailfunction usage() { cat <<EOF Usage: $0 <k8s-cluster-dir> [source-image-list 用到了正则匹配image_regex是镜像名称格式,image_regex_w_double_quotes在image_regex基础加上了可以匹配双引号前后包裹的情况。主要是下面的三种镜像格式。 用了2次find,分别查找sh脚本的镜像和manifest yaml配置文件里的镜像。 -o只打印匹配的内容,可以去除镜像前的image,podman等信息。

    50820编辑于 2022-11-25
  • 来自专栏希里安

    8个步骤彻底清理Docker镜像

    docker镜像如此清理 在日常开发和维护工作中,Docker 镜像管理是一件既繁复又必要的工作。镜像积累如山,不仅占用宝贵的磁盘空间,还可能给我们的工作带来不便。 1.查看镜像并评估 首先,我们需要知道自己的“战场”: docker images -a -a 参数会列出所有镜像,包括中间层镜像。检查一下这些镜像,评估哪些是必要的,哪些是可以删除的。 2.删除指定镜像 对于不再需要的镜像,我们可以使用它们的 ID、仓库名或标签来删除: docker rmi [镜像ID或仓库名:标签] 3.批量删除无用镜像 清理所有悬挂(即无标签)镜像,这些通常是构建过程中留下的 : docker image prune 加上 -a 参数,可以删除所有未被容器引用的镜像: docker image prune -a 4.清理特定时间前的镜像 当我们需要清理一定时间之前的镜像时 xargs docker rmi 7.定时自动清理 利用 cron 定时任务,可以设定周期性清理工作: # 每天凌晨两点执行清理 0 2 * * * /path/to/your/script.sh 8.

    14.5K12编辑于 2023-11-27
  • 来自专栏开源部署

    Docker 的镜像并不安全

    后来,研究加密摘要系统的时候——Docker用这套系统来对镜像进行安全加固——我才有机会更深入的发现,逻辑上整个与镜像安全相关的部分具有一系列系统性问题。 要改进Docker镜像下载系统的安全问题,我认为应当有以下措施: 摒弃tarsum并且真正对镜像本身进行验证 出于安全原因tarsum应当被摒弃,同时,镜像在完整下载后、其他步骤开始前,就对镜像的加密签名进行验证 这个问题不仅仅是生态问题,还是一个终端用户的安全问题。针对第三方仓库的全方位、去中心化的安全模型既必须又迫切。我希望Docker公司在重新设计他们的安全模型和镜像认证系统时能采纳这一点。 结论 Docker用户应当意识到负责下载镜像的代码是非常不安全的。用户们应当只下载那些出处没有问题的镜像。 目前已有两个Docker安全发布有了回应。 参见2014-10-28 DGAB会议记录的第8页。

    1.4K20编辑于 2022-07-04
  • 来自专栏从零学习云计算

    openshiftorigin工作记录(8)——docker镜像垃圾回收

    https://blog.csdn.net/huqigang/article/details/79738961 镜像仓库垃圾回收 master节点上以集群管理员登录集群后执行: # oadm docker-registry-default.router.default.svc.cluster.local --certificate-authority=/etc/origin/master/registry.crt --confirm 上述指令只是示例demo,直接运行可能会造成备用镜像被删除等错误 ,具体指令配置请参考官方文档https://docs.openshift.org/3.6/admin_guide/pruning_resources.html 主机节点镜像垃圾回收 升级docker版本到 执行: # docker system prune -a 这个命令将清理整个系统,并且只会保留真正在使用的镜像,容器,数据卷以及网络。 使用这条命令会带来一些风险: 比如一些备用镜像(用于备份,回滚等)有时候需要用到,如果这些镜像被删除了,则运行容器时需要重新下载。

    82650发布于 2019-05-27
  • 来自专栏运维监控日志分析

    CentOS 8 停止服务,镜像已被官方移动

    随着 2021 年的落幕,CentOS Linux 8 的生命周期也走到了尽头,此后将不再获得安全和功能更新。 近期发现 CentOS 8 镜像已被官方移动,无法通过官方yum获取软件安装包; 国内镜像站 清华大学开源软件镜像站 https://mirror.tuna.tsinghua.edu.cn/ 腾讯云软件源 https://mirrors.cloud.tencent.com/ 腾讯云镜像源 下载腾讯云 Centos 8 yum 源 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos8_base.repo 目前看腾讯云的Centos 8 yum 源 目录没有发生改变 提供centos和centos-vault 目录都可以使用,后续可能会被合并成一个目录; 清华大学镜像源 官方提供镜像使用帮助如下: https://mirror.tuna.tsinghua.edu.cn/help/centos-vault/

    3.1K40编辑于 2022-03-14
  • 来自专栏小陈运维

    K8S 拉取私有仓库镜像

    K8S 拉取私有仓库镜像在使用Kubernetes(k8s)从私有仓库拉取镜像时,会出现无法拉去镜像的情况,私有仓库需要认证才能访问,如果Kubernetes无法通过认证,就会导致拉取失败,这时我们就需要手动创建私有仓库的登录信息 # 构建镜像docker build -t z.oiox.cn:18082/cby/cby:v1 .# 登录镜像仓库docker login z.oiox.cn:18082# 推送镜像到私有仓库docker : sha256:c3548211b8264f8bfa47a6727043a64f1791b82ac965a284a7ea187e971a95e2[root@ik-cby ~]# # 退出镜像仓库[root ~]# # 看到访问正常,已经可以访问刚才构建好的镜像[root@k8s-master01 ~]# curl 10.111.106.93这是一个私有仓库的镜像[root@k8s-master01 ~] # [root@k8s-master01 ~]# [root@k8s-master01 ~]# curl 192.168.1.31:30565这是一个私有仓库的镜像[root@k8s-master01

    82410编辑于 2024-11-30
  • 来自专栏Go语言指北

    拿捏docker+k8s系列--docker镜像

    镜像的生成: 从零构建一个镜像 下载使用别人构建的镜像 在现有的镜像上构建新的镜像 Docker 容器 容器就是镜像的运行实例。 Docker 镜像 镜像常用命令: images: 显示镜像列表 history: 显示镜像构建历史 commit: 从容器创建新镜像 build: 从Dockerfile构建镜像 tag: 给镜像打tag base 镜像 base 镜像: 不依赖其他镜像,从 scratch 构建 其他镜像可以以此为基础进行扩展 所以,base 镜像通常都是各linux 发行版的 docker 镜像。 这样就创建了一个新的镜像。 但是并不建议使用此方式构建镜像,原因是不可复用构建过程,且构建过程不直观,存在安全隐患。 ❞ 镜像缓存特性 Docker 会缓存已有镜像镜像层,构建新镜像时,如果某镜像层已经存在,就直接使用,无须重新创建。

    1.1K10编辑于 2022-05-24
  • 来自专栏小陈运维

    K8S 拉取私有仓库镜像

    K8S 拉取私有仓库镜像 在使用Kubernetes(k8s)从私有仓库拉取镜像时,会出现无法拉去镜像的情况,私有仓库需要认证才能访问,如果Kubernetes无法通过认证,就会导致拉取失败,这时我们就需要手动创建私有仓库的登录信息 ~]# # 查看pod已经报错拉去不到镜像 [root@k8s-master01 ~]# kubectl get pod NAME READY ~]# 更新服务yaml文件,添加引用创建的秘钥 # 查看依旧未成功拉去镜像 [root@k8s-master01 ~]# kubectl get pod NAME ~]# # 看到访问正常,已经可以访问刚才构建好的镜像 [root@k8s-master01 ~]# curl 10.111.106.93 这是一个私有仓库的镜像 [root@k8s-master01 ~]# [root@k8s-master01 ~]# [root@k8s-master01 ~]# curl 192.168.1.31:30565 这是一个私有仓库的镜像 [root@k8s-master01

    50210编辑于 2024-12-05
  • 来自专栏全栈程序员必看

    centos8安装rabbitmq_rabbitmq镜像集群

    --ram rabbit@node1 rabbitmqctl start_app rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}' # 配置镜像集群

    53420编辑于 2022-10-01
  • 来自专栏DevOps Boy

    k8s 应用镜像构建最佳实践

    构建之前我们需要先制定几个原则:镜像要足够小,确保Pod启动时不会长时间注册在拉取镜像步骤。镜像要包含一些常用工具,方便现网问题定位。各个业务的镜像应该尽量复用相同的基础镜像镜像要遵循单应用原则。 根据以上原则,我们简单分析一下,docker 镜像是分层的,既我们可以基于某个镜像构建其它镜像,利用这一特性我们可以构建一个全业务通用的基础镜像,然后各个业务在此基础之上构建各自的应用镜像。 0x01 分层构建镜像1.1 基础镜像构建首先我们来看一下业务通用基础镜像如何构建。 runtime 镜像或者基础镜像,便可以构建可以承载应用的镜像了。 或者如果 k8s 对 Pod 发生了调度,Pod 调度到了一个没有此镜像的 Node,那 Node 势必要拉取镜像,这就导致了被调度的 Pod 和其它 Pod 运行版本不同的问题。

    1.7K30编辑于 2023-11-23
领券