考试试题答案

环境配置
要求:
X 是你的主机号
宿主机:foundationX.ilt.exam ple.com
虚拟机:
ser ver X.exam ple.com IP: 172.25.X.11/24
desktopX.exam ple.com
IP: 172.25.X.10/24
G AT EW AY: 172.25.X.254
DNS: 172.25.254.254
YUM 安装源:
http://content.exam ple.com /r hel7
SEL INUX 要求 enfor cing 模式
fir ew alld 防火墙启动

desktop环境脚本

[root@desktop42 mnt]# ls ##desktop初始化环境文件
system.sh
[root@desktop42 mnt]# cat system.sh
hostnamectl set-hostname desktop42.example.42  ##设置主机名
cat >/etc/sysconfig/network-scripts/ifcfg-eth0 <<EOF ##设置ip,子网掩码
DEVICE="eth0" 
BOOTROTO=none
ONBOOT=yes
IPADDR=172.25.42.10
PREFIX=24
EOF
cat >/etc/sysconfig/network <<EOF ##设置网关
GATEWAY=172.25.42.254
EOF
systemctl restart network ##重启网络使配置生效
systemctl enable firewalld
rm -fr /etc/yum.repos.d/* ##编辑yum源
cat /etc/yum.repos.d/westos.repo <<EOF 
[cn]
name=cn
gpgcheck=0
baseurl=http://172.25.254.69/cn
EOF
sed 's@disabled@enforcing@g' -i /etc/sysconfig /selinux ##设置selinux
reboot	##重启机器


在这里插入图片描述server环境脚本

[root@localhost mnt]# vim system.sh
[root@localhost mnt]# cat system.sh 

stnamectl set-hostname server42.example.42 
cat >/etc/sysconfig/network-scripts/ifcfg-eth0 <<EOF
DEVICE="eth0"
BOOTROTO=none
ONBOOT=yes
IPADDR=172.25.42.11
PREFIX=24
EOF
cat >/etc/sysconfig/network <<EOF
GATEWAY=172.25.42.254
EOF
systemctl restart network
systemctl enable firewalld
rm -fr /etc/yum.repos.d/*
cat /etc/yum.repos.d/westos.repo <<EOF
[cn]
name=cn
gpgcheck=0
baseurl=http://172.25.254.69/cn
EOF
sed 's@disabled@enforcing@g' -i /etc/sysconfig/selinux
reboot

1.进入系统单用户模式,修改 r oot 用户密码为 w estosexam ,并设置系统默认进入多用户模式

图形界面下系统默认就是多用户模式(修改密码时可以在系统启动时按e进入系统的启动选择界面然后设置新密码,也可以直接设置新密码)
在这里插入图片描述2. 在 ser ver X 上添加两块虚拟网卡,用以配置主备负载接口 team 0,并分配 ip地址为172.25.X.100/24

echo "waiting..."
nmcli connection add con-name team0 ifname team0 type team config '{"runner":{"name":"activebackup"}}' ip4 172.25.42.100/24  ##创建team0
nmcli connection add con-name eth2 ifname eth2 type team-slave master team0  ##添加eth2至team0
nmcli connection add con-name eth3 ifname eth3 type team-slave master team0  ##添加eth3至team0
echo "successful" 

在这里插入图片描述
在这里插入图片描述
3. 配置 iSC SI 服务:
a) 在 ser ver X 上安装服务端程序,设置开机自启,防火墙允许此服务
b) 在 vdb 磁 盘上 分一 个 1G 大 小的 L VM 分 区 ,用 以创 建逻 辑卷 组
iSC SI_vg 和一个 100M 大小的逻辑卷 disk1_lv
c)
使用 disk1_lv 作为 iSC SI 的后端存储名称为 ser ver X.disk1
d) 定义 IQ N 为 iqn.2015-01.com .exam ple:ser ver X
e)
设置 AC L 允许 initiator nam e 为 iqn.2018-01.com .exam ple:desktopX
的 客 户 端 可 以 连 接 , 设 置
AC L
允 许
initiator nam e 为
iqn.2018-01.com .exam ple:desktopX 的客户端可以连接
f)
desktopX 安装客户端程序,连接 ser ver X 的 iSC SI 目标资源到本地,用
以创建一个 xfs 文件系统,并开机自动挂载到/iscsidisk
server端

#!/bin/bash
yum install targetcli
systemctl start target
systemctl enable target
firewall-cmd --permanent --add-port=3260/tcp
firewall-cmd --reload

fdisk /dev/vdb <<EOF
n



+1G
t
8e
wq
EOF

pvcreate /dev/vdb1
vgcreate iSCSI_vg /dev/vdb1
lvcreate -L 100M -n disk_lv iSCSI_vg

targetcli <<EOF
/backstores/block create server42.disk1 /dev/iSCSI_vg/disk1_lv
iscsi/ create iqn.2015-01.com.example:server42
iscsi/iqn.2015-01.com.example:server42/tpg1/luns create /backstores/block/server42.disk1
iscsi/iqn.2015-01.com.example:server42/tpg1/acls create iqn.2018-01.com.example:desktop42
iscsi/iqn.2015-01.com.example:server42/tpg1/portals create 172.25.254.142 target
exit
EOF

在这里插入图片描述
在这里插入图片描述
客户端

yum install iscsi-initiator-untils.x86_64 -y
cat > /etc/iscsi/initiatorname.iscsi <<EOF
InitiatorName=iqn.2018-01.com.example:desktop42
EOF
systemctl restart iscsid
iscsiadm -m discovery -t st -p 172.25.42.11
iscsiadm -m node -T iqn.2015-01.com.example:server42 -p 172.25.42.11 -l
fdisk /dev/sda <<EOF
n



wq
EOF
mkfs.xfs /dev/sda1 -f
mkdir /iscsidisk
cat >>/etc/fstab <<EOF
`blkid | grep /dev/s|awk -F ' ' '{print$2}'` /iscsidisk xfs defaults,_netdev 0 0
EOF
mount -a

在这里插入图片描述
4.配置 NFS 服务
a) 在 ser ver X 上设置服务开机自启动,防火墙允许此服务
b) 在 ser ver X 上共享本地目录/nfsshar e,desktopX 可以读写访问此共享,
并且开机自动挂载到/m nt/nfsshar e 目录上
c)
在 sever x 上共享目录/autonfs,当 desktop 进入到/nfsauto/ser ver x 后自
动挂载 sever x 上共享目录/autonfs 到 desktop 上的/nfsauto/ser ver x 上
server端

#!/bin/bash
yum install nfs-utils -y
mkdir /nfsshare
cat > /etc/exports <<EOF
/nfsshare 172.25.42.0/24(rw,async)
EOF
exportfs -rv
systemctl start nfs-server
systemctl enable nfs-server
systemctl start firewalld
firewall-cmd --permanent --add-service mountd
firewall-cmd --permanent --add-service nfs
firewall-cmd --permanent --add-service rpc-bind
firewall-cmd --reload

chown nfsnobody /nfsshare
mkdir /autonfs
cat >> /etc/export <<EOF
/autofs 172.25.42.0/24(rw,async)
EOF
exportfs -rv

在这里插入图片描述
desktop 端

yum install nfs-utils -y
yum install autofs -y
mkdir /mnt/nfsshare
cat >>/etc/fstab<<EOF
172.25.42.11:/nfsshare /mnt/nfsshare nfs defaults 0 0
EOF

sed -i "/auto.misc/a/nfsauto /etc/auto.nfs" /etc/auto.master
cat > /etc/auto.nfs<<EOF
server42 -rw 172.25.42.11:/autonfs
EOF
mount -a
systemctl restart autofs
systemctl enable autofs
mount -a

查看挂载
在这里插入图片描述
5.配 SM B 服务:
a) 在 ser ver X 上配置 sm b 共享服务,要求开机自启,防火墙允许此服务
b) 创 建 共 享 目 录 为 /sm bshar e, 共 享 名 为
sm bshar e, 工 作 组 为
W EST O S,m ar keting 组成员可以读写此共享,不属于 m ar keting 组的人
只能读c)
创建 sam ba-only 用户 br ian 和 r ob,其中 br ian 用户属于 m ar keting
组,用户密码都是 w estos
d) 在 desktopX 上建立挂载点/m nt/m ultiuser 目录,开机自动挂载 ser ver X
上的 sm bshar e 共享,激活 sm b 多用户挂载支持。
server端

yum install samba samba-common samba-client -y
systemctl start smb
systemctl enable smb
firewall-cmd --permanent --add-service=samba
firewall-cmd --permanent --add-port=139/tcp
firewall-cmd --permanent --add-port=445/tcp
firewall-cmd --reload
mkdir /smbshare
cat > /etc/samba/smb.conf <<EOF
        workgroup = WESTOS
        [smbshare]
        comment = dir share
        path=/smbshare
        write list = +marketing
EOF
groupadd marketing
chgrp marketing /smbshare/
chmod 775 /smbshare/
semanage fcontext -a -t samba_share_t '/smbshare(/.*)'
restorecon -RvvF /smbshare/
useradd -s /sbin/nologin brain
useradd -s /sbin/nologin rob
usermod -g marketing brain
smbpasswd -a brain <<EOF
westos
westos
EOF
smbpasswd -a rob <<EOF
westos
westos
EOF
pdbedit -L
systemctl restart smb

server脚本执行结果
在这里插入图片描述
客户端查看脚本结果在这里插入图片描述
客户端

yum install samba-client.x86_64 cifs-utils.x86_64 -y
mkdir /mnt/multiuser
cat > /root/smbauth <<EOF
username=brain
password=westos
EOF
chmod 600 /root/smbauth
cifscreds add -u brain 172.25.254.142 <<EOF
westos
EOF
cat > /etc/fstab <<EOF
//172.25.254.142/smbshare /mnt/multiuser cifs defaults,credentials=/root/smbauth,sec=ntlmssp,multiuser 0 0
EOF
mount -a

在这里插入图片描述
6. 配置 M ar iadb 数据库服务:
a) 在 ser ver X 上安装 m ar iadb 数据库,开机自启动,防火墙允许此服务
b) 给 数 据 库 设 置 r oot 管 理 员 密 码 为 w estos, 限 制 r oot 用 户 只 能 从
localhost 登录,移除匿名用户,删除 test 库
c)
创建一个名为 r edhat 的库,并从备份文件中恢复数据到此数据库,备份
文件的位置在:
http://classr oom .exam ple.com /pub/m ater ials/m ar iadb/m ar iadb.dum p 。
d) 创建数据库用户 m ar y,对 r edhat 数据库具有查询、插入、更新、删除
权限,密码为 m ar y_passw d。 natasha 用户可以从 desktopX 上登录数据
库,对 r edhat 库拥有查询权限,密码为 natasha_passwd
服务端

yum install mariadb-server.x86_64 -y
systemctl start mariadb
systemctl enable mariadb
firewall-cmd --permanent --add-service=mysql
firewall-cmd --reload
mysql_secure_installation <<EOF


westos
westos
y
y
y
y
EOF
systemctl restart mariadb
mysql -uroot -pwestos <<EOF
use mysql;
delete from mysql.user where host='::1';
delete from mysql.user where host='127.0.0.1';
create database redhat;
create user mary@'localhost'identified by 'mary_passwd';
grant select,insert,update,drop on redhat.*to mary@localhost;
create user natasha@'%'identified by 'natasha_passwd';
grant select on  redhat.* to natasha@'%';
exit
EOF
mysql -uroot -pwestos redhat</mnt/cn.sql

服务安装及火墙配置
在这里插入图片描述
数据库初始化
在这里插入图片描述
数据库备份
在这里插入图片描述
sever端登陆
在这里插入图片描述
desktop端登陆
在这里插入图片描述
7.配置 w eb 服务:
a) 在 ser ver X 上安装 httpd 服务,要求开机自启动,防火墙允许此服务
b) 配置虚拟主机,监听_default_:80,默认发布目录在/var /w w w /htm l,日志位
置在 logs/default-vhost.log,日志格式为 com bined
c)
建立虚拟主机
w w w X.exam ple.com , 监 听 :80, 默 认 发 布 目 录 在
/sr v/w w w X.exam ple.com /w w w ,日志存储在 logs/w w w X.exam ple.com .log,
日志格式为 com bined。d) 建立虚拟主机 w ebappX.exam ple.com ,监听
443,
默认发布目录/sr v/w ebappX.exam ple.com /w w w ,
C A 机构证书的位置:
http://classr oom .exam ple.com /pub/exam ple-ca.cr t,
w ebappX 站点证书和私钥位置在:
http://classr oom .exam ple.com /pub/tls/cer ts/w ebappX.cr t
http://classr oom .exam ple.com /pub/tls/pr ivate/w ebappX.key
私钥的权限是 0600
在访问 w ebappX.exam ple.com 的 80 端口时,会被重定向到 443 端口
下载文件:
http://classr oom .exam ple.com /pub/m ater ials/w ebapp.cgi
并在访问域名 https://w ebappX.exam ple.com 时直接可以看到其运行结果
server端

yum install httpd
systemctl start httpd
systemctl enable httpd
firewall-cmd --permanent --add-service=http
firewall-cmd --reload

cat > /etc/httpd/conf.d/vhost.conf <<EOF
<VirtualHost _default_:80>
                DocumentRoot /var/www/html
                CustomLog "logs/default-vhost.log" combined
</VirtualHost>
EOF
cat > /var/www/html/index.html <<EOF
<h1>aini1wannian</h1>
EOF
systemctl restart httpd
cat > /etc/httpd/conf.d/www42.conf <<EOF
<VirtualHost *:80>
                ServerName www42.example.com
                DocumentRoot /srv/www42.example.com/www
                CustomLog "logs/www42.example.com.log" combined
</VirtualHost>
<Directory /srv/www42.example.com/www>
                Require all granted
</Directory>
EOF
mkdir /srv/www42.example.com/www -p
cd /srv/www42.example.com/www
cat > /srv/www42.example.com/www/index.html<<EOF
<h1>www.example.com</h1>
EOF
ls -Zd /var/www/html
semanage fcontext -a -t httpd_sys_content_t '/srv(/.*)?'
restorecon -RvvF /srv
systemctl restart httpd
yum install mod_ssl.x86_64 crypto-utils.x86_64 -y
firewall-cmd --permanebt
firewall-cmd --reload
wget http://classroom.example.com/pub/tls/certs/webapp15.crt
cd /etc/pki/tls/certs/
wget http://classroom.example.com/pub/tls/certs/webapp15.key
chmod 600 /etc/pki/tls/private/webapp15.key
chmod 600 /etc/pki/tls/private/webapp15.key
cat > /etc/httpd/conf.d/ssl.conf <<EOF
SSLCertificateFile /etc/pki/tls/certs/webapp42.crt
SSLcertificateKeyFile //etc/pki/tls/private/webapp15.key
EOF
cat > /etc/httpd/conf.d/webapp42.conf <<EOF
<VirtualHost *:443>
        ServerName webapp42.example.com
        DocumentRoot /srv/webapp42.example.com/www
        CustomLog "logs/webapp15.example.com.log" combined
        SSLEngine on
        SSLCertificateFile /etc/pki/tls/certs/webapp15.crt
        SSLCertificateKeyFile /etc/pki/tls/private/webapp42.key
</VirtualHost>
<VirtualHost *:80>
        ServerName webapp42.example.com
        RewriteEngine on
        RewriteRule ^(/.*)$ https://%{HTTP_HOST}$1 [redirect=30]
</VirtualHost>
EOF

sed -i 's#webopp.cgi#webopp.cgi index.html#g' /etc/httpd/conf/httpd.conf
mkdir /srv/webapp42.example.com/www -p
cat > /srv/webapp42.example.com/www/webopp.cgi <<EOF
#!/usr/bin/per1
print "Content-type: text/html\n\n";
print `date`;
EOF
chmod 755 /srv/webapp42.example.com/www/webopp.cgi
semanage fcontext -a -t httpd_sys_script_exec_t '/srv/webapp42.example.com(/.*)?'
systemctl restart httpd

脚本前两段运行结果
在这里插入图片描述
测试前先做本地解析
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

8.脚本编程要求如下:
a) 运行 scr ipt1.sh dog 输出结果为 cat
b) 运行 scr ipt1.sh cat 输出结果为 dog 除此以外都输出结果为 er r or

#!/bin/bash
[ -z "$1" ] && {
        echo "error"
        exit
}
[ "$1" = cat ] && {
        echo "dog"
        exit
}
[ "$1" = dog ] && {
        echo "cat"
}||{
        echo "error"
        exit
}

在这里插入图片描述9.建立用户脚本要求如下:
a) 如果系统存在用户 luck,并且使用/bin/bash,则输出 user ok
b) 如果系统村存在用户 luck,则输出 user exist
c)
如果系统不存在用户 luck,则运行 user add luck 命令来创建
d) 当在系统上运行命令 user cm d 时,将输出指令“echo hello;ls-l” 的结果,并
在重启后也生效。
脚本

#!/bin/bash
if [ -z $1 ]
then
{
echo "ERROR : please input userfile following script"
        exit
}
fi
username=`grep luck /etc/passwd | cut -d ":" -f 1`
bash=`grep luck /etc/passwd | cut -d ":" -f 7`
if [ ""$username" == "luck" -a "$bash" == "/bin/bash"" ]
then
{
        echo "user ok"

}
elif [ "$username" == "luck" ]
then
{
        echo "user exist"
}
elif [ "$username" != "luck" ]
then
{
        useradd luck &>/dev/null
}
fi
cat >/usr/bin/usercmd<<EOF
echo hello
ls -l
EOF
chmod 755 /usr/bin/usercmd

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值