【笔记】Linux就该这么学-第十五课第十四、十五章
动态主机配置协议(DHCP)是一种基于UDP协议且仅限于在局域网内部使用的网络协议,主要用于大型的局域网环境或者存在较多移动办公设备的局域网环境中,其主要用途是为局域网内部的设备或网络供应商自动分配IP地址等参数
DHCP涉及的常见术语
作用域:一个完整的IP地址段,DHCP协议根据作用域来管理网络的分布、分配IP地址及其他配置参数。
超级作用域:用于管理处于同一个物理网络中的多个逻辑子网段。超级作用域中包含了可以统一管理的作用域列表。
排除范围:把作用域中的某些IP地址排除,确保这些IP地址不会分配给DHCP客户端。
地址池:在定义了DHCP的作用域并应用了排除范围后,剩余的用来动态分配给DHCP客户端的IP地址范围。
租约:DHCP客户端能够使用动态分配的IP地址的时间。
预约:保证网络中的特定设备总是获取到相同的IP地址。
部署dhcpd服务程序
yum install dhcp
配置文件
cat /etc/dhcp/dhcpd.conf
dhcpd服务程序配置文件中使用的常见参数以及作用
ddns-update-style 类型 定义DNS服务动态更新的类型,类型包括:none(不支持动态更新)、interim(互动更新模式)与ad-hoc(特殊更新模式)
allow/ignore client-updates 允许/忽略客户端更新DNS记录
default-lease-time 21600 默认超时时间
max-lease-time 43200 最大超时时间
option domain-name-servers 8.8.8.8 定义DNS服务器地址
option domain-name "domain.org" 定义DNS域名
range 定义用于分配的IP地址池
option subnet-mask 定义客户端的子网掩码
option routers 定义客户端的网关地址
broadcast-address 广播地址 定义客户端的广播地址
ntp-server IP地址 定义客户端的网络时间服务器(NTP)
nis-servers IP地址 定义客户端的NIS域服务器的地址
hardware 硬件类型 MAC地址 指定网卡接口的类型与MAC地址
server-name 主机名 向DHCP客户端通知DHCP服务器的主机名
fixed-address IP地址 将某个固定的IP地址分配给指定主机
time-offset 偏移差 指定客户端与格林尼治时间的偏移差
自动管理IP地址
DHCP协议的设计初衷是为了更高效地集中管理局域网内的IP地址资源。DHCP服务器会自动把IP地址、子网掩码、网关、DNS地址等网络信息分配给有需要的客户端,而且当客户端的租约时间到期后还可以自动回收所分配的IP地址,以便交给新加入的客户端。
vim /etc/dhcp/dhcpd.conf
ddns-update-style none;
ignore client-updates;
subnet 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.50 192.168.10.150;
option subnet-mask 255.255.255.0;
option routers 192.168.10.1;
option domain-name "linuxprobe.com";
option domain-name-servers 192.168.10.1;
default-lease-time 21600;
max-lease-time 43200;
}
dhcpd服务程序配置文件中使用的参数以及作用
ddns-update-style none; 设置DNS服务不自动进行动态更新
ignore client-updates; 忽略客户端更新DNS记录
subnet 192.168.10.0 netmask 255.255.255.0 { 作用域为192.168.10.0/24网段
range 192.168.10.50 192.168.10.150; IP地址池为192.168.10.50-150(约100个IP地址)
option subnet-mask 255.255.255.0; 定义客户端默认的子网掩码
option routers 192.168.10.1; 定义客户端的网关地址
option domain-name "linuxprobe.com"; 定义默认的搜索域
option domain-name-servers 192.168.10.1; 定义客户端的DNS地址
default-lease-time 21600; 定义默认租约时间(单位:秒)
max-lease-time 43200; 定义最大预约时间(单位:秒)
} 结束符
systemctl start dhcpd
systemctl enable dhcpd
分配固定IP地址
将ip地址与MAC地址绑定
vim /etc/dhcp/dhcpd.conf
ddns-update-style none;
ignore client-updates;
subnet 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.50 192.168.10.150;
option subnet-mask 255.255.255.0;
option routers 192.168.10.1;
option domain-name "linuxprobe.com";
option domain-name-servers 192.168.10.1;
default-lease-time 21600;
max-lease-time 43200;
host linuxprobe {
hardware ethernet 00:0c:29:27:c6:12;
fixed-address 192.168.10.88;
}
}
在Windows系统中看到的MAC地址,其格式类似于00-0c-29-27-c6-12,间隔符为减号(-)。但是在Linux系统中,MAC地址的间隔符则变成了冒号(:)
重启服务
systemctl restart dhcpd
大家在生产环境中部署企业级的电子邮件系统时,有4个注意事项请留意。
1.添加反垃圾与反病毒模块:它能够很有效地阻止垃圾邮件或病毒邮件对企业信箱的干扰。
2.对邮件加密:可有效保护邮件内容不被黑客盗取和篡改。
3.添加邮件监控审核模块:可有效地监控企业全体员工的邮件中是否有敏感词、是否有透露企业资料等违规行为。
4.保障稳定性:电子邮件系统的稳定性至关重要,运维人员应做到保证电子邮件系统的稳定运行,并及时做好防范分布式拒绝服务(Distributed Denial of Service,DDoS)攻击的准备。
配置服务器主机名称,需要保证服务器主机名称与发信域名保持一致
vim /etc/hostname
hostname
清空iptables防火墙默认策略,并保存策略状态,避免因防火墙中默认存在的策略阻止了客户端DNS解析域名及收发邮件
iptables -F
service iptables save
为电子邮件系统提供域名解析
cat /etc/named.conf
11 listen-on port 53 { any; };
cat /etc/named.rfc1912.zones
zone "linuxprobe.com" IN {
type master;
file "linuxprobe.com.zone";
allow-update {none;};
};
cat /var/named/linuxprobe.com.zone
$TTL 1D
@ IN SOA linuxprobe.com. root.linuxprobe.com. (
0;serial
1D;refresh
1H;retry
1W;expire
3H);minimum
NS ns.linuxprobe.com.
ns IN A 192.168.10.10
@ IN MX 10 mail.linuxprobe.com.
mail IN A 192.168.10.10
systemctl restart named
systemctl enable named
修改好配置文件后记得重启bind服务程序,这样电子邮件系统所对应的服务器主机名即为mail.linuxprobe.com,而邮件域为@linuxprobe.com。把服务器的DNS地址修改成本地IP地址
配置Postfix服务程序
安装Postfix服务程序
yum install postfix
在安装完Postfix服务程序后,需要禁用iptables防火墙,否则外部用户无法访问电子邮件系统
systemctl disable iptables
Postfix服务程序主配置文件(/etc/ postfix/main.cf)
Postfix服务程序主配置文件中的重要参数
myhostname 邮局系统的主机名
mydomain 邮局系统的域名
myorigin 从本机发出邮件的域名名称
inet_interfaces 监听的网卡接口
mydestination 可接收邮件的主机名或域名
mynetworks 设置可转发哪些主机的邮件
relay_domains 设置可转发哪些网域的邮件
vim /etc/postfix/main.cf
第76行定义一个名为myhostname的变量,用来保存服务器的主机名称
76 myhostname = mail.linuxprobe.com
第83行定义一个名为mydomain的变量,用来保存邮件域的名称
83 mydomain = linuxprobe.com
第99行调用前面的mydomain变量,用来定义发出邮件的域
99 myorigin = $mydomain
第116行定义网卡监听地址。可以指定要使用服务器的哪些IP地址对外提供电子邮件服务;也可以干脆写成all,代表所有IP地址都能提供电子邮件服务
116 inet_interfaces = all
第164行定义可接收邮件的主机名或域名列表。这里可以直接调用前面定义好的myhostname和mydomain变量(如果不想调用变量,也可以直接调用变量中的值)
164 mydestination = $myhostname , $mydomain
创建电子邮件系统的登录账户。Postfix与vsftpd服务程序一样,都可以调用本地系统的账户和密码,因此在本地系统创建常规账户即可。
最后重启配置妥当的postfix服务程序,并将其添加到开机启动项中。
useradd boss
echo "linuxprobe" | passwd --stdin boss
systemctl restart postfix
systemctl enable postfix
配置Dovecot服务程序
yum install dovecot
配置部署Dovecot服务程序。在Dovecot服务程序的主配置文件中进行如下修改
vim /etc/dovecot/dovecot.conf
第24行,把Dovecot服务程序支持的电子邮件协议修改为imap、pop3和lmtp
24 protocols = imap pop3 lmtp
25 disable_plaintext_auth = no
第48行,设置允许登录的网段地址,也就是说我们可以在这里限制只有来自于某个网段的用户才能使用电子邮件系统。如果想允许所有人都能使用,则不用修改本参数
48 login_trusted_networks = 192.168.10.0/24
配置邮件格式与存储路径
vim /etc/dovecot/conf.d/10-mail.conf
在Dovecot服务程序单独的子配置文件中,定义一个路径,用于指定要将收到的邮件存放到服务器本地的哪个位置。这个路径默认已经定义好了,我们只需要将该配置文件中第24行前面的井号(#)删除即可。
24 mail_location = mbox:~/mail:INBOX=/var/mail/%u
然后切换到配置Postfix服务程序时创建的boss账户,并在家目录中建立用于保存邮件的目录。记得要重启Dovecot服务并将其添加到开机启动项中。至此,对Dovecot服务程序的配置部署步骤全部结束。
su - boss
mkdir -p mail/.imap/INBOX
exit
systemctl restart dovecot
systemctl enable dovecot