首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    docker实战入门(3)基本概念

    docker的镜像是一个层叠的只读文件系统,最底端是一个引导文件系统(bootfs),这很像典型的linux的引导文件系统,docker用户几乎永远不会和引导文件系统有交互,实际上当一个容器启动后将会被移动到内存中,而引导文件系统将会被卸载。而docker镜像的第二层是root文件系统(rootfs),root文件系统可以是一种或者多种操作系统,比如ubuntu或者centos,在传统的文件系统中,root文件系统会最先以只读的方式加载,当引导结束并完成完整性检查之后它才会被切换到读写模式。但是在docker中,rootfs永远是只读状态。 并且docker利用联合加载技术(union mount)又会在rootfs之上加载更多的只读文件系统。联合加载指的是一次同时加载多个文件系统,但是在外面看起来只能看到一个文件系统,联合加载会将各层文件系统叠加在一起,这样最终的文件系统会包含所有的底层文件和目录,docker将这样的文件系统称为镜像。

    010

    Linux安全问答(3)

    1、如何启用linux下的***检测系统LIDS?    首先, 要想使LIDS设置的ACLS发挥作用,应在系统引导时把LIDS封装进内核中。这样每次系统启动到最后阶段,此设置会根据你的系统上的/etc/lids/lids.cap文件中的内容来设置全局功能,此文件中保存的是你设置ACLS。设置封装内核,在你的/etc/rc.d/rc.local文件的未尾加入如下内容:  /sbin/lidsadm –I lidsadm -S -- +RELOAD_CONF 特别要注意的是,在对LIDS做了任何修改后,都应使用上述命令重新更新LIDS的配置文件,它将重新加载下列配置文件: /etc/lids/lids.conf #ACLS配置文件 /etc/lids/lids.cap #LIDS capabilities(功能)配置文件 /etc/lids/lids.pw #LIDS密码文件 /etc/lids/lids.net # LIDS邮件警告配置文件 然后重新启动系统服务使应用改变生效。 使用如下命令打开一个LIDS终端会话: # lidsadm -S -- -LIDS 在完成对文件或数据的修改后,你应通过如下命令重新启用LIDS: # lidsadm -S -- +LIDS 2、保护文件为只读。 # lidsconf -A -o /some/file -j READONLY 此命令保证一旦LIDS启用,任何人都不能修改或删除此文件。如果你在lids自由会话终端方式下,你就可以修改/some/file指定的文件,只要此分区不是挂载为只读方式。应用时用实际的文件路径代替/some/file。 3、保护一个目录为只读。 # lidsconf -A -o /some/directory -j READONLY 此命令用保证一旦LIDS启用,任何人都不能列出或删除此目录及其中的内容。如果你在自由会话终端方式下,你就可以修改/some/directory目录,只要分区不是挂载为只读方式。例如,你可以设置保护/etc/目录为只读方式: lidsconf -A -o /etc -j READONLY 这里要告别注意的是:当你设定/etc目录为只读后,当你想挂载文件系统时,你应该删除/etc/mtab文件,然后使用它的一个符号连接/proc/mounts。同时,你必须修改你的初始化脚本,使用“-n”选项来设置任何mount和umount命令。这个选项告诉mount和umount不更新/etc/mtab文件。例如,你发现在你的初始化脚本中有一行:mount -av -t nonfs,nproc,应把它改为:mount -av -n -t nonfs,nproc。 4、隐藏任何人都看不到的文件或目录。 # lidsconf -A -o /some/file_or_directory -j DENY 此设置将使用任何人甚至root用户都不能访问它,如果是一个目录,那么此目录下的文件、目录都将隐藏,文件系统也一样。 5、指定某些特定的程序以只读方式访问一些非常敏感的文件。 比如在系统登录时要访问/etc/shadow文件,我可以指定某些程序能在系统认证时使用它,如login、ssh、su和vlock。例如,你可以只允许login以只读方式访问/etc/shadow文件: # lidsconf -A -s /bin/login -o /etc/shadow -j READONLY 6、以根用户身份启动一个服务在指定的端口上运行。 服务运行在指定的端口(1024以下)上需要CAP_NET_BIND_SERVICE功能。如果你禁止了此功能在/etc/lids/lids.cap文件中,你就不能以根用户身份启动任何一个服务运行在指定的端口上。你可以授与某个程序有此功能: # lidsconf -A -s /usr/local/bin/apache -o CAP_NET_BIND_SERVICE 80 -J GRANT 或者在LIDS_GLOBAL被禁止时启用此服务。 7、在LIDS启用时,保证X Windows系统能工作。 X server必须使用CAP_SYS_RAWIO功能才能在LIDS启用时工作。  # lidsconf -A -s /path/to /your/x-server -o CAP_SYS_RAWIO -j GRANT 8、启用ssh和scp。 缺省状态下,ssh和scp通过指定的端口创建远程连接,它需要CAP_NET_BIND_SERVICE功能,因此你可以授与CAP_NET_BIN_SERVICE功能给ssh:  # lidsconf -A -s /usr/bin/ssh -o CAP_NET_BIN_SERVICE 22 -J GRANT 9、设置限制访问时间

    02
    领券