考试信息:
IPADDR: 172.25.254.x(X 在这里指您的工作站编号加100)
NETMASK: 255.255.255.0
GATEWAY: 172.25.254.250
DNS: 172.25.254.250
yum源地址为:http://172.25.254.250/rhel7
<1>IP信息
[root@station Desktop]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 ##接口使用设备
BOOTPROTO=none ##网卡工作模式为静态
ONBOOT=yes ##网络服务开启时自动激活
NAME=eth0 ##网络接口名称
DNS1=172.25.254.250
IPADDR=172.25.254.116
NETMASK=255.255.255.0
GATEWAY=172.25.254.250
PEERDNS=NO ##网卡不控制dns
<2>yum源
[root@station yum.repos.d]# vim /etc/yum.repos.d/yum.repo
[rhel7]
name=rhel7
baseurl=http://172.25.254.250/rhel7
gpgcheck=0
<3>开启httpd服务
yum install httpd -y
systemctl start httpd
1.在进行考试之前,请先重置根用户密码为 examwestos
<1>重置根用户密码
1)开机按上下键停止读秒
2)按“e”进入编辑模式
3)选择内核启动行,将linux16 /vmlinuz-xxx ro xxx 修改为:
linux16 /vmlinuz-xxx rw rd.break
4)ctrl+x ##执行
5)chroot /sysroot
6)passwd
7)touch /.autorelabel
8)exit 退出两次
<2>更改根用户密码
或者
echo examwestos | passwd --stdin root
2.更改主机名称为 station.domainX.example.com(X 在这里指您的工作站编号)
hostnamectl set-hostname station.domain16.example.com ##更改主机名称
hostname ##查看更改后的主机名称
3.将/home 分区设定至 200MB,误差范围仅限于 180MB-230MB 之间,并且保留其原有资料的完整性
【注意】原/home分区约为400M,缩小至200M,则为ext文件系统
mount ##查看文件系统ext4/xfs
[root@station Desktop]# df ##查看/home分区,大小约为400M
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 10473900 3235592 7238308 31% /
devtmpfs 469344 0 469344 0% /dev
tmpfs 484932 84 484848 1% /dev/shm
tmpfs 484932 12756 472176 3% /run
tmpfs 484932 0 484932 0% /sys/fs/cgroup
/dev/mapper/vg0-vo 483670 2339 451840 1% /home
[root@station Desktop]# umount /dev/vg0/vo ##卸载
[root@station Desktop]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 10473900 3235532 7238368 31% /
devtmpfs 469344 0 469344 0% /dev
tmpfs 484932 84 484848 1% /dev/shm
tmpfs 484932 12756 472176 3% /run
tmpfs 484932 0 484932 0% /sys/fs/cgroup
[root@station Desktop]# e2fsck -f /dev/vg0/vo ##检测文件系统,确定文件系统中已有数据大小防止过度缩减
[root@station Desktop]# resize2fs /dev/vg0/vo 200M ##把文件系统缩小到200M
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/vg0/vo to 204800 (1k) blocks.
The filesystem on /dev/vg0/vo is now 204800 blocks long.
[root@station Desktop]# lvreduce -L 200M /dev/vg0/vo ##设备缩小到200M
[root@station Desktop]# lvs
LV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convert
vo vg0 -wi-ao---- 200.00m
[root@station Desktop]# mount -a ##使/etc/fstab中记录的挂载策略生效
[root@station Desktop]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 10G 3.1G 7.0G 31% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 474M 140K 474M 1% /dev/shm
tmpfs 474M 13M 462M 3% /run
tmpfs 474M 0 474M 0% /sys/fs/cgroup
/dev/mapper/vg0-vo 186M 1.6M 171M 1% /home
4.按照下面的要求创建一个新的逻辑卷:
*)逻辑卷命名为 database,属于 datastore 卷组.
*)逻辑卷的大小为 50 个物理扩展单元(physical extent)
*)在 datastore 卷组中的逻辑卷,其物理扩展单元(physical extent) 的大小应为 8MB。
*)使用{vfat|ext3|ext4} 文件系统对新的逻辑卷进行格式化
*)逻辑卷应该在系统启动的时候自动挂载在/mnt/database 目录下。
[root@station Desktop]# cat /proc/partitions
major minor #blocks name
253 0 10485760 vda
253 1 10484142 vda1
253 16 10485760 vdb
253 17 512000 vdb1
252 0 204800 dm-0
[root@station Desktop]# fdisk /dev/vdb ##建立分区,分区id:8e,类型LVM,500M
[root@station Desktop]# partprobe ##更新分区表
[root@station Desktop]# pvcreate /dev/vdb2 ##创建pv物理卷
[root@station Desktop]# vgcreate -s 8M datastore /dev/vdb2 ##创建卷组datastore,扩展单元大小设定8M
[root@station Desktop]# lvcreate -L 400M -n database datastore ##创建逻辑卷database
[root@station Desktop]# mkfs.ext4 /dev/datastore/database ##格式化
[root@station Desktop]# mkdir /mnt/database
[root@station Desktop]# vim /etc/fstab ##自动挂载
/dev/datastore/database /mnt/database ext4 defaults 0 0
[root@station Desktop]# mount -a ##使/etc/fstab中记录的挂载策略生效
[root@station Desktop]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 10473900 3235764 7238136 31% /
devtmpfs 469344 0 469344 0% /dev
tmpfs 484932 140 484792 1% /dev/shm
tmpfs 484932 12764 472168 3% /run
tmpfs 484932 0 484932 0% /sys/fs/cgroup
/dev/mapper/vg0-vo 190139 1571 174233 1% /home
/dev/mapper/datastore-database 388462 2318 361568 1% /mnt/database
5.新增加一个 SWAP 分区
*)大小为 512MB,
*)使该 SWAP 能够每次开机生效,并且保留原有的 SWAP 分区
[root@station Desktop]# fdisk /dev/vdb ##建立swap分区,512M,分区id:82
[root@station Desktop]# partprobe
[root@station Desktop]# mkswap /dev/vdb3 ##格式化swap分区
[root@station Desktop]# swapon -a ##激活swap分区
[root@station Desktop]# swapon -s ##查看swap分区
[root@station Desktop]# vim /etc/fstab
/dev/vdb3 swap swap defaults 0 0
[root@station Desktop]# mount -a ##使/etc/fstab中记录的挂载策略生效
6.设定selinux为强制级别
[root@station Desktop]# vim /etc/sysconfig/selinux ##设定完毕后,reboot虚拟机
enforcing
7.新建组,名称为 sysadms,指定其 GID 为 600
[root@station Desktop]# groupadd -g 600 sysadms
8.新建用户 tommy,指定 UID 为 2013,配置该用户密码为 redhat
[root@station Desktop]# useradd -u 2013 tommy
9.新建用户 Jimmy,,并且禁止该用户交互式登录,配置该用户密码为 redhat
[root@station Desktop]# useradd -s /sbin/nologin Jimmy
[root@station Desktop]# passwd Jimmy
[root@station Desktop]# su - Jimmy ##测试
This account is currently not available.
10.新建用户 natasha,harry, 并将这两个用户加入到 sysadms 组当中,作为从属组,如果需要,则将用户密码配置为 redhat
[root@station Desktop]# useradd -G sysadms natasha
[root@station Desktop]# useradd -G sysadms harry
[root@station Desktop]# passwd natasha
[root@station Desktop]# passwd harry
11.在/home 目录中创建目录 materials,配置该目录的所属组为 sysadms,要求隶属于 sysadms 组当中的成员对该目录有读写权限,在sysadms目录当中创建的文件或者文件夹,其所属组也自动继承 sysadms 的所属组
[root@station Desktop]# mkdir /home/materials
[root@station Desktop]# chgrp sysadms /home/materials/
[root@station Desktop]# chmod g+rwx /home/materials/
[root@station Desktop]# chmod g+s /home/materials/
[root@station Desktop]# ls -ld /home/materials/
drwxrwsr-x 2 root sysadms 1024 Jan 30 22:22 /home/materials/
12.拷贝/etc/fstab 文件到/var/tmp 目录中,设置以下需求
• 使 harry 用户对该文件无任何权限
• 使 natasha 对该文件有完全控制权限
• 配置文件所属用户为 root
• 配置文件所属组为 root
• 其他所有用户对文件拥有读权限
• 其他所有用户对文件没有执行权限
[root@station ~]# cp /etc/fstab /var/tmp
[root@station ~]# cd /var/tmp
[root@station tmp]# setfacl -m u:harry:--- fstab
[root@station tmp]# setfacl -m u:natasha:rwx fstab
[root@station tmp]# chown root.root fstab
[root@station tmp]# ls -ld fstab
-rw-rwxr--+ 1 root root 466 Jan 30 22:33 fstab
13.为用户 natasha 创建计划任务,要求在 14:23 执行“/bin/echo hiya”
[root@station tmp]# crontab -eu natasha ##定时任务,e:编辑,u:用户
23 14 * * * /bin/echo hiya ##分时日月周+动作
[root@station tmp]# crontab -u natasha -l ##查看用户的定时任务
23 14 * * * /bin/echo hiya
14.设置 NTP 客户端,与172.25.254.254进行时间同步
[root@station tmp]# vim /etc/chrony.conf
server 172.25.254.254 iburst
[root@station tmp]# systemctl restart chronyd.service
[root@station tmp]# systemctl enable chronyd
[root@station tmp]#chronyc sources -v ##查看时间同步源状态
[root@station tmp]#date ##查看时间是否同步
15.找出用户组mail 拥有的文件,并且将它们放到/root/findresults 目录中
[root@station tmp]# mkdir /root/findresults
[root@station tmp]# find / -group mail -exec cp -rp {} /root/findresults/ \;
[root@station tmp]# cd /root/findresults/
[root@station findresults]# ls -l
total 0
-rw-rw----. 1 harry mail 0 Feb 7 01:03 harry
-rw-rw----. 1 Jimmy mail 0 Feb 7 01:01 Jimmy
drwxrwxr-x. 2 root mail 80 Feb 7 01:03 mail
-rw-rw----. 1 natasha mail 0 Feb 7 01:02 natasha
-rw-rw----. 1 rpc mail 0 May 6 2014 rpc
-rw-rw----. 1 student mail 0 Jul 10 2014 student
-rw-rw----. 1 tommy mail 0 Feb 7 01:01 tommy
16.在文件/usr/share/mime/packages/freedesktop.org.xml
中查找所有包含 ich 的行,将找出的行按照先后顺序拷贝到/root/lines文件中,/root/lines 文件不包含空格,
并且其中行的内容是源文件/usr/share/mime/packages/freedesktop.org.xml 原始行的准确副本
grep ich /usr/share/mime/packages/freedesktop.org.xml > /root/lines
vim /root/lines
%s/^ *//g ##空格替换全文
17.配置 FTP 服务
*)使匿名用户可以上传下载/var/ftp/pub目录里的内容,
*)使 FTP 服务能够开机自动启动
[root@station Desktop]# yum install vsftpd lftpd -y
[root@station Desktop]# systemctl start vsftpd
[root@station Desktop]# systemctl enable vsftpd ##开机自启动ftp服务
[root@station Desktop]# firewall-cmd --permanent --add-service=ftp
success
[root@station Desktop]# firewall-cmd --reload
success
[root@station Desktop]# chmod 775 /var/ftp/pub
[root@station Desktop]# chgrp ftp /var/ftp/pub
[root@station Desktop]# getsebool -a | grep ftp
ftp_home_dir --> off
ftpd_anon_write --> off
ftpd_connect_all_unreserved --> off
ftpd_connect_db --> off
ftpd_full_access --> off
ftpd_use_cifs --> off
ftpd_use_fusefs --> off
ftpd_use_nfs --> off
ftpd_use_passive_mode --> off
httpd_can_connect_ftp --> off
httpd_enable_ftp_server --> off
sftpd_anon_write --> off
sftpd_enable_homedirs --> off
sftpd_full_access --> off
sftpd_write_ssh_home --> off
tftp_anon_write --> off
tftp_home_dir --> off
[root@station Desktop]# setsebool -P ftpd_full_access on ##开启ftp服务所以开关
[root@station Desktop]# vim /etc/vsftpd/vsftpd.conf
29 anon_upload_enable=YES ##开启ftp的上传服务
30 anon_world_readable_only=NO
或者
[root@station Desktop]# setsebool -P ftpd_anon_write on ##开启ftp的上传服务(ftp默认开启下载)
[root@station Desktop]# systemctl restart vsftpd.service
18.配置sshd服务的加密访问要求如下
加密公钥地址
ftp://172.25.254.250/pub/exam/id_rsa.pub
请执行命令自行加密sshd服务,加密对象为root用户
[root@station ~]# wget ftp://172.25.254.250/pub/exam/id_rsa.pub
[root@station ~]# mv id_rsa.pub /root/.ssh/
[root@station ~]# cd /root/.ssh/
[root@station .ssh]# chmod 600 id_rsa.pub
[root@station .ssh]# mv id_rsa.pub authorized_keys
[root@station .ssh]# ll
total 4
-rw-------. 1 root root 829 Nov 26 00:10 authorized_keys
19.设定/home分区的配额,student用户最多只能在/home下写入50M数据
文件系统类型ext4
[root@station Desktop]# umount /home
[root@station Desktop]# mount -o usrquota /dev/vg0/vo /home
[root@station Desktop]# quotacheck -u /dev/vg0/vo ##扫描磁盘,生成aquota.user文件,quota正常工作
[root@station Desktop]# ls -l /home
total 34
-rw-------. 1 root root 8192 Jan 31 00:49 aquota.user
drwx------. 5 harry harry 1024 Jan 30 22:31 harry
drwx------. 4 Jimmy Jimmy 1024 Jan 30 22:13 Jimmy
drwx------. 2 root root 122net88 May 11 2017 lost+found
drwxrwsr-x. 2 root sysadms 1024 Jan 30 22:22 materials
drwx------. 4 natasha natasha 1024 Jan 30 22:17 natasha
drwx------. 5 student student 1024 May 11 2017 student
drwx------. 4 tommy tommy 1024 Jan 30 22:12 tommy
[root@station Desktop]# quotaon -ugv /home
[root@station Desktop]# edquota -u student
/dev/mapper/vg0-vo 51197 0 51200 13 0 0
[root@station Desktop]# vim /etc/fstab
/dev/vdb1 /home ext4 defaults,usrquota 0 0
[root@station Desktop]# repquota -a ##root执行,查看用户配额信息
检测:
[root@station ~]# chmod 777 /home/
[root@station ~]# su - student
Last login: Wed Jan 31 01:27:24 EST 2018 on pts/0
[student@station ~]$ dd if=/dev/zero of=/home/studentfile bs=1M count=100
补充内容:
<1>mount ##查看文件系统类型
<2>scp [email protected]:/root/Desktop/examdocs . ##拷贝文件到当前目录
<3>命令 –help ##查找命令参数的使用
例如:pvcreate –help
<4>vgdisplay 卷组名称 ##查看卷组信息(可查看PE大小)
<5>blkid ##查看设备上系统的文件类型
[root@station ~]# blkid
/dev/vda1: UUID="9bf6b9f7-92ad-441b-848e-0257cbb883d1" TYPE="xfs"
/dev/vdb1: UUID="SIaPf4-OdHu-OzAW-NlQG-vZ3D-X8ZO-1FK3Ih" TYPE="LVM2_member"
/dev/vdb2: UUID="OAzmAR-4vVQ-DQ53-PjsE-xLkV-9f2g-9YdSuo" TYPE="LVM2_member"
/dev/vdb3: UUID="2c02c792-cbb1-4a05-b0b1-f3802f15f9a4" TYPE="swap"
/dev/mapper/datastore-database: UUID="30d5f8f3-cd56-41a1-8df2-176594df713d" TYPE="ext4"
/dev/mapper/vg0-vo: UUID="12294be2-bdad-4817-b162-038e22313d9f" TYPE="ext4"
可利用UUID代替文件系统名称写入文件
vim /etc/fstab
<1> /dev/datastore/database /mnt/database ext4 defaults 0 0
<2> <UUID="12294be2-bdad-4817-b162-038e22313d9f" /mnt/database ext4 defaults 0 0
以上两种写法等价
<6>另一种创建swap分区的方法
lvcreate -n swap -L 512M datastore ##通过创建LVM来创建swap分区,分区名字swap
mkswap /dev/datastore/swap ##格式化swap分区
<7>echo 密码 | passwd –stdin root
echo 密码 | passwd --stdin Jimmy
<8>cat /etc/crontab
<9>timedatectl set-timezone Asia/Shanghai ##设定分区