1、RHCSA 部分关于密码破解,在上午的考试中需要我们自己安装图形化界面和破解 root 密码,root 的密码按照题目的要求来进行修改。可以使用单用户模式或者使用上课讲的 re.break 都可以。re.break 方法:删除 console=ttys0,115200n8 这句话 在最后加入 rd.break进入交换模式以后输入下列指令:mount -o remount,rw /sysrootchroot /sysrootpasswd 密码touch /.autorelabelexitrebootinit 方法估计在考试的虚拟机中无法使用,可能是我的打开方式不对吧。图形化界面安装:考试的时候可
2、能需要自己安装图形化界面,如果在 startx 无法启动图形化的情况下可以是下面的命令进行安装:yum y install xorg*yum y install gnome*yum y install glx*startx 后者 init 5密码修完完成,注意此处是修改的你考试用的虚拟机密码,而不是物理机密码。关于 IP 地址的设置,请查看考题的其他信息里面可以看到虚拟机应该设置的 IP地址信息,和主机名信息。hostnamectl set-hostname nmcli connection modify eno16777736 ipv4.method manualnmcli connecti
3、on modify eno16777736 ipv4.addresses 172.24.11.10/24 172.24.11.254nmcli connection modify eno16777736 ipv4.dns 172.24.11.250nmcli connection up eno16777736nmcli con show eno16777736 | grep ipv4host route -nIP 地址也可以使用 nm-connection-editor 图形化界面进行修改。修改完成以上信息以后就可以开始正式做题了。1. 配置 SELINUX 使其工作在 enforcing 模
4、式下解法:getenforce /查看模式setenforce 1 /设置为 enforcing 模式getenforce /查看vim /etc/selinux/config /永久修改selinux=enforcing:wq重启然后使用 sestatus 命令查看2. 为您的系统配置一个默认的软件仓库一个 YUM 源已经提供了在http:/ http:/ list 进行验证,能列出软件包信息就是正确的。Yum 配置不正确会导致后面一些题目做不出来。3. 调整逻辑卷的大小调整逻辑卷 vo 的大小,它的文件系统大小应该为 290M.确保这个文件系统的内容完整。注:分区很少能精确到和要求的大小相
5、同,因此在范围 270M到 320M 之间都是可以接受的解法加法df hTlvextend -L +100M /dev/vg0/volvscanxfs_growfs /home/ /home 为 LVM 挂载的目录 这步仅仅是在我们练习的环境中需要做,考试的时候是 EXT4 不需要此步骤。resize2fs /dev/vg0/vo /考试的时候用这条命令进行更新就可以了。df hT解法减法e2fsck f /dev/vg0/voumount /homeresize2fs /dev/vg0/vo 最终要求的分区容量 如 100Mlvreduce l 100M /dev/vg0/vomount /
6、dev/vg0/vo /homedf -hT4. 创建用户账号创建下面的用户、组和组成员关系名字为 adminuser 的组用户 natasha,使用 adminuser 作为附属组用户 harry,也使用 adminuser 作为附属组用户 sarah,在系统商不能访问可交互的 SHELL,且不是 adminuser 的成员,natasha,harry ,sarah 密码都是 redhat 解法:groupadd adminuseruseradd natasha G adminuseruseradd haryy G adminuseruseradd sarah s /sbin/nologin
7、passwd 用户名 /来修改密码id natasha /查看用户组5. 配置/var/tmp/fstab 的权限复制文件/etc/fstab 到/var/tmp/fstab配置/var/tmp/fstab 的权限如下:文件/var/tmp/fstab 所有者是 ROOT文件/var/tmp/fstab 属于 root 组文件/var/tmp/fstab 不能被任何用户执行用户 natasha 可读和可写/var/tmp/fstab用户 harry 不能读写/var/tmp/fstab所有其他用户(现在和将来的)具有读/var/tmp/fstab 的能力。解法:cp /etc/fstab /v
8、ar/tmp/ll /var/tmp/fstab 查看所有者setfacl m u:natasha:rw- /var/tmp/fstabsetfacl m u:haryy:- /var/tmp/fstab使用 getfacl /var/tmp/fstab 查看权限6. 配置一个 cron 任务用户 natasha 必须配置一个 cron job,当地时间每天 14:23 运行,执行:*/bin/echo hiya解法:crontab e u natasha23 14 * * * /bin/echo hiyacrontab l u natasha 查看7. 创建一个共享目录创建一个共享目录/ho
9、me/admins,使之具有下面的特性:/home/admins 所属组为 adminuser这个目录对组 adminuser 的成有具有可读、可写和可执行。在/home/ admins 创建的任何文件所属组自动设置为 adminuser。解法:mkdir /home/adminschgrp -R adminuser /home/adminschmod g+w /home/adminschmod g+s /home/admins8. 安装内核的升级从 http:/ 安装适合的内核更新。下面的要求必须满足:更新的内核作为系统启动的默认内核原来的内核在系统启动的时候依然有效和可引导解法:使用浏览器
10、打开题目给的网址,并下载内核文件,到根或者家目录。uname -r 查看当前内核版本rpm ivh kernel-*.rpmvi /boot/grub/grub.conf 查看9. 绑定到外部验证服务器系统 提供了一个 LDAP 的验证服务,你的系统应该接下面的要求绑定到这个服务:验证服务的基准 DN 是 dc=example,dc=comLDAP 用于提供账户信息和验证信息连接应用使用位子http:/ 的证书加密当正确的配置后,ldapuser1 可以登录你的系统,但是没有 HOME 目录,直到你完成 autofs 题目的 ldapuser1 的密码是 password解法:yum -y
11、install auth*system-config-authentication 将 user account database 修改为 ldap,根据题目要求填写 DN 和 LDAP SERVER,use TLS to encrypt connections 打钩,在 download ca 中写入http:/ metod 选择 ldap password。Id ldapuser1 查看有没有学习到用户注:这题中只要能学习到用户即可,用户密码不需要设置。10. 配置 NTP配置你的系统使它 的一个 NTP 用户解法:System-config-date 需安装Synchronize da
12、te and time over the network 打钩删除默认的 NTP server添加一个 NTP server 地址为:11. 配置 autofs配置 autofs 自动挂在 LDAP 用户的家目录,如下要求 使用 NFS 共享了 home 给你的系统。这个文件系统包含了预先配置 好的用户 ldapuserX 的 home 目录ldapuserX 的 home 目录是 /home/guests/ldapuserldapuserX 的 home 目录应该自动挂载到本地 /home/guests 下面的ldapuserXhome 目录必须对用户具有可写权限ldapuser1 的密码是
13、 password解法:yum install y autofsmkdir /home/rehomevi /etc/auto.master/home/rehome /etc/auto.ldap保存退出cp /etc/auto.misc /etc/auto.ldapvi /etc/auto.ldapldapuserX -fstype=nfs,rw :/home/guests/保存退出systemctl start autofssystemctl enable autofssu ldapuserX 测试如果以上写法在考试的时候无法创建文件或者命令提示符是-bash-4.2$这样的话可能存在多级目录
14、也需要将:/home/guests/的写法变为 :/home/guests/ldapuserX 就可以了。何为多级目录也就是题目给的/home/guests/ldapuserX 下面还有一个ldapuserX 的目录这个目录才是真正的目录。12. 配置一个用户账号创建一个用户 iar,uid 是 3400.这个用户的密码是 redhat解法:useradd u 3400 iarpasswd iar13. 添加一个 swap 分区为你的系统额外添加一个大小为 500M 的交换分区,这个交换分区在系统启动的时候应该能自动挂载。不要移除和修改你系统上现有的交换分区。解法:fdisk cu /dev/
15、vda 以扩展分区的方式来做,不要做主分区。partx a /dev/vdamkswap /dev/vdaxswapon /dev/vdaxswapon svi /etc/fstab/dev/vdax swap swap defaults 0 0mount -a14. 查找文件找到所有者是 iar 的文件,并把题目拷贝到/root/findresults 目录解法:useradd iar 可以使用 id iar 看是否有用户,有则不需要创建mkdir /root/findresults find / -user iar exec cp -rfp /root/findresults ;ls /r
16、oot/findresults 15. 查找一个字符串在/usr/share/dict/words 内找出所有包含字符串 seismic 的列,然后把这些列依照原来的次序拷贝到/root/lines.txt 内,在此档内不存在空行,所有的行必须是/usr/share/dict/words 中原有行的精确复制。解法:grep seismic /usr/share/dict/words /root/lines.txt16. 创建名为/root/backup.tar.bz2 的备份文件,其中包含/usr/local 的内容,tar 必须使用 bzip2 压缩。cd /usr/localtar jcv
17、f /root/backup.tar.bz2 *mkdir /testtar jxvf /root/backup.tar.bz2 C /test/ 解压看下类容是不是和/usr/local里面的一样如果题目要求使用 gzip 压缩就把-j 换成-z 即可17. 创建一个逻辑卷按照下面的要求创建一个新的逻辑卷逻辑卷的命名为 database,属于卷组的 datastore,且大小为 50 个 PE。在卷组 datastore 的逻辑卷每个扩展的大小为 16MB使用 ext3 格式化这个新的逻辑卷,此逻辑卷在系统启动的时候应该自动挂载到/mnt/database解法:fdisk cu /dev/v
18、da 创建一个 1G 的分区根据情况修改partx a /dev/vdapvcreate /dev/vdaxvgcreate datastore /dev/vdax s 16Mlvcreate l 50 n database datastoremkfs.ext3 /dev/datastore/databasemkdir /mnt/databasemount /dev/datastore/database /mnt/database/df Thvi /etc/fstab/dev/datastore /database /mnt/database/ ext3 defaults 0 0mount a
19、 重启检查所有题目要求。RHCE 部分 1. 配置 SELINUX修改 selinux 的状态为 Enforcing 模式使用 VIM /etc/selinux 解法:getenforce 查看当前 SELINUX 模式setenforce 1 将 selinux 临时这只为 enforcing 模式vim /etc/selinux/configSELINUX=enforcing:wqgetenforceenforcing2. 配置 SSH 访问按以下要求配置 SSH 访问:1.用户能够从域 内的客户端通过 SSH 远程访问您的两个虚拟机系统2.在域 my133t.org 内的客户端不能访问
20、您的两个虚拟机系统解法 1:修改/etc/hosts.allow 文件添加一行 sshd: 172.24.11.修改/etc/hosts.deny 文件添加一行 sshd: 172.25.0.两台都需要配置解法 2:添加防火墙策略firewall-cmd zone=block -add-source=172.25.11.0/24 -permanentfirewall-cmd reload 两台都需要配置3. 自定义用户环境:在系统 system1 和 system2 上创建自定义命名名为 qstat 此自定义命令将执行以下命令:/bin/ps Ao pid,tt,user,fname,rsz此
21、命令对系统中所有用户有效解法:vim /etc/bashrc /重启保持有效alias qstat=/bin/ps Ao pid,tt,user,fname,rsz:wqsource /etc/bashrcalias 看是否有 qstatqstat 执行两台都要做4. 配置端口转发在系统 system1 配置端口转发,要求如下:1. 在 172.24.11.0/24 网络中的系统,访问 system1 的本地端口 5423 将被转发到 802. 此设置必须永久有效解法:使用图形化界面进行配置在 CLI 中使用 firewall-config 开启图形化界面将 configuration:下拉菜
22、单调整为 permanent在 public 区域中的 port forward 中添加一个策略systemctl restart firewalld.service 重装载防火墙策略5. 配置链路聚合在 systeml. 和 system2. 之间按以下要求配置一个链路:1. 此链路使用接口 eth1 和 eth22. 此链路在一个借口失效时仍然能工作3. 此链路在 systeml 使用下面的地址 172.16.3.20/255.255.255.04. 此链路在 system2 使用下面的地址 172.16.3.25/255.255.255.05. 此链路在系统重启之后依然保持正常状态如
23、果不记得 name 如何写可以在 /var/share/doc/team-1.9/example_configs/查看例子。nmcli connection add con-name team0 type team ifname team0 config “runner“:“name“:“activebackup“ nmcli con modify team0 ipv4.addresses 172.16.11.25/24nmcli connection modify team0 ipv4.method manualnmcli connection add type team-slave con
24、-name team0-p1 ifname eth1 master team0nmcli connection add type team-slave con-name team0-p2 ifname eth2 master team0nmcli connection up team0nmcli con up team0-p1nmcli con up team0-p26. 配置 IPV6 地址在您的考试系统上配置接口 eth0 使用下列 IPV6 地址:1. system1 上的地址应该是 2003:acl8 :305/642. system2 上的地址应该是 2003:acl8 :30a/6
25、43. 两个系统必须能与网络 2003:acl8/64 内的系统通信4. 地址必须在重启后依然生效5. 两个系统必须保持当前的 IPV4 地址并能通信解法:nmcli con mod eth0 ipv6.addresses “2003:ac18:305/64”nmcli con mod eth0 ipv6.method manualsystemctl restart networknmcli con mod eth0 ipv6.addresses “2003:ac18:30a/64”nmcli con mod eth0 ipv6.method manualsystemctl restart n
26、etworkping6 2003:ac18:30a7. 配置本地邮件服务在系统 system1 和 system2 上配置邮件服务,满足以下要求:1.这些系统不接受外部发送来的邮件2.在这些系统上本地发送的任何邮件都会自动路由到3.从这些系统上发送的邮件显示来自于 4.您可以通过发送邮件到本地用户authur 来测试您的配置,系统5.已经配置把此用户的邮件转到下列 URL -e local_transport=err:XXvim /etc/postfix/main.cfrelayhost=postconf -e myorigin=systemctl restart postfixecho a
27、aa | mail -S hello dave在浏览器中打开 SMB 共享目录在 system1 上配置 SMB 服务您的 SMB 服务器必须是 STAFF 工作组一个成员共享 /common 目录共享名必须为 common只有 域内的客户端可以访问 common 共享common 必须是可以浏览的用户 andy 必须能够读取共享中的内容,需要需要的话,验证密码是 redhat解法:system1:yum -y install samba samba-clientfirewall-cmd -add-service=samba -permanentfirewall-cmd -add-serv
28、ice=mountd permanentsystemctl restart firewalldvim /etc/samba/smb.confworkgroup = STAFFcommonpath = /commonhosts allow = 172.24.11.browseable = yes:wqmkdir /commonchcon R t samba_share_t /common/smbpasswd -a andysystemctl start smbsystemctl enable sambasystem2:yum install y cifs-utils samba-client9.
29、 配置多用户 SMB 挂载在 systeml 共享通过 SMB 目录/devops 满足下列要求:1.共享名为 devops2.共享目录 devops 只能被 域中的客户端使用3.共享目录 devops 必须可以被浏览4.用户 silene 必须能以读的方式访问此共享,访问密码是 redhat5.用户 akira 必须能以读写的方式访问此共享,访问密码是 redhat6.此共享永久挂载在 system2. 上的/mnt/dev 用户,并使用用户 silene 作为认证任何用户可以通过用户 akira 来临时获取写的权限解法:system1:mkdir /devopschcon -R -t
30、samba_share_t /devops/chmod o+w /devops/vim /etc/samba/smb.confdevopspath = /devopshosts allow = 172.24.11.browseable = yeswritable = nowrite list = akira:wqsystemctl restart smbsmbpasswd -a silenesmbpasswd -a akirasystem2:mkdir /mnt/devsmbclient -L /system1/ -U silenevim /etc/fstab/system1/devops /
31、mnt/dev cifs defaults,multiuser,username=silene,password=redhat,sec=ntlmssp 0 0df hT测试:在 system2 上切换到 akira 用户,进入到/mnt/dev 下 查看文件su akiracd /mnt/devlscifscreds add system1touch 110. 配置 NFS 服务在 system1 配置 NFS 服务,要求如下:1.以只读的方式共享目录/public 同时只能被 域中的系统访问2.以读写的方式共享目录/protected 需要通过 Kerberos 安全加密,您可以使用下面
32、URL 提供的密钥http:/ 应该包含名为 project.拥有人为 deepak 的子目录4.用户 deepak 能以读写方式访问/protected/project解法:system1:vim /etc/exports/protected 172.24.11.0/24(rw,sync,sec=krb5p)/public 172.24.11.0/24(ro,sync)wget -O /etc/krb5.keytab http:/ /etc/sysconfig/nfsRPCNFSDARGS=“-V 4.2 “:wqsystemctl restart nfssystemctl start nf
33、s-secure-serversystemctl enable nfs-secure-serverexportfs rashowmount efirewall-cmd -add-service=nfs permanentfirewall-cmd -add-service=rpc-bind permanentfirewall-cmd -add-service=mountdpermanentsystemctl restart fiewalldmkdir -p /protected/projectchown deepak /protected/project/ll /protected/chcon
34、-R -t public_content_t /protected/project/11. 挂载一个 NFS 共享在 system2 上挂载一个 的 NFS 共享,并符合下列要求:1、/public 挂载在下面的目录上/mnt/nfsmount2、/protected 挂载在下面的目录上 /mnt/nfssecure 并使用安全的方式,密钥下载 URL 如下:http:/ deepak 能够在/mnt/nfssecure/project 上创建文件4、这些文件系统在系统启动时自动挂线解法:system2:showmount -e system1mkdir -p /mnt/nfsmountvi
35、m /etc/fstabsystem1:/public /mnt/nfsmount nfs defaults 0 0mount adf hmkdir /mnt/nfssecurewget -O /etc/krb5.keytab http:/ /etc/fstabsystem1:/protected /mnt/nfssecure nfs defaults,sec=krb5p,v4.2 0 0:wqmount -a12. 实现一个 web 服务器在 system1 上配置一个站点 http:/systeml. 然后执行下述步骤:1、 从 http:/rhgls. 下载文件,并且将文件重名为 i
36、ndex.html 不要修改此文件的内容3、 将文件 index.html 拷贝到您的 web 服务器的 DocumentRoot 目录下4、 来自于 域的客户端可以访问此 web 服务5、 来自于 my133t.org 域的客户端拒绝访问此 web 服务解法:yum groupinstall web* -ysystemctl start httpdsystemctl enable httpdvim /etc/httpd/conf/httpd.conf/ServerNameServerName :80systemctl restart httpdwget -O index.html http
37、:/ restart firewalld13. 配置安全 web 服务为站点 http:/ 配置 TLS 加密一个已签名证书从http:/ 获取 此证书的密钥从 http:/ 获取 此证书的签名授权信息从 http:/ 获取解法:documentroot /var/www/htmlservername documentroot /var/www/htmlservername SSLEngine onSSLCertificateFile /etc/pki/tls/certs/server1.crtSSLCertificateKeyFile /etc/pki/tls/private/server1
38、.keySSLCertificateChainFile /etc/pki/tls/certs/domain11.crtsystemctl restart httpdfirewall-cmd -add-service=https permanentsystemctl restart firewalld14:配置虚拟主机在 system1 上扩展您的 web 服务器,为站点http:/ 创建一个虚拟主机,然后执行下述步骤:1.设置 DocumentRoot 为/var/www/virtual2.从 http:/ index.html 不要对文件 index.html 中的内容做任何修改4.将文件
39、index.html 放到虚拟主机的 DocumentRoot 的目录下5.确保 andy 用户能够在/var/www/virtual 目录下创建文件注意:原始站点 http:/ 必须仍然能够访问,名称服务器 提供对主机名 的域名解析。解法:mkdir p /var/www/ virtualcd /var/www/ virtual wget O index.html http:/ /etc/httpd/conf/httpd.confdocumentroot /var/www/virtualservername setfacl -m u:andy:rwx /var/www/virtualsu
40、andytouch /var/www/virtual/11.html15. 配置 web 内容的访问在您的 system1 上的 web 服务器的 DocumentRoot 目录下 创建一个名为private 的目录,要求如下:1.从 http:/ 下载一个文件副本到这个目录,并且重命名为 index.html.2.不要对这个文件的内容做任何修改3.从 system1 上,任何人都可以浏览 private 的内容,但是从其它系统不能访问这个目录的内容解法:mkdir /var/www/virtual/privatemkdir /var/www/html/privatecd /var/www/v
41、irtual/privatewget -O index.html http:/ /var/www/html/privatewget -O index.html http:/ noneRequire all deniedRequire localAllowOverride noneRequire localRequire all denied16,实现动态 WEB 内容在 system1 上配置提供动态 web 内容,要求如下:1、 动态内容由名为 的虚拟主机提供2、 虚拟主机侦听在端口 89093、 从 http:/ 下载一个脚本,然后放在适当的位置,无论如何不要求修改此文件的内容4、 客户端访问 http:/ :8909/ 时,应该接收到动态生成的web 页面5、 此 http:/ :8909/ 必须能被 域内的所有系统访问解法:yum -y install mod_wsgivim /etc/httpd/conf/httpd.confListen 80Listen 8909servername WSGIScriptAlias / /var/www/html/webapp.wsgi /注意大小写cd /var/www/htmlwget http:/ restart firewalldsemanage port -a