练习题

来源:互联网 发布:rs232转网络 编辑:程序博客网 时间:2024/04/28 01:03
    操作部分一、网络配置及环境准备,要求如下:(10分)1、IP地址(静态):10.1.1.x;网关:10.1.1.254;DNS:10.1.1.254  2、增加一条到192.168.1.0/24网段的路由,并可以ping通192.168.1.1 3、拒绝所有人ssh你的服务器,除了10.1.1.25410.1.1.1 4、配置好本地yum源   二、添加5个用户,用户harry,natasha,sarsh,要求harry,natasha用户的附加组为admin组,sarah用户的登陆shell为非交互式shell;用户test1(UID为2045,并属于组group1)、test2(UID为2046,并属于组group2),密码均为redhat. (5分)三、新建目录/shared/sysadmin/属于admin组,要求如下:(15分)1、该目录除了拥有者外其他人没有任何权限2、harry用户在该目录下创建dir1目录,natasha用户在harry用户新建的dir1目录里创建脚本文件test.sh,内容为:#!/bin/bashhostnameecho "My name is Hanmeimei"daaa3、该目录下所有的文件只能root和其创建者可以删除,其他人不能删除4、test1用户执行test.sh文件,并且标准输出和标准错误重定向到文件/tmp/test.log中5、test2用户对test.sh文件没有任何权限四、 配置计划任务(5分)1、让admin用户每天的14:23分,执行test.sh脚本 ,并邮件给admin。2、系统在周135的上午四点零二分去10.1.1.254上同步系统时间并邮件root五、将系统中所属用户和属组为sarsh的文件全部找出来,拷贝到/redhat/rhce目录中保存(5分)六、创建一个100M的交换分区,并开机自动生效,但不影响原有的swap分区。(2分)七、创建一个逻辑卷lv01,大小为100个PE,格式化为ext3,使用autofs自动挂载在/u01目录下,空闲1分钟自动卸载,属于名vg01卷组,PEsize为8M。(5分)八、由于业务需要,现需要将/u01目录扩大1G空间。(3分)九、将ftp服务的日志保存在/var/log/ftp.log,并将该日志文件和web服务的日志按照如下要求进行轮转(10分)1、保留5天的日志文件2、每天轮询一次3、以时间命名4、创建与原日志同名的新文件十、搭建FTP服务器要求如下(15分)1、匿名用户可以下载、上传文件到/ftp/data目录。2、本地用户只允许test1用户切换目录,并且不能登录操作系统;其他用户不允许切换。拒绝本地用户test2访问ftp,但是test2可以登录操作系统。3、拒绝10.1.1.0/24网段的所有人访问你的ftp除了10.1.1.2544、当访问192.168.1.x时,提供匿名下载功能,限速500kbps;当访问192.168.2.x时;提供本地用户zhangsan/123上传下载文件,并且只允许zhangsan访问ftp服务。十一、配置samba要求如下(10分) 1、工作组名为RHCE 2、认证类型为user 3、共享/samba/storage 目录,共享名称为share 4、该共享目录允许user1和user2用户有写权限其他用户均为只读,如果需要密码均为redhat十二、搭建web服务器要求如下(15分)1、访问http://192.168.1.x时能访问到你本地操作系统的/tmp目录2、访问http://www.zhangsan.com时访问到/web/virtual目录下的首页文件,从ftp下载3、只允许admin组里的成员通过用户名密码访问/web/virtal目录的首页文件4、web服务拒绝10.1.1.0/24网段除了10.1.1.25410.1.1.1主机十三、编写shell脚本批量创建user1~user30,30个用户。(20分)要求如下:1、所有用户的家都在/rhome下(如user1用户的家在/rhome/user1下)2、所有用户密码均为redhat3、user1~user15的 shell为/bin/bash;user16~user30的shell为/sbin/nologin用户的id为1001~1030(即user1的uid为1001,以此类推)十四、程序命令使用考核(20 分)说明:user.list和passwd.list文件使用env_cre_userlist.sh脚本创建,在ftp下载。    1、从文件 user.list 中取出已给定的用户名和用户组,将这些用户和组按规则添加到系统中,所有用户的密码已在passwd.list文件中给定,如果为空则密码为“uplooking”。    2、user.list 文件是由“空格”分开的两部分组成,第一部分为用户名,第二部分是由“逗号”分开的多列,为用户的候选组(附加组)。如果列表中的组不存在于系统中,请建立它。    3、user.list 类似zhangsan adminuser,dbuser,updatauserlisi dbuser,updatauserwanger updatauser,wheel十五、写一个脚本checkipadd.sh,判断所输入的参数是否为正确的IP地址,如果是就输出"This is ip address";如果不是就输出"This isn't ip address" (10分)测试如下输入值:192.168.0.19995.0.0.124.234.2345.1192.a1.123.01a2.1.1.001.1.1.1123 #!/bin/bashcheckip(){ read -p "input you ip:" ip echo $ip|grep "^[0-9]\{1,3\}\.\([0-9]\{1,3\}\.\)\{2\}[0-9]\{1,3\}$" > /dev/null  if [ $? -ne 0 ];then   echo "the ip is error"   exit fi a=`echo $ip|awk -F. '{print $1}'` b=`echo $ip|awk -F. '{print $2}'` c=`echo $ip|awk -F. '{print $3}'` d=`echo $ip|awk -F. '{print $4}'` for i in $a   do    if [ "$i" -le 0 ] || [ "$i" -ge 255 ];then       echo "the ip is error"        exit;    fi   done  echo "the ip is normal"}

答案

一、网络配置及环境准备,要求如下:(10分)1、IP地址(静态):10.1.1.x;网关:10.1.1.254;DNS:10.1.1.254#cd /etc/sysconfig/network-scripts/#vim ifcfg-eth0 DEVICE=eth0TYPE=EthernetONBOOT=yesBOOTPROTO=noneIPADDR=10.1.1.1NETMASK=255.255.255.0GATEWAY=10.1.1.254DNS=10.1.1.254  2、增加一条到192.168.1.0/24网段的路由,并可以ping通192.168.1.1 # route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0或者# route add -net 192.168.1.0/24 dev eth0# ping 192.168.1.1PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=0.846 ms3、拒绝所有人ssh你的服务器,除了10.1.1.25410.1.1.1 1> vim /etc/hosts.denysshd:ALL EXCPET 10.1.1.254 10.1.1.1或者2>托管给xinetd服务管理vim /etc/xinetd.d/sshservice ssh{  disable = no  server_arg = -i  ....  only_from = 10.1.1.254 10.1.1.1}4、配置好本地yum源   mkdir /yum拷贝ISO文件至/yum目录# cd /etc/yum.repos.d/#vim vim my_yum.repo[myfirstyum]name=my_test_yumbaseurl=file:///yumenabled=1gpgchek=0# yum clean all# yum makecache....Metadata Cache Created二、添加5个用户,用户harry,natasha,sarsh,要求harry,natasha用户的附加组为admin组,sarsh用户的登陆shell为非交互式shell;用户test1(UID为2045,并属于组group1)、test2(UID为2046,并属于组group2),密码均为redhat. (5分)groupadd admingroupadd group1groupadd group2useradd -G admin harryuseradd -G admin natashauseradd -s /sbin/nologin sarshuseradd -u 2045 -G group1 test1useradd -u 2046 -G group2 test2echo redhat|passwd --stdin harryecho redhat|passwd --stdin natashaecho redhat|passwd --stdin sarshecho redhat|passwd --stdin test1echo redhat|passwd --stdin test2三、新建目录/shared/sysadmin/属于admin组,要求如下:(15分)mkdir /shared/sysadmin -pchown :admin /shared/sysadmin1、该目录除了拥有者外其他人没有任何权限chmod 700 /shared/sysadmin2、harry用户在该目录下创建dir1目录,natasha用户在harry用户新建的dir1目录里创建脚本文件test.sh,内容为:#!/bin/bashhostnameecho "My name is Hanmeimei"daaachmod 770 /shared/sysadmin# su - harry$cd /shared/sysadmin$ mkdir dir1$ cd dir1[harry@vm1 dir1]$ pwd/shared/sysadmin/dir1$ exitcd /shared/sysadminchmod o+w dir1su - natasha$ cd /shared/sysadmin/dir1/$ vim test.sh$ lstest.sh$ cat test.sh#!/bin/bashhostnameecho "My name is Hanmeimei"daaa$exit3、该目录下所有的文件只能root和其创建者可以删除,其他人不能删除chmod 1777 /shared/sysadmin/dir14、test1用户执行test.sh文件,并且标准输出和标准错误重定向到文件/tmp/test.log中chmod u+x test.sh# setfacl -m u:test1:rwx test.sh#chmod o+rx ./sysadmin#chmod o+x  ./dir1#su - test1$ cd /shared/sysadmin/dir1$ ./test.sh &>/tmp/test.log$ cat /tmp/test.logvm1.uplook.comMy name is Hanmeimei./test.sh: line 4: daaa: command not found5、test2用户对test.sh文件没有任何权限chmod o-r test.sh# lltotal 8-rwxrwx---+ 1 natasha natasha 54 May  9 22:01 test.sh四、 配置计划任务(5分)1、让admin用户每天的14:23分,执行test.sh脚本 ,并邮件给admin。useradd -g xxx adminsu - admin23 14 * * * /shared/sysadmin/dir1/test.sh >/dev/null 2>&1 |mail adminvim /etc/cron.d/test23 14 * * * admin /shared/sysadmin/dir1/test.sh >/dev/null 2>&1 |mail admin2、系统在周135的上午四点零二分去10.1.1.254上同步系统时间并邮件rootcrontab -e2 4 * * 1,3,5 rdate -s 10.1.1.254|mail root2 4 * * 1,3,5 ntpdate 10.1.1.254|mail root五、将系统中所属用户和属组为sarsh的文件全部找出来,拷贝到/redhat/rhce目录中保存(5分)mkdir -p /redhat/rhcefind / -user sarsh -group sarsh -type f  -exec cp /redhat/rhce/ {} \;六、创建一个100M的交换分区,并开机自动生效,但不影响原有的swap分区。(2分)fdisk dd if=/dev/zero of=/swapfile bs=1M count=100mkswap /swapfileswapon /swapfilevim /etc/fstab/swapfile swap swap defaults 0 0七、创建一个逻辑卷lv01,大小为100个PE,格式化为ext3,使用autofs自动挂载在/u01目录下,空闲1分钟自动卸载,属于名vg01卷组,PEsize为8M。(5分)pvcreate /dev/sdb1 /dev/sdb2vgcreate -s 8M vg01 /dev/sdb1lvcreate -n lv01  -L 100  vg01 mkfs.ext3  /dev/vg01/lv01mkdir /u01vim autofs.master/- /etc/auto.test --timeout 60vim /etc/auto.test/u01  -fstype=ext3 :/dev/vg01/lv01service autofs restart八、由于业务需要,现需要将/u01目录扩大1G空间。(3分)vgs情况1:卷组空间不够vgextend vg01 /dev/sdb2lvextend -L +1G /dev/vg01/lv01resize2fs /dev/vg01/lv01情况2:卷组空间足够lvextend -L +1G /dev/vg01/lv01resize2fs /dev/vg01/lv01九、将ftp服务的日志保存在/var/log/ftp.log,并将该日志文件和web服务的日志按照如下要求进行轮转(10分)1、保留5天的日志文件2、每天轮询一次3、以时间命名4、创建与原日志同名的新文件参考答案:步骤:1、安装vsftpd软件,启动服务2、通过修改配置文件来指定日志文件的路径xferlog_enable=YES#xferlog_std_format=YES#dual_log_enable=YESvsftpd_log_file=/var/log/ftp.log#xferlog_file3、日志轮转# cat vsftpd /var/log/ftp.log {    # ftpd doesn't handle SIGHUP properly    daily    rotate 5    create    nocompress    missingok}/var/log/xferlog {    # ftpd doesn't handle SIGHUP properly    daily    rotate 5    create    nocompress    missingok}/var/log/httpd/*log {    daily    rotate 5    create    missingok    notifempty    sharedscripts    delaycompress    postrotate        /sbin/service httpd reload > /dev/null 2>/dev/null || true    endscript}十、搭建FTP服务器要求如下(15分)1、匿名用户可以下载、上传文件到/ftp/data目录。  3vim /etc/vsftpd/vsftpd.confanon_root=/ftp/dataanon_other_write_enable=YESanon_upload_enable=YESanon_mkdir_write_enable=YES2、本地用户只允许test1用户切换目录,并且不能登录操作系统;其他用户不允许切换。拒绝本地用户test2访问ftp,但是test2可以登录操作系统。  4usermod -s /sbin/nologin test1vim vsftpd.confchroot_list_enable=YESchroot_local_user=YESchroot_list_file=/etc/vsftpd/chroot_listecho test1 >> /etc/vsftpd/chroot_listecho test2 >> ftpusers3、拒绝10.1.1.0/24网段的所有人访问你的ftp除了10.1.1.254  3vim /etc/hosts.denyvsftpd:10.1.1.0/255.255.255.0 EXCPET 10.1.1.2544、当访问192.168.1.x时,提供匿名下载功能,限速500kbps;当访问192.168.2.x时;提供本地用户zhangsan/123上传下载文件,并且只允许zhangsan访问ftp服务。思路:1、配置多个ipifconfig eth0:1 192.168.1.1/24 dev eth0ifconfig eth0:2 10.1.1.1/24 dev eth02、创建2个不同的配置文件vim vsftpd1.conf...anon_max_rate=500000listen_address=10.1.1.1vim vsftpd2.conf...listen_address=192.168.1.1anonymous_enable=NOuserlist_deny=NOuseradd zhangsanecho zhangsan >>/etc/vsftpd/user_list3、测试验证service vsftpd restart十一、配置samba要求如下(10分) 1、工作组名为RHCE vim smb.confworkgroup = RHCE2、认证类型为user 3、共享/samba/storage 目录,共享名称为share [share]    comment =public user share    path = /samba/storage    public = yes|no    write list = user1,user2        read only = yes4、该共享目录允许user1和user2用户有写权限其他用户均为只读,如果需要密码均为redhatsmbpasswd -a user1smbpasswd -a user2十二、搭建web服务器要求如下(15分)1、访问http://192.168.1.x时能访问到你本地操作系统的/tmp目录ln -s /tmp /var/www/html/tmpvim /etc/httpd/conf/httpd.confAlias /tmp "/tmp"<Directory /tmp>xxx</Directory>2、访问http://www.zhangsan.com时访问到/web/virtual目录下的首页文件,从ftp下载思路:1>搭建DNS服务器2>定义基于域名的虚拟主机NameVirtualHost *:80<VirtualHost *:80>    ServerAdmin webmaster@dummy-host.example.com    DocumentRoot /web/virtual    ServerName www.zhangsan.com    ErrorLog logs/dummy-host.example.com-error_log    CustomLog logs/dummy-host.example.com-access_log common</VirtualHost>mkdir /web/virtuallftp 10.1.1.254cd notes/ule_exam/lcd /web/virtualget index.htmlservice httpd restart3、只允许admin组里的成员通过用户名密码访问/web/virtal目录的首页文件<Directory /web/virtal>    Options FollowSymLinks Indexes    AllowOverride None    AuthType Basic    AuthName "input your username&password:"    AuthBasicProvider file    AuthGroupFile /etc/httpd/conf/groups    AuthUserFile /etc/httpd/conf/htpassword    Require group admin</Directory>vim /etc/httpd/conf/groupsadmin:user1 user2htpasswd -cmb /etc/httpd/conf/htpassword user1 123htpasswd -mb /etc/httpd/conf/htpassword user2 1234、web服务拒绝10.1.1.0/24网段除了10.1.1.25410.1.1.1主机Order deny,allowDeny from 10.1.1.0/24Allow from 10.1.1.254 10.1.1.1vim /etc/hosts.denyhttpd:10.1.1.0/255.255.255.0 EXCPET 10.1.1.254 10.1.1.1十三、编写shell脚本批量创建user1~user30,30个用户。(20分)要求如下:1、所有用户的家都在/rhome下(如user1用户的家在/rhome/user1下)2、所有用户密码均为redhat3、user1~user15的 shell为/bin/bash;user16~user30的shell为/sbin/nologin用户的id为1001~1030(即user1的uid为1001,以此类推)#!/bin/bashdir=/rhome[! -d $dir ] && mkdir /rhomefor (i=1,i++,i<=30) do u=$[1000+$i] if [ $i >15 ] ;then      useradd -s /sbin/nologin -u $u -d $dir/user$i user$i;   else     useradd -u $u -d $dir/user$i user$i;     fiecho redhat|passwd --stdin user$idone十四、程序命令使用考核(20 分)说明:user.list和passwd.list文件使用env_cre_userlist.sh脚本创建,在ftp下载。    1、从文件 user.list 中取出已给定的用户名和用户组,将这些用户和组按规则添加到系统中,所有用户的密码已在passwd.list文件中给定,如果为空则密码为“uplooking”。 2、user.list 文件是由“空格”分开的两部分组成,第一部分为用户名,第二部分是由“逗号”分开的多列,为用户的候选组(附加组)。如果列表中的组不存在于系统中,请建立它。    3、user.list 类似zhangsan adminuser,dbuser,updatauserlisi dbuser,updatauserwanger updatauser,wheelvim user.sh#!/bin/bashfor i in `cat user.list |cut -d' ' -f2|sed 's/,/\n/g'|sort -u` do   groupadd $i donewhile read u_user u_group u_dirdo  u_home=$(dirname $u_dir)  mkdir -p u_home  useradd -G $u_group -d $u_home/$u_user $u_userdone < ./user.listwhile read u_user u_passdo if [ -z $pass ];then   echo uplooking |passwd --stdin $u_user else   echo $u_pass |passwd --stdin $u_userfidone < ./passwd.list
0 0
原创粉丝点击