RH413-RHEL6.4课程总结

RH413-RHEL6.4课程总结 Unit1 Tracking Security Updates 更新分以下三类 RHSA RHBA RHEA yum updateinfo list    查看所有更新 yum updateinfo list --cve=CVE-2013-0755查看某一更新 yum --security list updates    查看安全更新 yum updateinfo list | grep 'Critical'|cut -f1 -d''|sort -u|wc -l Unit2 Managing Software Updates rpm -qa >/root/pre-update-software.$(date +%Y%m%d)    把安装的所有的软件包导入到一个文件 yum updateinfo >/root/updateinfo-report.$(date +%Y%m%d) yum update --security -y    只更新安全的包,安装前gpgcheck=1要开启 yum update --cve=<CVE>    可以更新具体的 rpm --import <GPG-KEY-FILE>    导入安装包的key rpm -qa |grep gpg-pubkey    查看可信的GPG keys rpm -qi gpg-pubkey    查看安装包的详细信息 rpm -K    rpm package    查看安装包的md5值是不是正确 rpm -vvK rpm package    给出调试信息 rpm -qp --scripts rpm package    查看安装包有没有脚本运行 Unit3 Creating File Systems lvcreate -l 100%FREE -n lvname vgname    -l, --extents LogicalExtentsNumber[%{VG|PVS|FREE|ORIGIN}] cryptsetup luksFormat /dev/vgname/lvname    键入YES开始加密格式化,输入密码 cryptsetup luksOpen   /dev/vgname/lvname  luksname    打开并命名 mkfs -t ext4 /dev/mapper/luksname    设置文件系统 mkdir    /secret mount    /dev/mapper/luksname    /secret umout    /secret cryptsetup luksClose luksname    关闭加密 dd if=/dev/urandom of=/path/to/passsword/file bs=4096 count=1    加密文件也可以用明文 chmod    600 /path/to/password/file cryptsetup luksAddkey /dev/vdaN  /path/to/password/file        这里也需要输入密码 touch /etc/crypttab luksname  /dev/vgname/lvname     /path/to/password/file 在/etc/fstab添加如下 /dev/mapper/luksname    /secret     ext4  defaults 1 2    这样就可以开机自动挂载加密分区了 Unit4 Managing File Systems nosuid,noexec    命令没有suid权限和执行权限 tune2fs -l /dev/vd1 |head -n 19 tune2fs -l /dev/vda1 |grep 'mount options' tune2fs -o user_xattr,acl /dev/vda1    给分区添加acl权限,也可以修改/etc/fstab文件 lsattr    查看文件特殊属性 chattr    +、-    语法 a    只能追加 i    禁止修改 Unit5 Managing Special Permissions suid    setUID guid    setGID chmod u+s /path/to/procedure    所有人对程序有运行权限 chmod g+s /path/to/dir   文件夹下生成的文件的所属组不变 find /bin -perm /7000  查找/bin下所有特殊权限位 find /bin -perm  4000  精确查找 find /bin -perm -4000  setUID find /bin -perm -2000  setGID find /bin -perm -6000  setUID and setGID 还可以用/6000 Unit6 Managing Additional File Access Controls umask    查看umask值 getfacl somefile    查看文件ACLs(access control lists) setfacl -m u:bob:rwx /path/to/file    bob拥有所属者和所属组权限 setfacl -m d:u:smith:rx subdir    d默认u用户rx权限subdir子目录 setfacl -m o::r /pat/to/file    所有人可读 Unit7 Monitoring For File System Changes AIDE (Advanced Intrusion Detection Environment)高级***检测环境 它的主要功能是检测文档的完整性 yum install -y aide    使用aide监控文件的权限 grep PERMS /etc/aide.conf    添加要监控的文件 PERMS = p+i+u+g+acl+selinux    p权限,inode,u用户,g用户组 /etc    PERMS /root/\..* PERMS aide --init        初始化数据库 mv /var/lib/aide/aide.db.new.gz /var/aide/aide.db.gz aide --check    对上文文件进行更改,check核实 Unit8 Managing User Accounts chage -m 0 -M 90 -W 7 -I 14  username -m min days -M max days -W warn days -I inactive days chage -d 0 username 用户下次登录要修改密码 chage -l username  列出用户配置信息 userdel -r username    ***用户时同时***目录 grep PASS_M /etc/login.defs 可以在配置文件里修改, 对新添加用户生效 #       PASS_MAX_DAYS   Maximum number of days a password may be used. #       PASS_MIN_DAYS   Minimum number of days allowed between password changes. #       PASS_MIN_LEN    Minimum acceptable password length. PASS_MAX_DAYS   30 PASS_MIN_DAYS   3 PASS_MIN_LEN    8 getent passwd |cut -d: -f3 |sort -n |uniq -d 看看系统中有没有重复的账号 Unit9 Managing Pluggable Authentication Modules PAM    可插拔的认证模块,可以按需要动态的对验证的内容进行变更,所以可以大大提高验证的灵活性 1、认证管理(authentication management) 接受用户名和密码,进而对该用户的密码进行认证,并负责设置用户的一些秘密信息 2、帐户管理(account management) 检查帐户是否被允许登录系统,帐号是否已经过期,帐号的登录是否有时间段的限制等等 3、密码管理(password management) 主要是用来修改用户的密码 4、会话管理(session management) 主要是提供对会话的管理和记账(accounting) inux各个发行版中,PAM使用的验证模块一般存放在/lib/security/目录下,可以使用ls命令进行查看本计算机支持哪些 验证控制方式,一般的PAM模块名字例如pam_unix.so,模块可以随时在这个目录下添加和***,这不会直接影响程序运 行,具体的影响在PAM的配置目录下。 PAM的配置文件一般存放在/etc/pam.d/目录下。 查看某个程序是否支持PAM,使用命令: ldd `which cmd` | grep libpam  //cmd就代表查看的程序名 如果包含libpam库,那么该程序就支持PAM验证。 ldd `which login` |grep libpam               libpam.so.0 => /lib64/libpam.so.0 (0x000000326d200000)         libpam_misc.so.0 => /lib64/libpam_misc.so.0 (0x000000326b600000) /etc/pam.d Configuration File Syntax type control module [module arguments] grep maxlogins /etc/security/limits.conf    #<domain>      <type>  <item>         <value> #        - maxlogins - max number of logins for this user @student        -       maxlogins       4    配置用户同时最大登录次数 @qa        hard    cpu        1    配置cpu使用时间 限制用户密码错误输入次数 cat /etc/pam.d/system-auth    同样password-auth也要改 #%PAM-1.0 # This file is auto-generated. # User changes will be destroyed the next time authconfig is run. auth        required      pam_env.so auth        required      pam_tally2.so onerr=fail deny=3 unlock_time=180 3次错误禁止3分钟 auth        sufficient    pam_fprintd.so auth        sufficient    pam_unix.so nullok try_first_pass auth        requisite     pam_succeed_if.so uid >= 1000 quiet_success auth        required      pam_deny.so account     required      pam_tally2.so    还要注意放置的位置 account     required      pam_unix.so pam_tally2    查看用户 pam_tally2 --reset -u username    重置释放禁用用户 Unit10 Securing Console Access 加密方式不一样$6 sh256  $1 md5 grub-crypt Password: Retype password: $6$01wSV5m9GBdGdQ3J $oroEE6jjedQ59yQqJlxwAc1MBPSrdm6ufuUJil5rJaXmLgYNbsjz1F.kQlcrZYcrO5y9h014VkGCsH5PN7TTg. grub-md5-crypt Password: Retype password: $1$HqxBl1$DVC9jyW6HXZ8.vAlPo2QR1 cat /etc/grub.cfg password --encrypted $6$01wSV5m9GBdGdQ3J $oroEE6jjedQ59yQqJlxwAc1MBPSrdm6ufuUJil5rJaXmLgYNbsjz1F.kQlcrZYcrO5y9h014VkGCsH5PN7TTg. /etc/issue    认证前显示 /etc/motd  Message Of The Day and historically 认证后显示 /etc/ssh/sshd_config PermitRootLogin no 禁止root用户ssh登录 Unit11 Installing Central Authentication IdM(Identity Management) chkconfig NetworkManager off;service NetworkManager stop    关闭NetworkManager,否则ipa-server安装 不上 /etc/sysconfig/network-scripts/ifcfg-eth0    网卡配置静态IP,网关,DNS都要配置NM_CONTROLLED=no /etc/hosts    本机的做解析   ip   server.example.com    server yum -y install ipa-server ipa-server-install --idstart=2000 --idmax=20000  注意给uid加上一个区间 安装完成需要开启下列端口: TCP Ports: 80,443  HTTP/HTTPS 389,636 LDAP/LDAPS 88,464    kerberos UDP Ports: 88,464    kerberos 123    ntp 也可用命令行指定具体参数,这样就不需要在上面交互式指定 ipa-server-install --hostname=server.example.com -n example.com -r EXAMPLE.COM -p redhat123 -a redhat123 -U service sshd restart kinit admin        初始化,若是普通用户第一次要修改密码 ipa user-find admin    验证 剩下的添加用户,添加组,修改配置信息都可以在浏览器上操作https://server.example.com 登陆名admin 密码 redaht123 客户端安装如下: yum -y install ipa-client ipa-client-install --mkhomedir 注意要给新用户生成目录 安装的过程中要用admin redhat123认证一下 也可以用非交互式安装 ipa-client-install --domain=example.com --server=server.example.com --realm=EXAMPLE.COM -p admin -w redhat123 --mkhomedir -U 最后idm上的用户就可以在client上登陆了,登陆后自动生成家目录 Unit12 Managing Central Authentication kinit admin ipa pwpolicy-show 命令行查看策略 kpasswd bob  为用户修改密码 这些都可以在浏览器上操作,包括sudoers,用户能使用的命令等 Unit13 Configuring System Logging ryslog-gnutls安装后支持TLS port 6514 日志服务器分为服务端和客户端 服务端配置如下: /etc/rsyslog.conf    打开端口模块,支持TCP和UDP这里打开的是TCP # Provides UDP syslog reception #$ModLoad imudp #$UDPServerRun 514 # Provides TCP syslog reception $ModLoad imtcp $InputTCPServerRun 514 /etc/rsyslog.d/remote.conf    这个文件是在rsyslog.d目录下新建的 :fromhost,isequal,"client.example.com" /var/log/client/messages :fromhost,isequal,"client.example.com" ~    添加~后客户端的信息只保存在上面的文件中 客户端配置如下: /etc/rsyslog.conf 先注释所有日志发送端口,本地不保留 *.* @@(o)server.example.com:514        两个@是走TCP(o)是为后面的端口号用 logrotate日志分割工具 其实还有个logwatch工具,可以把服务器重要信息每天发送给指定邮箱 Unit14 Configuring System Auditing /etc/sysconfig/auditd /etc/audit/auditd.conf    默认端口号tcp 60 /etc/audit/audit.rules    man rules查看语法 remote logging with auditd  /etc/audisp/plugins.d/syslog.conf  setting active=yes 后并重启auditd服务 可以用syslog发送信息到远程服务器 安装audispd-plugins包后(每个客户端,这是多节点),可以开启/etc/audisp/plugins.d/au-remote.conf active=yes把审核日志发送到日志服务器 具体语法可以man auditctl /etc/audit/audit.rules -w  /path/to/file -p rwxa -k key -e 2 -w 指定审核文件路径 -p 访问权限  r读w写x执行a属性改变 -k key -e 设置enabled flag,可以是0,1,2 设置2后/etc下其他文件就不要加进来,有问题得重启 Unit15 Controlling Access to Network Services iptables 防火墙 iptables -L iptables -F iptables -X iptables -Z iptables -A INPUT -i lo -j ACCEPT    系统服务用 iptables -A INPUT -m state --stat ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -p icmp -j ACCEPT iptables -A INPUT -m state --state NEW -p tcp --dport 22 -s 192.168.0.0/24 -j ACCEPT iptables -A INPUT -m state --state NEW -p tcp --dport 80 -s 192.168.0.0/24 -j ACCEPT iptables -A INPUT -m state --state NEW -p tcp --dport 514 -s 192.168.0.0/24 -j ACCEPT iptables -A INPUT -s 192.168.0.0/24 -j ACCEPT iptables -A INPUT -j LOG iptables -A INPUT -j REJECT server iptables save    保存记录 cat /etc/sysconfig/iptables    默认保存位置 iptables -nvL --line-numbers    查看核查 另外一个比较有用的地方,用于PPTP服务器,拨号进入后上网问题-s网段是PPTP服务器自动分配的IP iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏木子墨的前端日常

ipconfig命令一览

前文用到了ipconfig /displaydns和ipconfig /flushdns,加上之前经常ipconfig查ip,今天看了一下别的命令,用的不多,仅...

2002
来自专栏北京马哥教育

Linux磁盘及文件系统管理

磁盘(Hard Disk Drive,简称HDD)是一种存储介质,传统的机械硬盘由一个或多个铝制或玻璃制的碟片组成,碟片外覆盖有铁磁性材料。 磁盘的物...

3253
来自专栏Netkiller

Apache Hbase 快速入门

本文节选自《Netkiller Database 手札》 ? 第 62 章 Apache Hbase 目录 62.1. 安装 Apache Hbase 62...

3586
来自专栏坚毅的PHP

hbase问题总结

 1 java.io.IOException: java.io.IOException: java.lang.IllegalArgumentException:...

5816
来自专栏运维

排查logstash2.4升级到5.0版本后kafka不兼容问题

之前对ELKB环境从2.4版本升级到最新的5.0稳定版本,主要升级步骤可以参考http://jerrymin.blog.51cto.com/3002256/18...

1381
来自专栏Aox Lei

安装sentry

Sentry 是一个开源的实时错误报告工具,支持 web 前后端、移动应用以及游戏,支持 Python、OC、Java、Go、Node、Django、RoR 等...

4003
来自专栏IT笔记

JavaWeb项目架构之Kafka分布式日志队列

架构、分布式、日志队列,标题自己都看着唬人,其实就是一个日志收集的功能,只不过中间加了一个Kafka做消息队列罢了。

77910
来自专栏醉生梦死

禁止root远程登录及修改ssh默认端口号

    提示输入密码,输入正确的密码后,一直提示输入,其实是禁止了root远程登录

3384
来自专栏散尽浮华

[原创]CI持续集成系统环境---部署gerrit环境完整记录

开发同事提议在线上部署一套gerrit代码审核环境,废话不多说,部署gerrit的操作记录如下: 提前安装好java环境,mysql环境,nginx环境 测试系...

3369
来自专栏友弟技术工作室

lvm

逻辑卷管理LVM是一个多才多艺的硬盘系统工具。无论在Linux或者其他类似的系统,都是非常的好用。传统分区使用固定大小分区,重新调整大小十分麻烦。但是,LVM可...

4047

扫码关注云+社区

领取腾讯云代金券