标签: linux

如何处理 Docker 容器内的安全更新?

将应用程序部署到服务器上时,应用程序与其自身捆绑的内容与它期望从平台(操作系统和已安装的包)提供的内容之间通常存在分离。其中一点是平台可以独立于应用程序进行更新。例如,当需要将安全更新紧急应用于平台提供的包而不重建整个应用程序时,这很有用。

传统上,安全更新只是通过执行包管理器命令来在操作系统上安装更新版本的包(例如 RHEL 上的“yum update”)来应用的。但是随着容器技术的出现,比如 Docker,其中容器镜像本质上同时捆绑了应用程序平台,保持容器系统最新的规范方法是什么?主机和容器都有自己的、独立的、需要更新的包集,在主机上更新不会更新容器内的任何包。随着 RHEL 7 的发布,其中 Docker 容器特别突出,听到 Redhat 推荐的处理容器安全更新的方法是很有趣的。

关于几个选项的想法:

  • 让包管理器更新主机上的包不会更新容器内的包。
  • 必须重新生成所有容器镜像来应用更新似乎打破了应用程序和平台之间的分离(更新平台需要访问生成 Docker 镜像的应用程序构建过程)。
  • 在每个正在运行的容器中运行手动命令似乎很麻烦,并且下次从应用程序发布工件更新容器时,更改有被覆盖的风险。

所以这些方法似乎都不令人满意。

security linux redhat containers docker

135
推荐指数
2
解决办法
4万
查看次数

Unix 和类 Unix 系统上目录的含义

我已经使用 Linux 几年了,但我仍然没有弄清楚某些目录名称在 Unix 和类 Unix 系统上的起源或含义是什么。例如代表什么etcvar?哪里的opt名字从何而来?

无论如何,我们都在讨论这个话题。有人可以清楚地解释哪个目录最适合用于什么。我有时会困惑某些软件的安装位置或最合适的软件安装目录。

linux unix directory

134
推荐指数
5
解决办法
5万
查看次数

如何从 RHEL/CentOS shell 验证远程 Web 服务器是否支持 TLS 1.2?

我在 CentOS 5.9 上。

我想从 linux shell 确定远程 Web 服务器是否专门支持 TLS 1.2(而不是 TLS 1.0)。有没有简单的方法来检查?

我没有看到相关选项,openssl但也许我忽略了一些东西。

linux centos openssl tls

128
推荐指数
2
解决办法
36万
查看次数

在不使用缓存的情况下强制 dig 解析

我想知道是否有办法查询 DNS 服务器并绕过缓存(使用dig)。我经常更改 DNS 服务器上的区域,我想检查它是否从我的工作站正确解析。但是由于服务器缓存已解决的请求,我经常得到旧的。重新启动或加载服务器并不是一件好事。

domain-name-system linux dig

127
推荐指数
4
解决办法
15万
查看次数

如何使用 iptables 进行端口转发?

我希望在端口 8001 上进入 ppp0 的连接路由到端口 8080 上的 eth0 上的 192.168.1.200。

我有这两条规则

-A PREROUTING  -p tcp -m tcp --dport 8001 -j DNAT --to-destination 192.168.1.200:8080

-A FORWARD -m state -p tcp -d 192.168.1.200 --dport 8080 --state NEW,ESTABLISHED,RELATED -j ACCEPT
Run Code Online (Sandbox Code Playgroud)

它不起作用。我错过了什么?

linux iptables port-forwarding

126
推荐指数
5
解决办法
46万
查看次数

如何在 TIME_WAIT 中强​​行关闭套接字?

我在 linux 上运行一个特定的程序,它有时会崩溃。如果你在那之后快速打开它,它会像第一次那样监听套接字 49201 而不是 49200。netstat 显示 49200 处于 TIME_WAIT 状态。

是否有程序可以运行以立即强制该套接字退出 TIME_WAIT 状态?

networking linux unix tcp socket

125
推荐指数
5
解决办法
27万
查看次数

如何向 bash 脚本日志添加时间戳?

我有一个不断运行的脚本,我输出到日志文件:

script.sh >> /var/log/logfile
Run Code Online (Sandbox Code Playgroud)

我想在附加到日志的每一行之前添加一个时间戳。喜欢:

Sat Sep 10 21:33:06 UTC 2011 The server has booted up.  Hmmph.
Run Code Online (Sandbox Code Playgroud)

有什么柔术可以用吗?

linux shell bash logging

124
推荐指数
9
解决办法
35万
查看次数

使用crontab进行作业调度,那段时间电脑关机会怎样?

我使用 crontab 安排一些任务。

如果我的计算机在 cron 计划执行某些操作期间关闭或关闭,会发生什么情况?

每个错过的 cron 作业是否在计算机打开后运行,或者当天错过的作业是否被忽略?如果错过的作业没有恢复,是否有任何方法可以配置 cron,使其在重新打开计算机后运行错过的任务?

linux ubuntu cron

123
推荐指数
4
解决办法
7万
查看次数

清除所有 iptables 规则的最佳方法

我目前有这个片段:

# flush all chains
iptables -F
iptables -t nat -F
iptables -t mangle -F
# delete all chains
iptables -X
Run Code Online (Sandbox Code Playgroud)

运行此命令后,某些不可渗透的规则是否有可能继续存在?

这个想法是有一个完全干净的 iptables 配置,可以很容易地用新规则集替换(不用考虑路由/ifconfig 的参数)。

linux firewall iptables

122
推荐指数
2
解决办法
35万
查看次数

挂载 CIFS 主机已关闭

我之前配置的挂载点有问题。它显示文件夹,但安装丢失并保存“?” 大小、权限等的值。

所以我尝试使用 cifs 和之前的相同命令重新挂载:

mount -t cifs //nas.domain.local/share /mnt/archive
Run Code Online (Sandbox Code Playgroud)

但我收到错误:

Host is down.
Run Code Online (Sandbox Code Playgroud)

如果我 ping 域或 IP,我会得到正确的解析,并且我也使用 smbclient 进行连接,没有问题

 ping nas.domain.local
 ping ip
 smbclient //nas.domain.local/share
Run Code Online (Sandbox Code Playgroud)

我环顾四周,但找不到可靠的答案。有什么想法吗?

linux mount centos cifs

121
推荐指数
7
解决办法
24万
查看次数