Linux网络配置与管理 综合

《Linux 网络配置与管理》实验报告(综合)

实验要求
1、安装 CentOS7 系统,如果使用虚拟机安装,要求按桥接方式连接网络。主机名:实验者
名字拼写,网络号:172.18+x.100+yy.0/20,其中 x 为实验者学号尾数,yy 为实验者学号后 2 位
计算后的网络号。例如,学号后 2 位为 37,则网络号为 172.25.128.0/20。
2、搭建 DNS 服务器,配置正向搜索区域和反向区域。主区域名称:实验者姓氏拼写+班号
+学号后 2 位.+jxuspt.+com,激活主机数不能少于 3 台。反向区域与正向一致。
3、搭建 DHCP 服务器,保证可分配地址 1000 个以上。
4、在 CentOS 中配置 NFS,包含 2 个共享目录:/var/姓氏拼写+学号尾数、/home/名字拼
写。其中/var 下的共享目录允许登录者可读写和执行,/home 可共享目录下只允许读和执行。
在 windows 客户端分别挂载成 V:盘和 H:盘。
5、安装 vsftp,配置 ftp 功能:匿名用户和本地用户均不能登录 ftp,配置 5 个以上虚拟
用户,皆锁定用户根目录。用户名以实验者姓氏拼写+编号和名字拼写+编号为主。2 个以姓氏拼
写 的 用 户 统 一 登 录 到 /var/www/webA, 有 完 全 控 制 权 ; 2 个 以 名 字 拼 写 的 用 户 登 录 到
/var/www/secu,除无上传权限外其他权限皆可。其他用户登录到/var/vsftpd,只有读取权限。
6、搭建 LAMP 环境,要求 MySQL 下载最新版自编译安装。至少创建一个基于名称(依照 DNS)
的虚拟主机(网站)以/var/www/webA 作为 Web 网站的根。验证 LAMP。

一、(1)设置主机名,打开centos终端,输入 hostnamectl --static set-hostname lijiaqiang ,
然后修改/etc/hosts文件 :vim /etc/hosts ,添加一条 127.0.0.1 lijiaqiang
然后重启centos即可:
在这里插入图片描述在这里插入图片描述(2)桥接模式连接网络并设置网络号,操作如下:centos7开机在WM菜单栏选择编辑此虚拟机设置
选择“网络适配器”选择 桥接模式 并选择 复制物理链路状态:
在这里插入图片描述
(3)设置网络号:在centos7网络设置中进行如下设置:vim /etc/sysconfig/network-scripts/ifcfg-ens33
在这里插入图片描述至此,虚拟机安装,网络设置结束;

二、(1)安装DNS服务:yum -y install bind*
(2)连接有线网络,将centos切换为桥接模式连接网络,然后给centos 配置静态ip以及dns:
vim /etc/sysconfig/network-scripts/ifcfg-ens33 ,然后进行如下配置:
在这里插入图片描述
然后重启网络:systemctl restart network
(3)配置防火墙,开放dns服务以及端口53:
firewall-cmd --permanent --add-port=53/udp
firewall-cmd --permanent --add-port=53/tcp
firewall-cmd --reload
(4)永久关闭 selinux: SELINUX=disabled ,然后重启 centos :reboot
(5)配置dns服务配置文件:
vim /etc/named.conf: 修改监听ip,以及添加解析域 ,如下图所示:
在这里插入图片描述
添加正向、方向解析域:
在这里插入图片描述
使用 named-checkconf 检查配置是否有错误;
6)在/var/named/ 目录下添加对应区域解析文件:vim /var/named/区域解析文件名 然后进行如下编辑例如正向解析文件:ljq03.zone
在这里插入图片描述
反向解析文件: 172.21.96.zone:
在这里插入图片描述
(7)重启DNS服务:systemctl restart named
(8)DNS服务客户端验证:
1)windows本机验证:客户端首先将DNS服务指向DNS服务器的ip:
控制面板\网络和 Internet\网络和共享中心\以太网\属性\internet协议版本4,然后做如下操作:
在这里插入图片描述
然后打开终端,ping www.ljqB190207.jxuspt.com:
在这里插入图片描述
反向解析验证:使用nslookup:
在这里插入图片描述
至此,DNS服务搭建结束;
三、搭建DHCP服务器,分配1w个IP;
准备工作:给服务端的centos设置静态ip;
1)安装DHCP服务:yum -y install dhcp
2)修改DHCP相关配置文件:首先将系统给的配置文件样板复制到/etc/dhcp/目录下:(覆盖原有配置文件):cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
编辑配置文件:vim /etc/dhcp/dhcpd.conf ,做一下配置:
在这里插入图片描述
在文件末尾添加subnet声明,分配ip,网关,子网掩码:
在这里插入图片描述
3)启动DHCP服务:systemctl start dhcpd
重启DNS服务:systemctl restart named
4)客户端验证:
1)windows下,首先设置windows 的dns服务器ip为centos服务端ip
然后将路由器上的dhcp服务关掉;
2)打开终端,输入 ipconfig /release 释放电脑的ip地址;
然后 输入 ipconfig /renew 重新获取IP地址,(需要等上一会);
最后输入 ipconfig /all 查看所有网卡信息,这时可以看到以下效果:
在这里插入图片描述
3)服务端查看租约信息:cat /var/lib/dhcpd/dhcpd.leases
在这里插入图片描述
至此,DHCP服务搭建结束;
四、配置NFS
查看是否安装了 rpcbind : rpm -qa | grep rpcbind ,默认是安装好了并且是运行状态;
安装nfs-utils : yum -y install nfs-utils
安装后会自动创建nfsnobody 用户和组,可查看:id nfsnobody;
配置端口:vim /etc/sysconfig/nfs
在这里插入图片描述
配置防火墙,放行五个服务端口:
firewall-cmd --permanent --add-port=111/tcp
firewall-cmd --permanent --add-port=111/udp
firewall-cmd --permanent --add-port=2049/tcp
firewall-cmd --permanent --add-port=2049/udp
firewall-cmd --permanent --add-port=4001-4004/udp
firewall-cmd --permanent --add-port=4001-4004/tcp
重启防火墙:systemctl restart firewalld
查看是否设置成功:firewall-cmd –list-all
以nfsnobody为用户创建共享目录,并配置文件权限:
mkdir /var/ljq3
mkdir /home/lijiaqiang
chown -R nfsnobody:nfsnobody /var/ljq3 /home/lijiaqiang
chmod -R 777 /var/ljq3
chmod -R 755 /home/lijiaqiang
编辑NFS配置文件,并添加共享目录:vim /etc/exports
在这里插入图片描述
启动NFS服务:
systemctl start nfs
systemctl enable nfs
NFS服务验证,这里,由于电脑没有安装NFS服务,所以使用另一个centos作为客户端,来验证:
1)首先开启客户端centos (请保持客户端与服务端在同一网段),然后创建两个目录用于挂载共享目录:
mkdir /mnt/V
mkdir /mnt/H

2)挂载共享目录:
mount 172.21.96.2(服务端ip):/var/ljq3(共享目录)/mnt/V(挂载点)
mount 172.21.96.2:/home/lijiaqiang /mnt/H
在这里插入图片描述
至此,NFS服务搭建结束;
五、搭建FTP服务
安装FTP服务:yum -y install vsftpd
安装FTP服务所需的工具和模块文件:yum -y install pam* libdb-utils libdb*
设置防火墙开放FTP端口以及服务
firewall-cmd --permanent --zone=public --add-port=20/tcp
firewall-cmd --permanent --zone=public --add-port=21/tcp
firewall-cmd --permanent --zone=public --add-port=22/tcp
firewall-cmd --permanent --zone=public --add-service=ftp
firewall-cmd --reload
关闭selinux安全策略:
vim /etc/selinux/config ,进行如下设置:
SELINUX=disabled
然后退出reboot 重启centos使设置生效;
新建一个ftp的宿主用户,指定ftp根目录:
useradd -g root -M -d /var/www -s /sbin/nologin vsftpduser (记得给这个用户设个密码)
mkdir -p /var/www/webA
mkdir /var/www/secu
mkdir /var/vsftpd
chown -R vsftpduser.root /var/www/
chown -R vsftpduser.root /var/vsftpd/
创建虚拟账户以及账户密码文件,生成数据库文件:
编写虚拟账号密码文件:vim /etc/vsftpd/ftpuser.txt (单行为账号,双行为密码)
在这里插入图片描述
生成账号密码相应的数据库文件:cd /etc/vsftpd
db_load -T -t hash -f ftpuser.txt ftpuser.db
修改pam认证文件:vim /etc/pam.d/vsftpd 做如下修改:
在这里插入图片描述
创建一个目录专门存放每个虚拟用户的具体配置文件: (以下所有具体配置文件不能有空行!)
mkdir ftpuser_conf
cd /etc/vsftpd/ftupser_conf
编写对应五个用户的具体配置:
1)配置ljq1,ljq2 登录目录为 /var/www/webA ,具有完全控制权:
vim ljq1 : 做如下配置:(文件名需要与登录虚拟用户名相同才能生效!)

#设置虚拟用户的目录
local_root=/var/www/webA
#设置虚拟用户是否可以写入
write_enable=YES
#权限掩码,设置为000相当于设置了文件目录权限 777
anon_umask=000
#允许虚拟用户的下载功能
anon_world_readable_only=NO
#允许虚拟用户的上传功能
anon_upload_enable=YES
#设置虚拟用户是否可以创建文件夹
anon_mkdir_write_enable=YES
#设置虚拟用户是否可以执行其他的写入操作,比如删除、重命名、覆盖操作。
anon_other_write_enable=YES

2)配置lijiaqiang1,lijiaqiang2登录目录为/var/www/secu,没有上传权限:
vim lijiaqiang1 : 做如下配置:

#设置虚拟用户的目录
local_root=/var/www/secu
#设置虚拟用户是否可以写入
write_enable=YES
#权限掩码,设置为000相当于设置了文件目录权限 777
anon_umask=000
#允许虚拟用户的下载功能
anon_world_readable_only=NO
#允许虚拟用户的上传功能
anon_upload_enable=NO
#设置虚拟用户是否可以创建文件夹
anon_mkdir_write_enable=YES
#设置虚拟用户是否可以执行其他的写入操作,比如删除、重命名、覆盖操作。
anon_other_write_enable=YES

3)配置otheruser,登录目录为/var/vsftpd/, 只有只读权限:
vim otheruser : 做如下配置:

#设置虚拟用户的目录
local_root=/var/vsftpd
#设置虚拟用户是否可以写入
write_enable=NO
#权限掩码,设置为333相当于设置了文件目录权限 444 所有用户只读
anon_umask=333
#允许虚拟用户的下载功能
anon_world_readable_only=NO
#允许虚拟用户的上传功能
anon_upload_enable=NO
#设置虚拟用户是否可以创建文件夹
anon_mkdir_write_enable=NO
#设置虚拟用户是否可以执行其他的写入操作,比如删除、重命名、覆盖操作。
anon_other_write_enable=NO

配置vsftpd.conf ,
cd /etc/vsftpd
vim vsftpd.conf : 做如下修改(如果某些字段没有在配置中找到,请自己添加):
#不允许匿名用户登录
anonymous_enable=NO
#本地用户可以访问,注意:如果这一项设置为NO,则所有虚拟用户无法登录;
local_enable=YES
#可以进行写操作
write_enable=YES
#限制用户只能在其主目录下
chroot_local_uesr=YES
chroot_list_enable=YES
#(default follows)
chroot_list_file=/etc/vsftpd/chroot_list

#开启ipv4监听
listen=YES
#关闭ipv6监听
listen_ipv6=NO
#允许虚拟用户登录
guest_enable=YES
#指定虚拟用户所映射的真实centos用户(宿主用户)
guest_username=vsftpduser
#虚拟用户配置文件存放路径
user_config_dir=/etc/vsftpd/ftpuser_conf
#如果启用了限定用户在其主目录下需要添加以下配置
allow_writeable_chroot=YES

8)创建限制用户目录文件(很重要,不创建可能报错):mkdir /etc/vsftpd/chroot_list
9)启动ftp服务: systemctl start vsftpd
10)windows 用FileZilla 验证:
在这里插入图片描述
服务端查看客户端创建的a.txt 是否上传:
在这里插入图片描述
至此,搭建FTP服务结束;

六、LAMP环境搭建:(请确保网络畅通,最好在有线网络下,配置静态IP)
准备工作:在本机上(centos)搭建好你自己的DNS服务,后面需要使用;
源码安装mysql:
1)卸载centos自带 mariadb 以及mysql :
yum list installed | grep mysql
rpm -e --nodeps mariadb-libs-libs-5.5.60-1.el7_5.x86_64(请根据自己的centos卸载mariadb)
rpm -e --nodeps qt-mysql-4.8.7-2.el7.x86_64 (请根据自己的centos卸载mysql)
删除原来MYSQL和MariaDB相关文件夹:
find / -name mysql
然后使用 rm 命令将find查找出来的文件全部删掉;
2)升级GCC以及cmake
升级GCC:
安装软件集scl : yum -y install centos-release-scl
安装高版本的gcc :yum -y install devtoolset-8-gcc*
建立软链接,覆盖/usr/bin下的gcc相关命令:ln -sf /opt/rh/devtoolset-8/root/usr/bin/* /usr/bin/
查看gcc版本:gcc -v
在这里插入图片描述
升级cmake至cmake3
移除原有的cmake: yum -y remove cmake
下载cmake3压缩包: cd 回车
wget https://cmake.org/files/v3.14/cmake-3.14.5.tar.gz
解压:tar -zxvf cmake-3.14.5.tar.gz
编译安装:
1)cd cmake-3.14.5
2)./bootstrap
3)gmake && gmake install
建立软链接,更新原来的cmake命令:ln -s /usr/local/bin/cmake /usr/bin/
查看cmake版本:cmake --version
在这里插入图片描述
安装rpcsvc-proto-1.4.ta.gz依赖:
cd /usr/local/src
wget https://github.com/thkukuk/rpcsvc-proto/releases/download/v1.4/rpcsvc-proto-1.4.tar.gz
tar -zxvf rpcsvc-proto-1.4.tar.gz
cd rpcsvc-proto-1.4
./configure
make && make install
安装ncurses-devel依赖:yum -y install ncurses-devel
创建mysql用户、用户组:
检查是否存在mysql用户、用户组,不存在则创建:
cat /etc/group | grep mysql
cat /etc/passwd | grep mysql
创建mysql用户组:
groupadd mysql
创建mysql用户并禁止登陆:
useradd -g mysql mysql -M -s /sbin/nologin/
若存在my.cnf,删除:
rm -rf /etc/my.cnf
前面三个步骤为准备工作,接下来安装mysql8.0.15
cd /usr/local/src
下载mysql8.0.17源码包:
wget https://cdn.mysql.com/archives/mysql-8.0/mysql-boost-8.0.17.tar.gz
解压:
tar -zxvf mysql-boost-8.0.17.tar.gz
cd mysql-boost-8.0.17
创建编译目录:
mkdir build
cd build
cmake … -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DSYSCONFDIR=/etc
-DWITH_EXTRA_CHARSETS=all
-DMYSQL_DATADIR=/usr/local/mysql/data
-DWITH_BOOST=/usr/local/src/mysql-8.0.17/boost
-DDOWNLOAD_BOOST=1
开始编译安装:
make && make install (安装时间1-2小时,请耐心)
修改mysql目录权限
修改属主和属组
chown -R mysql:mysql /usr/local/mysql
修改权限
chmod -R 755 /usr/local/mysql
初始化mysql
1)cd /usr/local/mysql/bin
2)./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --character-set-server=utf8
7)安装ssl
/usr/local/mysql/bin/mysql_ssl_rsa_setup
8)启动mysql:systemctl start mysqld
9)登录mysql
查看初始密码:
grep ‘temporary password’ /var/log/mysqld.log
登录后自行修改密码即可;

在这里插入图片描述
至此,mysql源码安装结束;

安装Apache 、php,并配置网页验证;
安装Apache:yum -y install httpd
启动Apache:systemctl start httpd
防火墙开放80端口服务以及httpd服务:firewall-cmd --zone=public --permanent --add-port=80/tcp
firewall-cmd --reload
设置Apache开机自启动:systemctl enable httpd
测试:在centos火狐上输入本机ip(ip addr可查):
在这里插入图片描述
配置Apache基于名称虚拟主机配置:
1)在DNS服务器(centos)上创建多个主机别名:(去查看之前配置DNS服务的正向解析文件)
在这里插入图片描述编辑Apache 主配置文件:
cd /etc/httpd/conf/
vim httpd.conf
在最末尾添加配置如下:(注意不能打错,否则重启Apache会报错)
在这里插入图片描述
配置好后,重启apache:systemctl restart httpd
此时重启虽然不会报错,但是你的网站根目录是需要真实存在的,否则后面访问域名会报 404 NOT FOUND 错误,因此我们需要创建网站根目录:
mkdir -p /var/www/webA
在webA里面随便写一个网页,命名为index.HTML:touch /var/www/webA/index.html
在这里插入图片描述
保存退出,再次重启Apache:systemctl restart httpd
Windows客户端验证:
1)将windows客户端DNS服务器地址设置为以centos为DNS服务器的ip:

在这里插入图片描述
2)浏览器直接访问域名即可:
在这里插入图片描述
安装php
安装:yum -y install php
重启Apache服务:systemctl restart httpd
写一个简单的php文件在网站根目录下,然后到windows下浏览访问以下:
cd /var/www/html (这个目录是在apache安装完成后自动创建的)
vim 1.php
写入:<?php phpinfo(); ?>
退出保存,到windows浏览器验证:
在这里插入图片描述

至此,LAMP环境搭建结束。

猜你喜欢

转载自blog.csdn.net/qq_46635165/article/details/114103270
今日推荐