RHCE 模拟题及答案

RHCE部分


一、 开启SELinux
 SELinux必须是Enforcing状态
[root@cracker ~]# setup

二、 搭建NFS服务
[root@cracker ~]# yum -y install nfs-utils
 共享出/data目录
 允许172.16.0.0/16读写方式访问
[root@cracker ~]# vi /etc/exports
/data     172.16.0.0/16(rw,async)
[root@cracker ~]# chkconfig nfs on
[root@cracker ~]# service nfs start

三、 搭建FTP服务
 匿名用户可以访问ftp
 student1和student2登录ftp后,只能在自己的家目录下
 student3不能登录ftp
 允许从example.com这个域来访问
 不允许从cracker.org来访问
[root@cracker ~]# yum -y install vsftpd
[root@cracker ~]# vim /etc/vsftpd/vsftpd.conf
 chroot_list_enable=YES
 chroot_list_file=/etc/vsftpd/chroot_list
[root@cracker ~]# echo 'student1' > /etc/vsftpd/chroot_list
[root@cracker ~]# echo 'student2' >> /etc/vsftpd/chroot_list
[root@cracker ~]# echo 'student3' >> /etc/vsftpd/ftpusers
[root@cracker ~]# getsebool -a | grep ftp
ftp_home_dir --> off
[root@cracker ~]# setsebool -P ftp_home_dir on
[root@cracker ~]# vim /etc/hosts. deny
 vsftpd:ALL
[root@cracker ~]# echo 'vsftpd:172.16.0.0/255.255.0.0' >> /etc/hosts.allow
[root@cracker ~]# whereis vsftpd
 vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
[root@cracker ~]# ldd /usr/sbin/vsftpd | grep libwrap.so
        libwrap.so.0 => /lib/libwrap.so.0 (0x00170000)

测试:分别用student1 student2 student3 student4 登录ftp并查看当前路径

四、 配置samba服务?
 共享出/yangbang目录
 只有172.16.0.0/16和192.168.1.0/24和127.0.0.1可以访问
 共享出的名字是[sharefile],默认可以查看到该共享
 只有student组才有写的权限
 student组成员的家目录也要被共享
 设置Netbios name=GUESTX
[root@cracker ~]# yum -y install samba
[root@cracker ~]# vim /etc/samba/smb.conf
  ;       passdb backend = tdbsam  //注释掉这行
  netbios name = GUEST2002   //去掉注释并改名
        [sharefile]
        comment = share file
        path = /yangbang
        browseable = no
        write list = @student
        hosts allow = 172.16.0.0/16 192.168.1.0/24 127.0.0.1
 [root@cracker ~]# service smb restart
[root@cracker ~]# chkconfig smb on
[root@cracker ~]# getsebool -a | grep samba
   samba_enable_home_dirs --> off
[root@cracker ~]# setsebool -P samba_enable_home_dirs on
[root@cracker ~]# chgrp student /yangbang/
[root@cracker ~]# chmod g+w /yangbang/
[root@cracker ~]# chcon -R -t samba_share_t /yangbang/
[root@cracker ~]# testparm   //测试samba的配置文件
[root@cracker ~]# smbclient //192.168.142.200/sharefile -U student       
  Password:
  Domain=[GUEST2002] OS=[Unix] Server=[Samba 3.0.33-3.14.el5]
smb: \> pwd
   Current directory is \\192.168.142.200\sharefile\

五、 搭建ssh服务
 puser用户不能远程登录
 不允许cracker.org这个域的访问
[root@cracker certs]# whereis sshd
 sshd: /usr/sbin/sshd /usr/share/man/man8/sshd.8.gz
[root@cracker certs]# ldd /usr/sbin/sshd | grep libwrap.so
    libwrap.so.0 => /lib/libwrap.so.0 (0x0096b000)
[root@cracker certs]# vim /etc/hosts.deny
 sshd,vsftpd:ALL
[root@cracker certs]# vim /etc/hosts.allow
 sshd:192.168.142.0/255.255.255.0 192.168.0.0/255.255.255.0
[root@cracker certs]# vim /etc/ssh/sshd_config
 //增加以下行
  DenyUsers puser
[root@masternis pub]# service sshd restart

六、 搭建web服务
 站点的名字:stationX.example.com
 从172.16.254.254:/var/ftp/pub目录下下载webdoc.gz,解压后,挂载到你的站点的的DocumentRoot下,就能看到一个index.html,不用修改index.html的内容
 保证能默认访问到该文件
[root@cracker ~]# vim /etc/httpd/conf/httpd.conf 
 NameVirtualHost 172.16.0.100
 <VirtualHost 172.16.0.100>
     ServerAdmin [email protected]
     DocumentRoot /var/www/html
     ServerName station100.example.com
     ErrorLog logs/station100.example.com-error_log
     CustomLog logs/station100.example.com-access_log common
 </VirtualHost>
[root@cracker ~]# mkdir /web
[root@cracker ~]# mount 192.168.0.254:/ftp/pub /mnt
[root@cracker ~]# cp /mnt/webdoc.gz /web
[root@cracker ~]# gunzip /web/webdoc.gz
[root@cracker ~]# file /webdoc
  Webdoc : linux rev 1.0 ext2 filesystem data
[root@cracker ~]# mount -o loop /web/webdoc /var/www/html
[root@cracker ~]# ls /var/www/html/
[root@cracker ~]# vim /etc/fstab
#加入下面一行
 /web/webdoc /var/www/html ext2  defaults,loop   0 0
[root@cracker ~]# restorecon -R /var/www/html/
[root@cracker ~]# Chcon -R -t httpd_sys_content_t /var/www/html/
[root@cracker ~]# ll -Z /var/www/html
[root@cracker ~]# vim /etc/hosts
  172.16.0.100    station100.example.com  station100   //加入该行

[root@cracker ~]# service httpd restart
[root@cracker ~]# chkconfig httpd on
……

七、 搭建sendmail服务
 要能接受从远程和本地发过来的邮件
 tudou这个用户要能接收到从远程发过来的邮件
 发给tudou,kevin必须也能收到
  [root@cracker ~]# yum -y install sendmail-cf
[root@cracker ~]# vim /etc/mail/sendmail.mc
   :set nu
   #去掉52 53行前面的注释dnl+空格
 TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
 define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
   :116               //跳转到116行
   :s/127.0.0.1/0.0.0.0   //替换127.0.0.1到0.0.0.0
[root@cracker ~]# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
[root@cracker ~]# vim /etc/mail/local-host-names
  example.com     //添加这一条本地域名,使之可以接受远程的邮件
[root@cracker ~]# service sendmail restart
[root@cracker ~]# service saslauthd start    //邮件发信认证
[root@cracker ~]# chkconfig saslauthd on
[root@cracker ~]# vim /etc/aliases
   //增加以下行
  todd:           todd,kevin,student1
[root@station37 ~]# newaliases    //更新aliases数据库
[root@cracker~]# telnet 172.16.0.100 25
 ehlo 172.16.0.100
[root@cracker~]# echo 'hello' | mail -s "test123" [email protected]
如果不成功 需检查/var/spool/mail下的标签属性
[root@cracker~]# restorecon  /var/spool/mail/ -R

本实验成功的前提:1.hostname要正确(hosts里面加入本机域名 network里面对应正确) 2.标签属性要正确 3。aliases数据库要更新

八、 搭建dovecot服务
 打开pop3s,pop3,imap,imaps功能,且要为dovecot生成private key和证书
 证书的内容要按照下面的要求生成
 设置Common Name为stationX.example.com,
 设置Email Address为[email protected]
[root@cracker ~]# yum -y install dovecot
[root@cracker ~]# chkconfig dovecot on
[root@cracker ~]# vim /etc/dovecot.conf
 :20 去掉该行注释
  protocols = imap imaps pop3 pop3s
 :39 去掉注释 监听所有
  listen = [*]
 :91 去掉注释
 :92 去掉注释
  ssl_cert_file = /etc/pki/dovecot/certs/dovecot.pem
  ssl_key_file = /etc/pki/dovecot/private/dovecot.pem
[root@cracker ~]# cd /etc/pki/tls/certs/
[root@cracker certs]# make dovecot.pem
  //必填主机名
common Name (eg,your name or your server’s hostname) [ ]: stastion200.example.com
[root@cracker certs]# cp dovecot.pem /etc/pki/dovecot/private/dovecot.pem
[root@cracker certs]# cp dovecot.pem /etc/pki/dovecot/certs/dovecot.pem
[root@cracker certs]# service dovecot restart
[root@cracker certs]# openssl
 OpenSSL> s_client -host 192.168.0.37 -port 995

九、 配置squid服务
 监听8080端口
 只允许example.com这个域可以使用你这个代理
 [root@cracker ~]# vim /etc/squid/squid.conf
  http_port 8080   // http_port 3120改
  acl allowdomain srcdomain .example.com //在acl CONNETC下面增加
  http_access allow localhost       //在此行下面增加
  http_access allow allowdomain
  http_access deny all
 [root@cracker ~]# chkconfig squid on
 [root@cracker ~]# service squid start

十、 设置iptables服务
 只允许example.com这个域的用户可以使用imaps和pop3s
 只允许 cracker.org这个域的用户可以用imap和pop3
[root@cracker ~]# iptables -F   //删除默认规则
[root@cracker ~]# iptables -A INPUT -p tcp -s ! 192.168.0.0/24 --dport imaps -j REJECT  //example.com
[root@cracker ~]# iptables -A INPUT -p tcp -s ! 192.168.0.0/24 --dport pop3s -j REJECT  //example.com
[root@cracker ~]# iptables -A INPUT -p tcp -s ! 192.168.1.0/24 --dport imap -j REJECT   //cracker.org
[root@cracker ~]# iptables -A INPUT -p tcp -s ! 192.168.1.0/24 --dport pop3 -j REJECT   //cracker.org
[root@cracker ~]# iptables -L -n   //检查规则
[root@cracker ~]# service iptables save   //保存规则
[root@cracker ~]# vim /etc/sysconfig/iptables

十一、 设置基于域名的虚拟主机
 主机名:wwwX.example.com
 DocumentRoot:/var/www/test
 从172.16.254.254:/var/ftp/pub/目录下下载www.html,保证能默认访问到此网页
[root@station100 ~]# mkdir /var/www/test
[root@station100 ~]# lftp 172.16.100.100
  lftp 172.16.100.100:/> cd pub/
  lftp 172.16.100.100:/pub>get www.html
  lftp 172.16.100.100:/pub> exit
[root@station100 ~]# mv www.html /var/www/test/index.html
[root@cracker ~]# restorecon -R /var/www/test/
[root@cracker ~]#vim /etc/httpd/httpd.conf
 <VirtualHost 172.16.0.100>
     ServerAdmin [email protected]
     DocumentRoot /var/www/test
     ServerName www100.example.com
     ErrorLog logs/www100.example.com-error_log
     CustomLog logs/www100.example.com-access_log common
 </VirtualHost>
[root@cracker ~]# vim /etc/hosts
  172.16.0.100    www100.example.com      www100   //加入该行
[root@cracker ~]#service httpd restart
[root@cracker ~]#chkconfig httpd on

十二、 编写shell脚本
 脚本位于/bin/目录下,名称:test.sh
 脚本有一个参数,利用脚本判定如下内容:
 #test.sh kernel
脚本输出:user
 #test.sh user
脚本输出:kernel
 #test.sh aaaa
脚本输出:error
 

本文出自 “相对于未来,我如此的恋旧” 博客,谢绝转载!

你可能感兴趣的:(linux,职场,休闲,rhce)