3个环境:原始 练习中 完成
5个步骤:看 抄 验 练 完成
3个流程: ssh firewall yum+vim systemctl
rhce:
system1 + system2
same: yum selinux ssh alias posix
diff: aggregated ipv6
inter:
system1:
smb共享目录
nfs 服务配置
iSCSI 服务配置
port 端口转发
web站点 加密 虚拟机 web内容访问 动态网站
shell 脚本(带参数运行和添加用户)
mysql 服务配置和sql查询
---------------------------------------
system2:
smb挂载目录
nfs 客户端共享
iSCSI 客户端挂载
1)通用操作
连接: ssh root@url -X or root@hostname -X
安装:
yum list xxx
yum whatprovides xx
yum install -y
whatprovides: */mkfs.vfat */smbpasswd */semanage
list: auth*
install:
vsftpd
authconfig-gtk.x86_64
nss-pam-ldapd
system-config-date
autofs -
bizp2
dosfstools-3.0.20-9.el7.x86_64
mailx
samba
samba-client-4.1.1-31.el7.x86_64
cifs-u*
groupinstall web*
mod_wsgi
policycoreutils-python-2.2.5-11.el7.x86_64target*
target*
firewall-config
iscsi*
mariadb-server mariadb
服务:
systemctl restart xxx
systemctl enable xxx
systemctl is-enabled xxx
restart: network autofs postfix smb nfs-server nfs-secure-server nfs-secure httpd firewalld
enable: autofs smb nfs-server nfs-server.service nfs-secure-server nfs-secure httpd target iscsid mariadb
is-enabled: nfs-server.service
防火墙:
firewall-cmd --add-service
firewall-cmd --add-rich-rule
add service: firewall-cmd --add-service=smtp --permanent
smtp samba mountd
add service name:
firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.122.0/24" service name="servername" accept' --permanent
servername tftp nfs rpc-bind mountd http https
port:
firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.122.0/24" forward-port to-port="80" protocol="tcp" port=5423' --permanent
firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.122.0/24" port port="8998" protocol="tcp" accept' --permanent
firewall-cmd --add-rich-rule 'rule family="ipv4" source address=192.168.122.200 port port="3260" protocol="tcp" accept' --permanent
配置:vim /etc/*
sysconfig:
vim /etc/sysconfig/nfs
vim /etc/sysconfig/network-scripts/ifconfig
vim /etc/sysconfig/network-scripts/ifcfg-eth0 1 2
vim /etc/sysconfig/newwork-scripts/ifcfg-team_test0
httpd:
vim /etc/httpd/conf/http.conf
vim /etc/httpd/conf.d/ssl.conf
vim /etc/httpd/conf.d/vhosts.conf
other:
vim /etc/selinux/config
vim /etc/yum.repos.d/aa.repo
vim /etc/postfix/main.cf
vim /etc/samba/smb.conf
vim /etc/ssh/sshd_config
vim /etc/iscsi/initiatorname.iscsi
vim /etc/auto.master
vim /etc/auto.misc
Vim /etc/auto.aa
vim /etc/hosts
vim /etc/hosts.allow
vim /etc/hosts.deny
vim /etc/fstab
vim /etc/exports
vim /etc/bashrc
vim /etc/groups
vim /root/script
vim /root/mkusers
界面操作:
ldap用户配置:authconfig-gtk &
ntp新增用户:system-config-date &
打开防火墙:LANG=C firewall-config
高频操作:
查看用户:id xxx
下载文件:wget -O local url
设置密码:echo redhat | passwd —stdin root
目录文件操作: mkdir chmod chown vim
分区操作: lsblk fdisk p n t 8e w partprobe mkfs.format
全部操作:
get/set+enforce
yum install
lvscan lvexnted xfs_grows resize2fs
groupadd useradd passwd
setfacl
crontab
chgrp chmod
uname rpm firefox
find
grep
tar
source
mandb man -k xxx
firewall-cmd
scp
nmcli
ping6
echo content | mail -s “title” author
chon pdbedit smbpasswd smbclient cifscreds exportfs
showmount mount df -hT
wget
semanage
vgcreate lvcreate mkswap swapon mkfs.vfat targetcli
iscsiadm
mysql:grant | set password | create select
变化要点:
source:
yum repo.url
kernel uname
ntp hostname
ipv6 address
mysql db
aggerate ip
web sec url
ssl crt key
postfix hostname url
vhost index.html
nfs krb5 server+client
ldap search+ssl
other:
配置网卡 ifcfg
iSCSI 磁盘名
共享目录和权限:smb
用户命令:alias
压缩格式:gzip bzip
查找和复制:grep
用户:uid
分区大小和格式:fdisk
文件所有者:chmod chown
轮询:crontab
逻辑卷路径:lv
家目录地址:autofs
重启验证:
-vim
/etc/passwd
-url
system1.rhce.cc my133t.org
https://system1.rhce.cc
curl -s system1.rhce.cc/secret/html | system1.rhce.cc/secret
dynamic.rhce.cc:8998
-operate
getenforce
yum install
su - user
crontab -l -u username
ls
uname -a
id ldapuser11
system-config-date &
cat /etc/passwd
ls -l /root/findresults/
cat /root/lines
qstat
ifconfig
ping ip
ping6 mac_address
echo content | mail -s ‘title’ author
./script shell
mysql grant | sql
smbclient -L //system1 -U andy%redhat
smbclient //system1/common -U andy%redhat
cifscreds add system1 -u silene
mount -a
df -hT
-----------------------------------------------------------------------------------------
考前说明:
上午rhcsa 下午rhce
邮箱和姓名保持一致
考官让点 继续/下一步 再点,不要自己点击
普通用户登录物理机,密码记录在草稿纸上头
ssh root@IP -X 有可视化操作界面管理虚拟机
他山之石:
rhcsa https://www.cnblogs.com/zhangjianghua/p/9564859.html
rhce https://www.cnblogs.com/despotic/p/11187802.html
No.1 rhcsa (lvscan,swap,lvcreate)
注意事项:
1.第3题 扩展文件系统大小
考试时用df -hT 查看vo的文件系统是什么
1.如果是xfs文件系统的话,扩展则用xfs_growfs
2.如果是ext4文件系统的话,则用resize2fs
2.第9题 LDAP那题,做好之后用root切换ldapuser11,不用考虑什么密码问题
su - ldapuser11,此事是没有家目录的
3.第11题 在/etc/auto.aa里,考试的时候不要忘记了vers=3选项
验证的时候用su - ldapuser11,记住要带-, 不要说你习惯不带 -
4.第17题也就是最后一题
题目要求使用ext3文件系统,命令是mkfs.ext3
如果考试要求使用fat文件系统,则用mkfs.vfat
重置station虚拟机中root用户密码(存疑,考试是否需要)
restart e 键
加入init=/bin/sh
ctr+x结束
mount -o remount,rw /
echo redhat | passwd --stdin root
touch /.autorelabel
exec /sbin/init/(会停顿一段时间,有进度轴)
systemctl isolate graphical.target(可切换图形界面 )
配置(需要参照考试需求)
hostnamectl set-hostname station.rhce.cc
cd /etc/sysconfig/network-scripts/
ifconfig
//配置网卡
vim ifcfg-eth0
DEVICE=eth0
NAME=eth0
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.122.100
NETMASK=255.255.255.0
GATEWAY=192.168.122.1
DNS1=192.168.122.10
systemctl restart network
ping staion.rhce.cc
物理机打开终端:
ssh [email protected] -X or ssh [email protected] -X
cd /etc/sysconfig/network-scripts/
cat ifcfg-eth0
二.答题
1.配置selinux enforcing
getenforce
setenforce 1
vim /etc/selinux/config
SELINUX = enforcing
验证:getenforce
2.安装yum 源
使用地址 ftp://server.rhce.cc/dvd 作为默认的源
cd /etc/yum.repos.d
vim aa.repo
[aa]
name=aa
baseurl=ftp://server.rhce.cc/dvd
enabled=1
gpgcheck=0
验证:yum install vsftpd -y
3.调整卷的大小
调整逻辑卷 vo 的大小,它的文件系统大小应该为 290M。确保这个文件系统 的内容仍然完整。注意: 分区很少能精确到和要求的大小相同,因此在范围 260M 到 320M 之间都是 可接受
lvscan
echo 290-192 | bc
lvextend -L + 98M /dev/vg0/vo (lvscan 结果)
xfs_growfs /dev/vg0/vo
验证:
lvscan
df -hT
说明:如果是ext4文件系统,使用这个命令做扩展 resize2fs /dev/mapper/vg0-vo
4.创建用户组关系
名字为 adminuser 的组
用户 natasha,使用 adminuser 作为附属组
用户 harry,也使用 adminuser 作为附属组
用户 sarah,在系统上不能访问可交互的 shell, 且不是 adminuser 的成员, natasha,harry,sarah 密码都是 redhat
groupadd adminuser
useradd -G adminuser natasha
useradd -G adminuser harry
useradd -s /sbin/nologin sarah
echo redhat | passwd --stdin natasha
echo redhat | passwd --stdin harry
echo redhat | passwd --stdin sarah
验证:
1、vim /etc/groups
搜索该用户名,n键翻页看
2、su - 该用户名
执行groups,会列出所有该用户所在组
3、groups 该用户名
查看某个组有哪些成员的方法
vim/etc/groups
搜索组名,看后面有哪些用户
5.配置权限
复制文件/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 /var/tmp/fstab
ls -l /var/tmp/fstab(-rw-rw-r--+ 1 root root 483 1月 17 11:08 /var/tmp/fstab)
setfacl -m u:natasha:rw- /var/tmp/fstab
setfacl -m u:harry:--- /var/tmp/fstab
验证:vim 就可以了
6.crontab 任务
用户 natasha 必须配置一个 cron job, 当地时间每天 14:23 运行,执行: /bin/echo hiya
crontab -e -u natasha
23 14 * * * /bin/echo hiya
验证:crontab -l -u natasha
7.创建目录,满足属性
创建一个目录/home/admins,使之具有下面的特性:
/home/admins 所属组为 adminuser
这个目录对组 adminuser 的成员具有可读、可写和可执行,但是不是对其他
任何用户。(root 可以访问系统上所有的文件和目录) 在/home/admins 下创建的任何文件所属组自动设置为 adminuser
mkdir /home/admins
ls -ld /home/admins
chgrp adminuser /home/admins
chmod g+w /home/admins
chmod g+s /home/admins
ls -ld /home/admins
chmod -o -rx /home/admins/
验证:
ls mkdir ..
8.内核升级
从 http://rhgls.rhce.cc/pub/updates 安装合适的内核更新。下面的要求必须满足: 更新的内核作为系统启动的默认内核 原来的内核在系统启动的时候仍然有效和可引导
firefox http://rhgls.rhce.cc/pub/updates &(右键点击 链接另存为,存储到root目录里)
ls
rpm -ivh kernel-3.10.0-229.el7.x86_64.rpm
验证:uname -r
9.ldap 服务配置
系统 host.rhce.cc 提供了一个 LDAP 验证服务,你的系统应该按下面的要求绑 定到这个服务:
验证服务的基准 DN 是 dc=rhce,dc=cc
LDAP 用于提供账户信息和验证信息连接应该使用位于 http://host.rhce.cc/pub/domain11.crt 的证书加密
当正确的配置后,ldapuser11 可以登录你的系统,但没有家目录 直到你完成 autofs 题目 ldapuser11 的密码是'redhat'
yum list auth*
yum install authconfig-gtk.x86_64 -y
yum install nss-pam-ldapd -y
界面操作:
authconfig-gtk &(打开通信化界面)
认证方法:ldap
认证密码:ldap
authconfig-gtk &(重新打开界面)
ldap 搜索基础 dc=rhce,dc=cc(DN按照考试需求)
ldap 服务器 host.rhce.cc
TLS处 打钩
选择下载证书,粘贴,http://host.rhce.cc/pub/domain11.crt
点击 应用
验证:id ldapuser11,并且无需关注密码
10.配置系统,新增用户
配置你的系统使它是 rhgls.rhce.cc 的一个 NTP 客户
yum install system-config-date
system-config-date &
打开后台界面,删除NTP服务器中的内容,重新配置NTP服务器
添加:rhgls.rhce.cc
验证:打开界面看看
11.配置autofs自动挂载ldap家目录
配置 autofs 自动挂载 LDAP 用户的家目录,如下要求: host.rhce.cc(192.168.122.10) 使用 NFS 共享了/home/guests 给你的系统。这个
文件系统包含了预先设置好的用户 ldapuser11 的家目录 ldapuser11 的家目录是 host.rhce.cc:/home/guests/ldapuser11
ldapuser11 的家目录应该自动挂载到本地/home/guests 下面的 /home/guests/ldapuser11
家目录必须对用户具有可写权限 ldapuser11 的密码是'redhat'
yum install autofs -
vim /etc/auto.master
/home/guests /etc/auto.aa(misc下头)
cp /etc/auto.misc /etc/auto.aa
vim /etc/auto.aa
ldapuser11 -fstype=nfs,rw,vers=3 host.rhce.cc:/home/guests/ldapuser11
systemctl restart autofs
systemctl enable autofs
验证:su - ldapuser11
说明:密码无需关注,留意ext3 ext4
12.创建用户和密码
创建一个用户 alex,uid 为 3400。这个用户的密码为 redhat。
useradd -u 3400 alex
echo redhat | passwd --stdin alex
验证: cat /etc/passwd
13.创建分区
为你的系统上额外添加一个大小为 512M 的交换分区,这个交换分区在系统 启动的时候应该能自动挂载。不要移除和更改你系统上现存的交换分区。
p 浏览 n创建 e编辑 w保存退出 回车(。。)
lsblk
1)创建物理分区:
fdisk /dev/vda
分别输入 p n e 和 回车键,把所有看空间都分配给它
2)创建逻辑分区:
p n 回车键 +512M p
t 回车键 82 p w
partprobe /dev/vda
mkswap /dev/vda5【格式化分区】
vim /etc/fstab
/dev/vda5 swap swap defaults 0 0
swapon -a
swapon -s
验证:df -hT
说明:如果创建512分区失败,原因是分区不连续造成的
14.找出所有者 rsa,拷贝到 /root/findresults
找出所有所有者是 ira 的文件,并把他们拷贝到/root/findresults 目录
mkdir /root/findresults
find / -user ira -exec cp -a {} /root/findresults/ \;(带一个空格)
验证:ls -l /root/findresults/
15.查找并复制对应的行
在/usr/share/dict/words 中找出所有包含 seismic 的行。复制所有这些行并按照 原来的顺序放在文件/root/lines 中。/root/lines 应该没有空白行,所有的行必须是 /usr/share/dict/words 中原有行的精确复制。
grep seismic /usr/share/dict/words > /root/lines
验证 cat /root/lines
16.创建bz2备份文件
创建名为/root/backup.tar.bz2 的备份文件,其中包含/usr/local 的内容,tar 必 须使用 bzip2 压缩
yum install bzip2
cd /usr/local/
tar jcvf /root/backup.bz2 *(bzip)
tar zcvf /root/backup.tar.gz * (gzip)
cd /root/
验证:ls
17.创建逻辑卷,文件系统各异
按照下面的要求创建一个新的逻辑卷:
逻辑卷命名为 database,属于卷组 datastore,且大小为 50 个扩展。
在卷组 datastore 的逻辑卷每个扩展的大小为 16MiB
使用 ext3 格式化这个新的逻辑卷.此逻辑卷在系统启动的时候应该能自动挂载到 /mnt/database。
lsblk
fdisk /dev/vda
p n enter +1G t enter 8e w
partprobe /dev/vda
pvcreate /dev/vda6
vgcreate -s 16 datastore /dev/vda6
lvcreate -l 50 -n database datastore
ext3格式化:
mkfs.
yum whatprovides */mkfs.vfat
yum install dosfstools-3.0.20-9.el7.x86_64 -y
mkfs.vfat /dev/datastore/database
说明:
unable to get drive geometry, using default 255/63并不是报错
不同文件系统语法改变:mkfs.vfat (xfs or ext3 ext4 ) /dev/datastore/database
mkdir /mnt/database
vim /etc/fstab
/dev/datastore/database /mnt/database vfat ( ext3 or ext4 or xfs) defaults 0 0
(lvscan ,复制粘贴也可)
验证:
mount -a
df -hT
No.2 rhce(smb nfs iscsi)
考前准备:
姓名和邮箱
用户名和邮箱上下午保持一致,否则没有成绩,密码可写在草稿纸上头
考试时候,通过管理软件进行管理,打开两个终端
配置yum源头
通过考试说明 安装yum源 见 rhcsa 【第2题】
yum 源地址: ftp://server.rhce.cc/dvd
创建完成后,拷贝到 system2 , scp aa.repo system2:/etc/yum.repos.d/
登录系统:
存疑:界面管理器
一台物理机中有两台虚拟机,system1 system2
ssh root@system1 -X
redhat
ssh root@system2 -X
redhat
1.配置selinux eforcing ,见rhcsa 【第1题】
SELinux 必须在两个系统 system1 和 system2 中运行于 Enforcing 模式
验证 :getenforce
2.配置ssh 访问
按以下要求配置 SSH 访问: 用户能够从域 rhce.cc 内的客户端通过 SSH 远程访问您的两个虚拟机系统 在域 my133t.org 内的客户端不能访问您的两个虚拟机系统
host rhce.cc 查看所属网段
vim /etc/hosts.allow
sshd : 192.168.122.0/255.255.255.0
vim /etc/hosts.deny
sshd : .my133.org
scp /etc/hosts.allow /etc/hosts.deny system2:/etc/
验证 system2 /etc/ 下的两个文件
验证:ssh [email protected] -X
3.自定义用户环境
在系统 system1 和 system2 上创建自定义命令名为 qstat 此自定义命令将执行以下命令:
此命令对系统中所有用户有效。
vim /etc/bashrc
alias qstat='/bin/ps -Ao pid,tt,user,fname,rsz'
source /etc/bashrc
验证 qstat,验证后再做另一个机器
4.配置端口转发
在系统 system1 配置端口转发, 要求如下: 在 192.168.122.0/24 网络中的系统, 访问 system1 的本地端口 5423 将被转发到 80 此设置必须永久有效
cd desktop
vim aa.txt
mandb
man -k firewall
man firewalld.richlanguage
/Exaple5 复制过来,粘贴到 rule 里去
firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.122.0/24" forward-port to-port="80" protocol="tcp" port=5423' --permanent
暂无验证 telnet
5.配置聚合链路
在 system1.rhce.cc 和 system2.rhce.cc 之间按以下要求配置一个链路: 此链路使用接口 eth1 和 eth2
此链路在一个接口失效时仍然能工作
此链路在 system1 使用下面的地址 172.16.11.25/255.255.255.0 此链路在 system2 使用下面的地址 172.16.11.35/255.255.255.0 此链路在系统重启之后依然保持正常状态
相关链接:
https://blog.csdn.net/qq_34556414/article/details/81837276
cd /usr/share/doc/teamd-1.9/
cd example_ifcgs/1/
ls
cp * /etc/sysconfig/network-scripts/
cd /etc/sysconfig/network-scripts/
vim ifcfg-team_test0
修改:
NAME=team_test0
ONBOOT = “yes”
IPADDR = “172.168.11.25”
TEAM_CONFIG=‘{“runner”:{“name”:”activebackup”}}’
vim ifcfg-eth1
NAME=eth1
ONBOOT=“yes”
vim ifcfg-eth2
NAME=eth2
ONBOOT=“yes”
systemctl restart network
验证,重启后,ifconfig可观察其mac地址相同
scp ifcfg-eth1 ifcfg-eth2 ifcfg-team_test0 system2:/etc/sysconfig/network-scripts/
ls
vim ifcfg-team_test0
修改ip 地址,172.168.11.35
systemctl restart network
验证,重启后,ifconfig可观察其mac地址相同
分别ping 25和35,互ping能连通
6.配置ipv6
https://blog.csdn.net/chao199512/article/details/86139714
在您的考试系统上配置接口 eth0 使用下列 IPv6 地址:
system1 上的地址应该是 200e:ac18::e0a/64
system2 上的地址应该是 200e:ac18::e14/64 两个系统必须能与网络 200e:ac18/64 内的系统通信。 地址必须在重启后依旧生效。 两个系统必须保持当前的 IPv4 地址并能通信。
ifconfig eth0
nmcli connection
nmcli connection modify eth0 ipv6.method auto 查看 eth0
nmcli connection modify eth0 ipv6.addresses 200e:ac18::e0a/64(地址是题目给的)
nmcli connection modify eth0 ipv6.addresses 200e:ac18::e14/64(地址是题目给的)
nmcli connection modify eth0 ipv6.method manual
systemctl restart network
验证:分别ping本机和另一台机器
ifconfig eth0
ping6 200e:ac18::e0a
ping6 200e:ac18::e14
7.配置邮件服务器
在系统 system1 和 system2 上 配置邮件服务,满足以下要求: 这些系统不接收外部发送来的邮件 在这些系统上本地发送的任何邮件都会自动路由到 rhgls.rhce.cc 从这些系统上发送的邮件显示来自于 rhce.cc
您可以通过发送邮件到本地用户 'dave' 来测试您的配置,系统 rhgls.rhce.cc 已经配置把此 用户的邮件转到下列 URL http://rhgls.rhce.cc/received_mail/11
firewall-cmd --add-service=smtp --permanent
如下可不操作:
postconf | grep trans
postconf -e local_transport=err:xxx
postconf | grep ^local_tr
cd /etc/postfix/
vim main.cf
mydestination =
relayhost = [rhgls.rhce.cc]
myorigin = rhce.cc
systemctl restart postfix
yum install mailx
验证,echo system1| mail -s 'aaa' dave
Url: http://rhgls.rhce.cc/received_mail/11
第二台机器:
firewall-cmd --add-service=smtp --permanent
scp main.cf system2:/etc/postfix/
systemctl restart postfix
yum install mailx
验证,echo system2| mail -s 'aabbbb' dave
Url: http://rhgls.rhce.cc/received_mail/11
8.通过 smb共享目录
在 system1 上配置 SMB 服务
您的 SMB 服务器必须是 STAFF 工作组的一个成员 共享 /common 目录 共享名必须为 common
只有 rhce.cc 域内的客户端可以访问 common 共享 common 必须是可以浏览的
用户 andy 必须能够读取共享中的内容,如果需要的话,验证的密码是 redhat
yum install samba
cd /etc/samba/
ls
firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.122.0/24" service name="tftp" accept'
vim smb.conf
workgroup = STAFF
//新增
[common]
path = /common
hosts allow = 192.168.122.0/24
mkdir /common
chcon -R -t samba_share_t /common
firewall-cmd --add-service=samba --permanent
id andy
useradd andy
echo redhat | passwd --stdin andy
yum whatprovides */smbpasswd
yum install samba-client-4.1.1-31.el7.x86_64
pdbedit -L
smbpasswd -a andy
systemctl start smb
systemctl enable smb
验证:
smbclient -L //system1 -U andy%redhat (浏览信息)
smbclient //system1/common -U andy%redhat(登录smb)
9.配置多用户smrhgls.rhce.ccb
在 system1 共享通过 SMB 目录 /miscellaneous 满足以下要求:
共享名为 miscellaneous
共享目录 miscellaneous 只能被 rhce.cc 域中的客户端使用
共享目录 miscellaneous 必须可以被浏览
用户 silene 必须能以读的方式访问此共享, 访问密码是 redhat
用户 akira 必须能以读写的方式访问此共享, 访问密码是 redhat
此共享永久挂载在 system2.rhce.cc 上的 /mnt/multi 目录, 并使用用户 silene 作为认
证 任何用户可以通过用户 akira 来临时获取写的权限
1)创建:
//system1
mkdir /miscellaneous
chcon -R -t samba_share_t /miscellaneous
vim /etc/samba/smb.conf
[miscellaneous]
path = /miscellaneous
hosts allow = 192.168.122.0/24
writable = no
write list = akira
chmod o+w /miscellaneous
id silene
useradd silene
echo redhat | passwd --stdin silene
useradd akira
echo redhat | passwd --stdin akira
smbpasswd -a silene
smbpasswd -a akira
systemctl restart smb
systemctl enable smb
验证:
smbclient //system1/miscellaneous -U silene%redhat 可读
mkdir aa
smbclient //system1/miscellaneous -U akira%redhat 可写
mkdir aa
//system2
2)挂载:
mkdir /mnt/multi
yum whatprovides */smbpasswd
yum install samba-client-4.1.1-31.el7.x86_64
smbclient -L //system1 -U andy%redhat
vim /etc/fstab
//system1/miscellaneous /mnt/multi cifs defaults,username=silene,password=redhat,multiuser,sec=ntlmssp 0 0
yum install cifs-u* (smb权限共享)
mount -a
df -hT 查看挂载点
验证:
useradd tom1
useradd tom2
su - tom1
cd /mnt/multi
ls 没有权限
cifscreds add system1 -u silene
ls有权限
Touch 没有权限
exit
su - tom2
cd /mnt/multi
cifscreds add system1 -u akira
ls 有权限
touch有权限
exit
10.配置nfs服务(服务端 system1) 重启后存在问题
NFS就是Network File System的缩写,它最大的功能就是可以通过网络,让不同的机器、不同的操作系统可以共享彼此的文件。
在 system1 配置 NFS 服务,要求如下:
以只读的方式共享目录 /public 同时只能被 rhce.cc 域中的系统访问 以读写的方式共享目录 /protected 能被 rhce.cc 域中的系统访问
访问 /protected 需要通过 Kerberos 安全加密, 您可以使用下面 URL 提供的密钥
http://host.rhce.cc/materials/nfs_server.keytab.
目录 /protected 应该包含名为 confidential 拥有人为 ldapuser11 的子目录 用户 ldapuser11 能以读写方式访问 /protected/confidential
systemctl start nfs-server
systemctl enable nfs-server
systemctl is-enabled nfs-server.service
写两遍 不带和带permanent
firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.122.0/24" service name="nfs" accept' --permanent
firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.122.0/24" service name="rpc-bind" accept' --permanent
firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.122.0/24" service name="mountd" accept' --permanent
mkdir /public
vim /etc/exports
/public *(ro,sync)
exportfs -arv (nfs服务修改配置、共享等)
firewall-cmd --add-service=mountd
mount system1:/public /mnt
umount /mnt
mkdir /protected
vim /etc/exports
/protected *(rw,sync)
exportfs -arv
wget -O /etc/krb5.keytab http://host.rhce.cc/materials/nfs_server.keytab
(不要删除自带的 /etc/krb5.conf /etc/krb5.keytab)
vim /etc/exports
/protected *(rw,sync,sec=krb5p)
验证:cat /etc/exports
vim /etc/sysconfig/nfs
RPCNFSDARGS = “-V 4.2”(有空格)
chocon https://ipcmen.com/chcon
chcon命令 是修改对象(文件)的安全上下文,比如:用户、角色、类型、安全级别。
chcon -R -t public_content_t /protected/
mkdir /protected/confidential
chcon -R -t public_content_t /protected/
chown ldapuser11 /protected/confidential/
systemctl restart nfs-server
systemctl restart nfs-secure-server
systemctl enable nfs-secure-server
systemctl is-enabled nfs-server.service
验证:ls mkdir 。。
11.nfs客户端共享 (system2)
在 system2 上挂载一个来自 system1.rhce.cc 的 NFS 共享, 并符合下列要求:
/public 挂载在下面的目录上 /mnt/nfsmount
/protected 挂载在下面的目录上 /mnt/nfssecure 并使用安全的方式,密钥下载 URL 如 下: http://host.rhce.cc/materials/nfs_client.keytab.
用户 ldapusre11 能够在 /mnt/nfssecure/confidential 上创建文件
这些文件系统在系统启动时自动挂载
showmount -e system1
mkdir /mnt/nfsmount
vim /etc/fstab
system1.rhce.cc:/public /mnt/nfsmount nfs defaults 0 0
验证public:
mount -a
df -hT
mkdir /mnt/nfssecure
wget -O /etc/krb5.keytab http://host.rhce.cc/materials/nfs_client.keytab
systemctl restart nfs-secure
systemctl enable nfs-secure
vim /etc/fstab
system1.rhce.cc:/protected /mnt/nfssecure nfs defaults,v4.2,sec=krb5p 0 0
验证:
mount -a
df -hT (存疑 没有显示)
说明:不要su过来,没有权限。要走ssh,也就是
System1登录:
ssh [email protected],基于krb5p进行认证
说明:这个报错没有问题,ld not chdir to home directory /home/guests/ldapuser11: No such file or directory
验证结论:
cd /mnt/nfssecure/confidential
touch 123
12.配置web站点
system1 上配置一个站点 http://system1.rhce.cc 然后执行下述步骤:
从 http://rhgls.rhce.cc/materials/station.html 下载文件,并且将文件重命名为 index.html 不要修改此文件的内容 将文件 index.html 拷贝到您的 web 服务器的 DocumentRoot 目录下 来自于 rhce.cc 域的客户端可以访问此 Web 服务
来自于 my133t.org 域的客户端拒绝访问此 Web 服务
yum groupinstall web* -y
systemctl start httpd
systemctl enable httpd
cd /etc/httpd/conf
vim http.conf
ServerName system1.rhce.cc:80
wget -O /var/www/html/index.html http://rhgls.rhce.cc/materials/station.html
写两遍 一遍带permanent
firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.122.0/24" service name="http" accept' --permanent
systemctl restart httpd
防止重启失效:
ping system1.rhce.cc
vim /etc/hosts
192.168.122.100 system1.rhce.cc
验证: system1.rhce.cc my133t.org 来进行验证
13.配置站点加密
为站点 http://system1.rhce.cc 配置 TLS 加密 一个已签名证书从 http://host.rhce.cc/materials/system1.crt 获 取 此 证 书 的 密 钥 从 http://host.rhce.cc/materials/system1.key 获 取 此 证 书 的 签 名 授 权 信 息 从 http://host.rhce.cc/materials/domain11.crt 获取
cd /etc/httpd/conf/
wget http://host.rhce.cc/materials/system1.crt
wget http://host.rhce.cc/materials/system1.key
wget http://host.rhce.cc/materials/domain11.crt
ssh root@system1
cd /etc/httpd/conf.d/
vim ssl.conf
SSLCertificateFile /etc/httpd/conf/system1.crt (私人客户端证书)
SSLCertificateKeyFile /etc/httpd/conf/system1.key (加密的公钥)
SSLCertificateChainFile /etc/httpd/conf/domain11.crt (公共机构证书)
systemctl restart httpd
firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.122.0/24" service name="https" accept' --permanent
验证: https://system1.rhce.cc
14.配置虚拟主机
在 system1 上扩展您的 web 服务器,为站点 http://www..rhce.cc 创建一个虚拟主机,然后 执行下述步骤:
设置 DocumentRoot 为 /var/www/virtual
从 http://rhgls.rhce.cc/materials/www.html
下载文件并重命名为 index.html 不要对文件 index.html 的内容做任何修改 将文件 index.html 放到虚拟主机的 DocumentRoot 目录下
确保 andy 用户能够在 /var/www/virtual 目录下创建文件
注意:原始站点 http://system1.rhce.cc 必须仍然能够访问, 名称服务器 rhce.cc 提供对主 机名 www.rhce.cc 的域名解析
ping www.rhce.cc (确定环境ip地址)
cat /etc/hosts
cd /etc/httpd/conf.d
mkdir /var/www/virtual
wget -O /var/www/virtual/index.html http://rhgls.rhce.cc/materials/www.html
//添加andy
setfacl -m u:andy:rwx /var/www/virtual
cp /usr/share/doc/httpd-2.4.6/httpd-vhosts.conf vhosts.conf
vim vhosts.conf
DocumentRoot /var/www/virtual
ServerName www.rhce.cc
DocumentRoot /var/www/html
ServerName system1.rhce.cc
Vim /etc/hosts
192.168.122.100 system1.rhce.cc
192.168.122.100 www.rhce.cc
systemctl restart httpd
systemctl enable httpd
验证:
system1.rhce.cc
https://system1.rhce.cc
www.rhce.cc(https 已被设定)
15.配置web内容访问
在您的 system1 上的 web 服务器的 DocumentRoot 目录下 创建一个名为 secret 的目录, 要求如下:
从 http://rhgls.rhce.cc/materials/private.html 下载一个文件副本到这个目录,并且重命名 为 index.html。
不要对这个文件的内容做任何修改。
从 system1 上,任何人都可以浏览 secret 的内容, 但是从其它系统不能访问这个目 录的内容
mkdir /var/www/html/secret /var/www/virtual/secret
wget -O /var/www/html/secret/index.html http://rhgls.rhce.cc/materials/private.html
wget -O /var/www/virtual/secret/index.html http://rhgls.rhce.cc/materials/private.html
vim vhosts.conf
AllowOverride None
Require local
AllowOverride None
Require local
验证:
systemctl restart httpd
外网不可访问 www.rhce.cc/secret system1.rhce.cc/secret
本机(system1)可访问:
curl -s system1.rhce.cc/secret/index.html
curl -s www.rhce.cc/secret/index.html
16.动态配置网站
在 system1 上配置提供动态 Web 内容,要求如下:
动态内容由名为 dynamic.rhce.cc 的虚拟主机提供
虚拟主机侦听在端口 8998
从 http://rhgls.rhce.cc/materials/webapp.wsgi 下载一个脚本,然后放在适当的位置, 无
论如何不要求修改此文件的内容
客户端访问 http://dynamic.rhce.cc:8998/ 时 应该接收到动态生成的 web 页面 此 http://dynamic.rhce.cc:8998/ 必须能被 rhce.cc 域内的所有系统访问
wsgi是一套协议,约定web服务器和应用(或者叫应用服务器)如何进行通信
vim /etc/hosts
192.168.122.100 dynamic.rhce.cc dynamic
firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.122.0/24" port port="8998" protocol="tcp" accept' --permanent
vim httpd.conf
Listen 8998
vim vhosts.conf
DocumentRoot /var/www/html/yy
ServerName dynamic.rhce.cc
mkdir /var/www/html/yy
yum install mod_wsgi
cd /var/www/html/yy/
wget -P /var/www/html/yy http://rhgls.rhce.cc/materials/webapp.wsgi
cd /etc/httpd/conf.d
vim vhosts.conf
DocumentRoot /var/www/html/yy
ServerName dynamic.rhce.cc
WSGIScriptAlias / /var/www/html/yy/webapp.wsgi
vim /etc/ssh/sshd_config 寻找模板
yum whatprovides */semanage
yum install policycoreutils-python-2.2.5-11.el7.x86_64
semanage port -a -t http_port_t -p tcp 8998
systemctl restart httpd
如果重启失败,说明被占用,应该是执行顺序出了问题,可用如下命令
semanage port -m -t http_port_t -p tcp 8998
原因:http://www.kbase101.com/question/35273.html
验证,访问浏览器:dynamic.rhce.cc:8998
17.创建一个脚本
在 system1 上创建一个名为 /root/script 的脚本, 让其提供下列特性:
当运行 /root/script foo,输出为 bar
当运行 /root/script bar,输出为 foo
当没有任何参数或者参数不是 foo 或者 bar 时, 其错误输出产生以下的信息:
/root/script foo|bar
vim script
#!/bin/bash
case $1 in
foo)
echo bar
;;
bar)
echo foo
;;
*)
echo '/root/script foo|bar'
;;
esac
验证:
chmod +x script
./script
./script bar
./script foo
18.创建一个添加用户的脚本
在 system1 上创建一个脚本,名为 /root/mkusers , 此脚本能实现为系统 system1 创建本地 用户, 并且这些用户 的用户名来自一个包含用户名列表的文件。同时满足下列要求:
此脚本要求提供一个参数,此参数就是包含用户名列表的文件
如果没有提供参数,此脚本应该给出下面的提示信息 Usage: /root/mkusers 然后退出并 返回相应的值
如果提供一个不存在的文件名,此脚本应该给出下面的提示信息 Input file not found 然 后退出并返回相应的值
创建的用户登录 shell 为 /bin/false
此脚本不需要为用户设置密码
您可以从下面的 URL 获取用户名列表作为测试用 http://rhgls.rhce.cc/materials/userlist
vim mkusers
#!/bin/bash
if 空格 [空格 表达式 空格];then
if [ $# -eq 0 ] ; then
echo "Usage:/root/mkusers"
exit 1
fi
if [ ! -f $1 ] ; then
echo "Input file not found"
exit 1
fi
while read aa
do
useradd -s /bin/false $aa
done < $1
wget http://rhgls.rhce.cc/materials/userlist
cat userlist
chmod +x mkusers
验证:./mkusers userlist
19.配置iSCSI 服务器 (system1)
iSCSI 是网络云盘
配置 system1 提供一个 iSCSI 服务 磁盘名为 iqn.2014-09.com.example.domain11:system1 , 并符合下列要求:
服务端口为 3260
使用 iscsi_vol 作其后端卷 其大小为 3G 此服务只能被 system2.rhce.cc 访问
yum install target*
systemctl start target
systemctl enable target
lsblk
fdisk /dev/vda
p n p enter +3G
partprobe /dev/vda
targetcli
/backstores/block create iscsi_vol /dev/vda4
ls
/iscsi create iqn.2014-09.com.example.domain11:system1
cd /iscsi/iqn.2014-09.com.example.domain11:system1/tpg1/
ls
acls/ create iqn.2014-09.com.example.domain11:system1:xx
luns/ create /backstores/block/iscsi_vol
portals/ create 0.0.0.0 3260
exit
防火墙可视化界面:(如果无法进入可视化界面,则退出再重新登录)
yum install firewall-config -y
LANG=C firewall-config
尝试改成命令行
配置:永久
区域:public
富规则:添加
这个 192.168.122.200 是来自system2里头的
firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.200 port port=3260 protocol=tcp accept’ --permanent
systemctl restart firewalld
说明:注意IP地址 ifconfig eth0 或者 hostname 后 ping 域名(system2)
验证:ls -hT or login 进去ls
20.配置 iSCSI 客户端 (system2)
配置 system2 使其能连接在 system1 的上提供的 iqn.2014-09.com.example.domain11:system1 并符合以下要求:
iSCSI 设备在系统启动的期间自动加载
块设备 iSCSI 上包含一个大小为 1700 MiB 的分区,并格式化为 xfs 此分区挂载在 /mnt/data 上 同时在系统启动的期间自动挂载
lsblk
yum install iscsi*
vim /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2014-09.com.example.domain11:system1:xx
systemctl start iscsid
systemctl enable iscsid
iscsiadm -m discovery -t st -p system1.rhce.cc -l (system1 防火墙需要配置正确)
lsblk
fdisk /dev/sda
n p enter
+1700M
w
mkfs.xfs /dev/sda1
vim /etc/fstab
/dev/sda1 /mnt/data xfs defaults,_netdev 0 0
mkdir /mnt/data
验证结论:
mount -a
df -hT
21.配置mariadb
在 system1 上创建一个 MariaDB 数据库, 名为 Contacts ,并符合以下条件:
数据库应该包含来自数据库复制的内容,复制文件的 URL 为 http://rhgls.rhce.cc/materials/users.mdb 。
数据库只能被 localhost 访问。
除了 root 用户, 此数据库只能被用户 Luigi 查询。 此用户密码为 redhat。 root 用户的密码为 redhat , 同时不允许空密码登录。
yum install mariadb-server mariadb -y
systemctl start mariadb
systemctl enable mariadb
mysql
create database Contacts
wget http://rhgls.rhce.cc/materials/users.mdb
use Contacts
source /root/users.mdb
show tables;
grant select on Contacts.* to Luigi@'localhost' identified by 'redhat';
set password=password('redhat');
22.sql查询
在系统 system1 上使用数据库 Contacts , 并使用相应的 SQL 查询以回答下列问题:
密码是 tangerine 的人的名字?
有多少人的姓名是 John 同时居住在 Santa Clara?
mysql -u root -p'redhat'
use Contacts;
desc table
select * from name join pass where name.aid = pass.bid and password = 'tangerine';
select count(*) from name join loc where name.aid = loc.cid and firstname = 'John' and loction = 'Santa Clara';
说明:区别 firstname 和 lastname,选择语言为英文,如果时间不够,蒙猜个数为1