目录
项目描述
公司有一台linux服务器,要实现内部网络动态获取ip地址。有两个网站分别www.super.com和www.man.com。需要在linux上发布并能通过域名进行访问。对于www.super.com的访问需要作用户认证处理。另每晚22:00需要对web/dhcp/dns日志分别进行备份。
实施步骤
搭建DHCP服务器,让客户端能够获取正确的ip地址及dns地址
安装dhcp服务并启动
修改网卡配置
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
IPADDR=192.168.10.100
NETMASK=255.255.255.0
DNS=192.168.10.100
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=498941ce-833e-4b8c-bf80-aab907203731
DEVICE=ens33
ONBOOT=YES
编辑DHCP配置文件
客户端测试是否能正确获取到地址
Ipconfig /release #释放ip
Ipconfig /renew #重新获取ip
Ipconfig /all #查看详细信息
DHCP具体配置搭建传送门——>linux下DHCP服务器的搭建配置
搭建apache发布两个网站
安装apache服务器
在/var/www/html/下创建两个网站目录并加入对应的网站
在etc/httpd/conf/下创建vhost目录,为两个网站创建并编辑配置文件
其中man.conf配置内容为
Super.conf配置内容为
编辑主配置文件
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
在文件最后加上Include conf/vhost/*.conf
编辑本地 etc/hosts文件,实现本地域名访问
apache搭建详情传送门——>linux搭建apache发布网站
搭建dns服务器,分别以www.super.com和www.man.com域名访问两个网站安装DNS服务器
安装dns并启动服务
[root@localhost ~]#yum install bind
[root@localhost ~]# systemctl start named.service
设置自启动状态
[root@localhost ~]# systemctl enable named.service
配置区域配置文件
[root@localhost etc]# vim named.rfc1912.zones
zone "super.com." IN {
type master;
file "super.com.zone";
allow-update { none; };
};
zone "man.com." IN {
type master;
file "man.com.zone";
allow-update { none; };
};
编辑解析配置文件 /var/named目录下
[root@localhost named]# cp named.localhost super.com.zone #cp样本进行编写
[root@localhost named]# cp named.localhost man.com.zone
[root@localhost named]# chown :named super.com.zone #将super.com.zone 组设置为named(相当于给它权限)
[root@localhost named]# chown :named man.com.zone
[root@localhost named]# vim super.com.zone
[root@localhost named]# vim man.com.zone
编辑主配置文件vim /etc/named.conf
检查dns配置文件是否正确
[root@localhost ~]# named-checkconf
重启dhcp、dns服务,关闭防火墙,关闭安全机制
[root@localhost named]# systemctl restart dhcpd
[root@localhost named]# systemctl restart named
[root@localhost named]# systemctl stop firewalld
[root@localhost named]# setenforce 0
Nslookup解析一下
客户端域名访问测试一下
为www.super.com作访问控制
编辑apache主配置文件
[root@localhost conf]# vim /etc/httpd/conf/httpd.conf
对需要做认证的目录进行配置
<Directory "/var/www/html">
Options Indexes FollowSymLinks
Allowoverride authconfig #在当前目录开启认证
Order allow,deny
Allow from all
</Directory>
在限制访问目录/var/www/html/super下创建文件.htaccess
编辑内容如下
AuthName "提示信息"
AuthType basic #认证类型
AuthUserFile /var/www/html/super/members.txt #用户密码认证目录
require valid-user #在AuthUserFile指定的文件中的所有用户都可以访问
用apache附带程序htpasswd生成包含用户名和密码的文本文件
[root@localhost super]# touch members.txt
[root@localhost super]# htpasswd -b /var/www/html/super/members.txt super 123
[root@localhost super]# cat members.txt
super:$apr1$ZL8CK3Hw$EcmWW7E7wsGw8oRvzDfGY1
重启dhcp服务
[root@localhost super]# systemctl restart httpd.service
访问www.super.com测试
制定任务计划,每晚22:00对web日志进行备份
[root@localhost ~]# crontab -e