IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> VMware&Ubuntu server&Ubuntu desktop配置小型it系统 -> 正文阅读

[系统运维]VMware&Ubuntu server&Ubuntu desktop配置小型it系统

系统总体架构?

?系统要求

众所周知,这是一个课程作业,以下要求由翻译软件翻译。

router、web和file服务器将使用UbuntuLinux20.04 server作为操作系统,而员工桌面将使用UbuntuLinux20.04 desktop

模拟公司内部网络系统,router将用作外部网络/互联网的NAT路由器和内部网络的路由器。它还为公司内部网络的mycompany.com域托管DNS服务。公司需要访问web服务器www.mycompany.com、DNS服务器DNS.mycompany.com和文件服务器home.mycompany.com。

web服务器将承载Apache2 web服务。文档根是/www,它从ZFS池webpool装入名为/webpool/doc的dataset,该dataset由镜像中2个磁盘的VDEV生成。

file服务器将承载一个ZFS池datapool,该数据池由配置为双奇偶校验RAID-Z pool的3个磁盘组成的VDEV组成。有一个dataset,即从池中创建的datapool/home。数据集datapool/home作为NFS共享导出,挂载到desktop的/home目录(存疑,这个目录特别阴间),并在desktop开机时自动挂载。

虚拟网络设置

由图片可知。需要三个子网,分别是intnet1intnet2,以及一个nat网络。注意,是否勾选 将主机虚拟适配器连接到此网络 和 使用本地DHCP服务将IP地址分配给虚拟机 全凭个人兴趣。warning:若nat网络勾选?将主机虚拟适配器连接到此网络 可能会导致无法上网

intnet1:

?intnet2:

?nat网络:

虚拟机设置?

共4台虚拟机,其配置如下(主要是网络选择,如果要添加硬盘,请务必关机!!!):

desktop:

?router:三个网卡

?web server:

file server:

?

?配置网络

router?

配置router的静态ip

sudo  pico /etc/netplan/00-installer-config.yaml

修改这个文件?

# This is the network config written by 'subiquity'
network:
  ethernets:
    ens33:
      addresses: 
             - 10.0.2.100/24
      gateway4: 10.0.2.1
      nameservers: 
              addresses: [10.0.2.100]
      optional: true
    ens38:
      addresses:
             - 192.168.1.1/24
      optional: true
    ens39:
      addresses:
             - 192.168.2.1/24
      optional: true 
  version: 2

CTRL x保存,使配置生效:

sudo netplan apply

检查是否配置成功

ip addr

?出现三个网卡,对应三个地址

?web server

sudo  pico /etc/netplan/00-installer-config.yaml

注意:gateway4的地址就是router的ens38对应的地址?

# This is the network config written by 'subiquity'
network:
  ethernets:
    ens33:
      addresses: 
             - 192.168.1.2/24
      gateway4: 192.168.1.1
      nameservers: 
              addresses: [10.0.2.100]
      optional: true
  version: 2
sudo netplan apply

file server?

sudo  pico /etc/netplan/00-installer-config.yaml
# This is the network config written by 'subiquity'
network:
  ethernets:
    ens33:
      addresses: 
             - 192.168.2.2/24
      gateway4: 192.168.2.1
      nameservers: 
              addresses: [10.0.2.100]
      optional: true
  version: 2
sudo netplan apply

?desktop

点击右上角的电源标识,选择Wired Connected,选择wired settings

?如图配置

?然后把网关了,再开开

可以几台机器互相ping看看是否可以ping通。但此时除了router其他都不能上网,需要设置iptables

sudo su
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o ens33 -j MASQUERADE
exit

这样几台机器应该都可以ping baidu.com?

?配置DNS

安装bind9

sudo apt update
sudo apt-get install bind9 dnsutils
sudo  pico /etc/bind/named.conf.options
forwarders {
202.119.24.18;	# SEU DNS
8.8.8.8;	# Google Public DNS
};

sudo service bind9 restart

?可以dig uniseu.edu试试成没成,不过这么霉的网站就不要挖了

配置named.conf.local

sudo  pico /etc/bind/named.conf.local
//
// Do any local configuration here
//

// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";
zone 
"mycompany.com"{ type master;
file "/etc/bind/db.mycompany.com";
};
zone "2.0.10.in-addr.arpa" { type master;
notify no;
file "/etc/bind/db.10";
};
zone "1.168.192.in-addr.arpa" { type master;
notify no;
file "/etc/bind/db.192.168.1";
};
zone "2.168.192.in-addr.arpa" { type master;
notify no;
file "/etc/bind/db.192.168.2";
};

配置里提到了四个文件,逐个创建

设置forward zone文件:

创建db.mycompany.com(db.local相当于是个模板)

sudo cp /etc/bind/db.local /etc/bind/db.mycompany.com
sudo pico /etc/bind/db.mycompany.com
;
; BIND data file for local loopback interface
;
$TTL	604800
@	IN	SOA	dns.mycompany.com. asl.seu.edu.cn.(
			2019112001	; Serial
			 604800		; Refresh
			  86400		; Retry
			2419200		; Expire
			 604800 )	; Negative Cache TTL
;
@	IN	NS	dns.mycompany.com.
@	IN	A	127.0.0.1
@	IN	AAAA	::1

dns    	IN	A	10.0.2.100
desktop IN	A	192.168.1.3
home	IN	A	192.168.2.2
www    	IN	A	192.168.1.2

#dns	IN	CNAME server
#www	IN	CNAME server

设置reverse zone 文件

创建db.10

sudo cp /etc/bind/db.local /etc/bind/db.10
sudo pico /etc/bind/db.10
;
; BIND reverse data file for local loopback interface
;
$TTL	604800
@	IN	SOA	dns.mycompany.com. asl.seu.edu.cn. (
			2019112001	; Serial
			 604800		; Refresh
			  86400		; Retry
			2419200		; Expire
			 604800 )	; Negative Cache TTL
;
@	IN	NS	dns.mycompany.com.
100	IN	PTR	DNS.mycompany.com.

?创建db.192.168.1

sudo cp /etc/bind/db.local /etc/bind/db.192.168.1
sudo pico /etc/bind/db.192.168.1
;
; BIND reverse data file for local loopback interface
;
$TTL	604800
@	IN	SOA	dns.mycompany.com. asl.seu.edu.cn. (
			2019112001	; Serial
			 604800		; Refresh
			  86400		; Retry
			2419200		; Expire
			 604800 )	; Negative Cache TTL
;
@	IN	NS	dns.mycompany.com.
2	IN	PTR	www.mycompany.com.

创建db.192.168.2?

sudo cp /etc/bind/db.local /etc/bind/db.192.168.2
sudo pico /etc/bind/db.192.168.2
;
; BIND reverse data file for local loopback interface
;
$TTL	604800
@	IN	SOA	dns.mycompany.com. asl.seu.edu.cn. (
			2019112001	; Serial
			 604800		; Refresh
			  86400		; Retry
			2419200		; Expire
			 604800 )	; Negative Cache TTL
;
@	IN	NS	dns.mycompany.com.
2	IN	PTR	home.mycompany.com.

重启bind9

sudo service bind9 restart

检查配置是否有问题(自信的人可以跳过)不报错就行

cd /etc/bind
sudo named-checkconf
sudo named-checkzone mycompany.com db.mycompany.com
sudo named-checkzone 2.0.10.in-addr.arpa. db.10
sudo named-checkzone 1.168.192.in-addr.arpa. db.192.168.1
sudo named-checkzone 2.168.192.in-addr.arpa. db.192.168.2

检查是否dns能够正向解析,只需几台机子用host name互ping

检测是否能反向解析,可以在web server上

dig -x 192.168.2.2@dns.mycompany.com

?配置file server

关机!!!在file server上新增3个1G的SATA硬盘

??

在file server上,查看当前磁盘状况

lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

列出来的这三个1G的小磁盘,这就是用来做zfs的

?安装zfsutils-linux,做一个名叫datapool的zpool,创建datapool/home的数据集

sudo apt install zfsutils-linux
#注意这里用来做zfs的盘一定是新加的盘!可能并不是sda sdb sdc
sudo zpool create datapool mirror /dev/sda /dev/sdb /dev/sdc
sudo zfs create datapool/home

安装nfs-kernel-server

sudo apt install nfs-kernel-server

修改/etc/exports(大概是和权限有关吧

sudo pico /etc/exports

在最后面添加一行

/datapool/home	*(rw,sync,no_root_squash)

重启

sudo systemctl start nfs-kernel-server.service
reboot

在desktop

如果阁下是个谨慎的人,可以先查看有什么能挂的

showmount -e home.mycompany.com

?

开挂(但如果阁下并非本校本课程的学生,且阁下的/home文件夹下有一个用户名文件夹,建议不要挂到/home这么阴间的地方,而是挂载到一个空的文件夹下。因为如果不空,mount后文件夹原来的东西就看不到了。当然,挂了也不用担心,umount就又能看到了。

注:三三提供了一个方法,就是把原来/home的文件拷贝挪移到新的/home里,但是这样笔者出现了一些奇奇怪怪的问题,读者自求多福吧

#建议不要挂载到/home,因为笔者暂时没有找到很好的处理方法
sudo mount -t nfs home.mycompany.com:/datapool/home /home

设置开机自动挂(高危!)

sudo pico /etc/fstab

在最后添加一行,但同样的,笔者非常,非常不建议在这里真的挂到/home,建议添加个别的文件夹看看效果就行了。如果不信邪,建议在这里存个快照

#highly not recommended!!!!!!!!
home.mycompany.com:/datapool/home /home nfs defaults,user,exec 0 0

配置web server(apache)

安装lamp(可能只用apache就行了,不过之前把lamp都安了就这样吧

sudo apt update
sudo apt install lamp-server^
#注意这个尖尖

?编辑apache2的默认主页

sudo pico /etc/apache2/sites-available/000-default.conf

设置文档根为/www

?添加俩新sata盘,做池子,不多赘述,和file server如出一辙(注意名字是webpool/doc)但是笔者依然不明白意图何在

sudo apt install zfsutils-linux
#注意这里用来做zfs的盘一定是新加的盘!可能并不是sda sdb
sudo zpool create webpool mirror /dev/sda /dev/sdb
sudo zfs create webpool/doc
sudo apt install nfs-kernel-server
sudo pico /etc/exports
#添加一行
/webpool/doc	*(rw,sync,no_root_squash)
#重启
sudo systemctl start nfs-kernel-server.service
reboot

开挂

sudo mkdir /www
#localhost是因为自己挂自己,其实我也不理解到底为啥这样要求
sudo mount -t nfs localhost:/webpool/doc /www

?写一个主页

sudo pico /www/index.php
<html>
 <head>
  <title>home</title>
 </head>
 <body>
 <?php echo '<p> This is the homepage of mycompany.com, welcome! </p>'; ?>
 </body>
</html>

这样直接访问会403,所以来一套组合拳

sudo chmod 777 /www
sudo chmod a=rw '/www'
sudo pico /etc/apache2/apache2.conf
#将"Require all denied"修改成"Require all granted"

?

感谢?解决Apache提示"You don't have permission to access..."错误_老蒋部落

重启apache?

sudo systemctl reload apache2

在desktop上访问www.mycompany.com

?

这样成功就可以了

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-12-08 14:12:36  更:2021-12-08 14:12:44 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 3:38:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码