《Linux 服务器系统管理》(上机)期末考试试题及参考

目录

    • 实验环境
    • 一、虚拟机上安装部署Ubuntu Server 16.04
    • 二、配置服务器的网络环境
    • 三、默认安装部署 SSH 服务
    • 四、安装部署一个 Bind9 的 DNS 服务器
      • 安装bind9
      • 部署
    • 五、安装部署一个 Nginx Web 服务器
      • 安装nginx
      • 部署网站
    • 六、配置 Nginx 服务器,使得网站支持 443 端口的 https 加密数据传输。
    • 七、 部署Tomcat 服务器
    • 八、 安装部署邮件服务器
    • 九、安装部署一个 Mysql 数据库服务器
    • 十、配置 UFW 防火墙
    • 十一、磁盘
    • 参考

实验环境

  • 虚拟机:virtualbox 5.2.32
  • ubuntu:16.04
  • 下载增强功能、双向拷贝

一、虚拟机上安装部署Ubuntu Server 16.04

点击下载字符界面版本Ubuntu16.04.7
点击下载图形界面版本Ubuntu16.04.7

安装参考:
字符界面——https://blog.csdn.net/a603423130/article/details/100127968
图形界面——https://blog.csdn.net/leoli95/article/details/82788138

二、配置服务器的网络环境

要求:

  • 一块通过 HOST-ONLY 方式连接(允许主机能 ping 通服务器,并且设置该 IP 地址为 192.168.0.101);
  • 一块通过 NAT 方式连接(IP 地址由 VirtualBox 自动分配。保证服务器能链接外网,通过 apt-get 方式安装各类软件)

参考:

  • https://www.cnblogs.com/xiangzi888/archive/2012/07/05/2578536.html
  • https://blog.csdn.net/anderfang/article/details/84034378

操作:

配置下载源:

操作参考:
(11条消息) Ubuntu16.04更换下载源_林贻民的博客-CSDN博客_ubuntu更换下载源
阿里源:
ubuntu镜像-ubuntu下载地址-ubuntu安装教程-阿里巴巴开源镜像站 (aliyun.com)

cd /etc/apt
sudo mv sources.list sources.list.bak
sudo vi sources.list
sudo apt-get update
sudo apt-get install vim

ip link // 查看网卡名称
sudo vi /etc/network/interfaces

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

# The promary network interface
auto enp0s3
iface enp0s3 inet dhcp

auto enp0s8
iface enp0s8 inet static
address 192.168.0.101
netmask 255.255.255.0
            
sudo systemctl restart networking.service

三、默认安装部署 SSH 服务

要求:

  • 提供一个 exam 登录用户,登录密码是 network;
  • 添加该账户用户到 sudoer,具有管理员权限

参考:https://www.cnblogs.com/neillee/p/7009621.html

操作:

sudo adduser exam
	password:network
sudo chmod u+w /etc/sudoers
sudo vi /etc/sudoers // 修改见下图
sudo chmod u-w /etc/sudoers
sudo apt-get install openssh-server

在远程客户端cmd输入:

ssh [email protected]

四、安装部署一个 Bind9 的 DNS 服务器

要求:

  • 实现对域 example.com 内的各类主机的域名解析
  • 实现对 mail.example.com,www.example.com, ns.example.com,app1.example.com,app2.example.com, java.example.com 等域名的正向解析(所有域名对应的 IP 地址都指向 192.168.0.101)。
  • 同时提供对上述域名的反向域名解析功能。

参考:
ubuntu16.04下搭建bind9记录_w450093854的专栏-CSDN博客_ubuntu安装bind9

操作:

安装bind9

sudo apt install bind9

部署

sudo vi /etc/bind/named.conf.local
// 正向解析
zone "example.com"{
	type master;
	file "/etc/bind/db.example.com";
};
// 反向解析
zone "0.168.192.in-addr.arpa"{
	type master;
	file "/etc/bind/db.192";
};

注意里面和外面的分号!

// 配置正向解析
sudo cp /etc/bind/db.local /etc/bind/db.example.com
sudo vi /etc/bind/db.example.com

《Linux 服务器系统管理》(上机)期末考试试题及参考_第1张图片

named-checkzone example.com /etc/bind/db.example.com
// 反向解析
sudo cp /etc/bind/db.127 /etc/bind/db.192
sudo vi /etc/bind/db.192

《Linux 服务器系统管理》(上机)期末考试试题及参考_第2张图片

named-checkzone 0.168.192 /etc/bind/db.192
sudo systemctl restart bind9
sudo systemctl status bind9

接着,更改Windows主机上虚拟机网卡的dns为192.168.0.101

在Windows主机上测试正向解析和反向解析:
《Linux 服务器系统管理》(上机)期末考试试题及参考_第3张图片

五、安装部署一个 Nginx Web 服务器

要求:

  • Nginx 可以通过域名构建虚拟主机的方式同时对外提供 http://app1.example.com 和 http://app2.example.com 两个网站的访问。
  • 两个网站对应返回的网页内容 分别是“# hello app1.example.com”和“# hello app2.example.com”

操作:

安装nginx

sudo apt-get install nginx
sudo systemctl status nginx.service

在Windows主机上访问主页:
《Linux 服务器系统管理》(上机)期末考试试题及参考_第4张图片

部署网站

// 准备数据
sudo mkdir -p /data/app1 /data/app2
sudo vi /data/app1/index.html
	<h># hello app1.example.com 
sudo vi /data/app2/index.html
	<h># hello app2.example.com 
cd /etc/nginx/sites-available/
sudo vi app1.example.com
server{
    listen 80;
    listen [::]:80;

    root /data/app1;
    index index.html;

    server_name app1.example.com;

    location / {
            try_files $uri $uri/ =404;
    }
}
sudo vi app2.example.com
server{
       listen 80;
       listen [::]:80;

       root /data/app2;
       index index.html;

       server_name app2.example.com;

       location / {
               try_files $uri $uri/ =404;
       }
}
cd /etc/nginx/sites-enabled
sudo ln -s /etc/nginx/sites-available/app1.example.com /etc/nginx/sites-enabled
sudo ln -s /etc/nginx/sites-available/app2.example.com /etc/nginx/sites-enabled
sudo nginx -t
sudo systemctl restart nginx.service
sudo systemctl status nginx.service

测试网站:
《Linux 服务器系统管理》(上机)期末考试试题及参考_第5张图片

六、配置 Nginx 服务器,使得网站支持 443 端口的 https 加密数据传输。

cd
nginx -V &> test
cat test // 查看是否安装了ssl加密模块

《Linux 服务器系统管理》(上机)期末考试试题及参考_第6张图片

sudo rm test
cd /etc/nginx/
sudo mkdir ssl
cd ssl
sudo openssl genrsa -des3 -out server.key 4096
sudo openssl req -new -key server.key -out server.csr
sudo openssl rsa -in server.key -out server_nopass.key
sudo openssl x509 -req -days 365 -in server.csr -signkey server_nopass.key -out server.crt
// 配置证书
sudo vi /etc/nginx/sites-enabled/app1.example.com
server{
    listen 443 ssl;
    listen [::]:443;

    root /data/app1;
    index index.html;

    server_name app1.example.com;
    ssl_certificate         /etc/nginx/ssl/server.crt;
    ssl_certificate_key     /etc/nginx/ssl/server_nopass.key;

    location / {
            try_files $uri $uri/ =404;
    }
}
sudo vi /etc/nginx/sites-enabled/app2.example.com
server{
        listen 443 ssl;
        listen [::]:443;

        root /data/app2;
        index index.html;

        server_name app2.example.com;

        ssl_certificate         /etc/nginx/ssl/server.crt;
        ssl_certificate_key     /etc/nginx/ssl/server_nopass.key;

        location / {
               try_files $uri $uri/ =404;
        }
}
sudo nginx -t
sudo systemctl restart nginx.service

测试:
《Linux 服务器系统管理》(上机)期末考试试题及参考_第7张图片

七、 部署Tomcat 服务器

要求:

  • 在服务器上安装部署 Java 开发环境;
  • 再部署一个 Tomcat 服务器,端口 8080,支持 JSP 文件的解析(能打开缺省的 tomcat 首页);
  • 在 Nginx 服务器上 添加一个对 java.example.com 的代理访问节点(及不直接访问 tomcat,而 是通过 Nginx 对外的 80 端口访问内部 tomcat 的 8080 端口)。

参考:https://www.digitalocean.com/community/tutorials/how-to-install-apache-tomcat-8-on-ubuntu-16-04

操作:

// 安装部署 Java 开发环境
sudo apt install default-jdk
// 下载 Tomcat 服务器
sudo  groupadd tomcat
sudo  useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
cd /tmp
#curl -Ok https://dlcdn.apache.org/tomcat/tomcat-8/v8.5.73/bin/apache-tomcat-8.5.73.tar.gz
#(Windows cmd 上执行)scp F:/linux/software/apache-tomcat-8.0.35.tar.gz [email protected]:/tmp[使用pscp实现Windows 和 Linux服务器间远程传递文件](https://blog.csdn.net/sgmcumt/article/details/79135395)
sudo  mkdir /opt/tomcat
sudo  tar xzvf apache-tomcat-8*tar.gz -C /opt/tomcat --strip-components=1
cd /opt/tomcat
sudo  chgrp -R tomcat /opt/tomcat
sudo  chmod -R g+r conf
sudo  chmod g+x conf
sudo  chown -R tomcat webapps/ work/ temp/ logs/
sudo update-java-alternatives -l

在这里插入图片描述

sudo vi /etc/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target

[Service]
Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64/jre
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh

User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload    
sudo systemctl start tomcat
sudo systemctl status tomcat
#sudo ufw allow 8080

测试8080端口是否打开:
《Linux 服务器系统管理》(上机)期末考试试题及参考_第8张图片

sudo vi /opt/tomcat/conf/server.xml

在这里插入图片描述

sudo systemctl restart tomcat
sudo systemctl status tomcat

检测:
《Linux 服务器系统管理》(上机)期末考试试题及参考_第9张图片
通过127.0.0.1可以访问到:
《Linux 服务器系统管理》(上机)期末考试试题及参考_第10张图片

sudo su
cd /opt/tomcat/webapps
mkdir java
cd java
sudo vi index.html
#

JAVA

exit

在这里插入图片描述

sudo vi /etc/nginx/sites-available/java.example.com
server{
        listen 443 ssl;
        listen [::]:443;

        server_name java.example.com;
        ssl_certificate         /etc/nginx/ssl/server.crt;
	    ssl_certificate_key     /etc/nginx/ssl/server_nopass.key;

        location / {
                proxy_pass http://127.0.0.1:8080/java/;
                index index.html;
                try_files $uri $uri/ =404;
        }
}
sudo ln -s /etc/nginx/sites-available/java.example.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx.service
sudo systemctl status nginx.service

在这里插入图片描述

八、 安装部署邮件服务器

要求:

  • 安装部署一个 Postfix 邮件服务器,支持通过 SMTP 协议进行电子邮件发送;
  • 通 过 sendmail 客户端,发送一封电子邮件电子邮件给 [email protected] 用 户(注意,使用系统默认的邮件存储方式,不要修改。统一把邮件存放在/var/mail 目录下);
  • 安装部署 dovecat 软件,支持通过 POP3 协议和 IMAP 协议进行电 子邮件的访问;

操作:

// 更改主机名为zhugedou.work
hostname
sudo vi /etc/hostname
#example.com
sudo vi /etc/hosts
#example.com
reboot
hostname
// 配置DNS
sudo vi /etc/bind/db.example.com
named-checkzone example.com /etc/bind/db.example.com

《Linux 服务器系统管理》(上机)期末考试试题及参考_第11张图片

sudo chmod -R 777 mail
// 安装配置postfix
sudo apt install mailutils
sudo systemctl status postfix
// 创建邮局账号
sudo adduser boss
	passwd:123456

测试postfix是否可以发送邮件
在Windows主机上输入:

telnet mail.example.com smtp

《Linux 服务器系统管理》(上机)期末考试试题及参考_第12张图片

在虚拟机中查看是否收到:

sudo vi /var/mail/exam

《Linux 服务器系统管理》(上机)期末考试试题及参考_第13张图片

// 使用sendmail给[email protected]发邮件
sendmail -f [email protected] [email protected]
#hello world
#.
cat /var/mail/exam

《Linux 服务器系统管理》(上机)期末考试试题及参考_第14张图片

// 安装配置dovecot
sudo apt-get install dovecot-common dovecot-imapd dovecot-pop3d
sudo vi /etc/dovecot/dovecot.conf
//修改允许登陆网段地址,全部允许
login_trusted_networks = 0.0.0.0/0
sudo vi /etc/dovecot/conf.d/10-auth.conf
disable_plaintext_auth = no 
sudo systemctl restart dovecot.service
sudo systemctl status dovecot.service

测试dovecot
在Windows中输入:

telnet mail.example.com pop3

《Linux 服务器系统管理》(上机)期末考试试题及参考_第15张图片

在Windows中输入:

telnet mail.example.com imap

《Linux 服务器系统管理》(上机)期末考试试题及参考_第16张图片
在windows邮件客户端中测试:
《Linux 服务器系统管理》(上机)期末考试试题及参考_第17张图片
因为上面用telnet命令发送时的data数据不完整,上图中有一封没有发信人的名字。我们可以尝试再发送一次:

《Linux 服务器系统管理》(上机)期末考试试题及参考_第18张图片

这次我们可以看到发信人了:

《Linux 服务器系统管理》(上机)期末考试试题及参考_第19张图片
再来发送一封信:

《Linux 服务器系统管理》(上机)期末考试试题及参考_第20张图片
登陆上boss账号进行查看:
《Linux 服务器系统管理》(上机)期末考试试题及参考_第21张图片
我们的邮件服务系统搭建成功了!

九、安装部署一个 Mysql 数据库服务器

要求:

  • 安装部署一个 Mysql 数据库服务器,修改 root 用户的密码为 admin12345;
  • 进入数据库后,创建一个名叫 swu 的数据库;
  • 要求可以使用 mysql -u root -h localhost -padmin12345 登录数据库

操作:

sudo apt-get update
sudo apt-get install mysql-server mysql-client
mysql -u root -h localhost -padmin12345
create database swu;
show databases;

《Linux 服务器系统管理》(上机)期末考试试题及参考_第22张图片

十、配置 UFW 防火墙

要求:

  • 启动 UFW 防火墙程序
  • 配置防火墙访问规则,只允许 22, 25, 80, 443, 110, 143

操作:

sudo ufw status
sudo ufw allow 22
sudo ufw allow 25
sudo ufw allow 80
sudo ufw allow 443
sudo ufw allow 110
sudo ufw allow 143
sudo ufw enable
sudo ufw status

《Linux 服务器系统管理》(上机)期末考试试题及参考_第23张图片

十一、磁盘

要求:

  • 在虚拟机上添加两块 1G 的新磁盘,把新磁盘做成 RAID1,实现对数据的冗余备份存储。
  • RAID 磁盘被 mount 到 /mnt/md1 节点下。

操作:

添加硬盘:

  • step1:把虚拟机关机
  • step2:找到需要设置的虚拟机,设置–>存储–>添加虚拟硬盘–>创建新的虚拟机盘–>vdi–>动态分配–>设置大小和路径–>创建

《Linux 服务器系统管理》(上机)期末考试试题及参考_第24张图片

然后开机

// 识别组件设备
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

《Linux 服务器系统管理》(上机)期末考试试题及参考_第25张图片

sudo apt-get install mdadm
// 创建阵列
sudo  mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc
// 通过检查/proc/mdstat文件,可以确保成功创建RAID:
cat /proc/mdstat
// 在阵列上创建一个文件系统
sudo mkfs.ext4 -F /dev/md0
// 创建挂载点以连接新文件系统
sudo  mkdir -p /mnt/md0
// 挂载文件系统
sudo  mount /dev/md0 /mnt/md0
// 通过键入以下内容检查新空间是否可用
df -h -x devtmpfs -x tmpfs
// 使阵列在引导时自动重新组装
sudo  mdadm --detail --scan |  sudo  tee -a /etc/mdadm/mdadm.conf
// 更新 initramfs 或初始 RAM 文件系统,以便阵列在早期引导过程中可用
sudo update-initramfs -u
// 将新的文件系统装载选项添加到`/etc/fstab`文件,以便在启动时自动装载:
echo  '/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0'  |  sudo  tee -a /etc/fstab

参考

【1】伍老师网站

你可能感兴趣的:(Linux,服务器管理,服务器,ubuntu,linux,运维,apache)