❶ 電腦里的DHCP是什麼
DHCP(Dynamic Host Configuration Protocol,動態主機配置協議)是一個區域網的網路協議,使用UDP協議工作, 主要有兩個用途:給內部網路或網路服務供應商自動分配IP地址,給用戶或者內部網路管理員作為對所有計算機作中央管理的手段,在RFC 2131中有詳細的描述。DHCP有3個埠,其中UDP67和UDP68為正常的DHCP服務埠,分別作為DHCP Server和DHCP Client的服務埠;546號埠用於DHCPv6 Client,而不用於DHCPv4,是為DHCP failover服務,這是需要特別開啟的服務,DHCP failover是用來做「雙機熱備」的。
DHCP協議採用客戶端/伺服器模型,主機地址的動態分配任務由網路主機驅動。當DHCP伺服器接收到來自網路主機申請地址的信息時,才會向網路主機發送相關的地址配置等信息,以實現網路主機地址信息的動態配置。DHCP具有以下功能:
1. 保證任何IP地址在同一時刻只能有一台DHCP客戶機所使用。
2. DHCP應當可以給用戶分配永久固定的IP地址。
3. DHCP應當可以同用其他方法獲得IP地址的主機共存(如手工配置IP地址的主機)。
4. DHCP伺服器應當向現有的BOOTP客戶端提供服務。
DHCP有三種機制分配IP地址:
1) 自動分配方式(Automatic Allocation),DHCP伺服器為主機指定一個永久性的IP地址,一旦DHCP客戶端第一次成功從DHCP伺服器端租用到IP地址後,就可以永久性的使用該地址。
2) 動態分配方式(Dynamic Allocation),DHCP伺服器給主機指定一個具有時間限制的IP地址,時間到期或主機明確表示放棄該地址時,該地址可以被其他主機使用。
3) 手工分配方式(Manual Allocation),客戶端的IP地址是由網路管理員指定的,DHCP伺服器只是將指定的IP地址告訴客戶端主機。
三種地址分配方式中,只有動態分配可以重復使用客戶端不再需要的地址。
❷ 【干貨】速度收藏!DHCP伺服器簡介及配置圖文教程
【 干貨】速度收藏! DHCP伺服器 簡介及 配置 圖文 教程
想必熟悉區域網的小夥伴,對於DHCP伺服器一定不陌生,在一個計算機比較多的網路中,如果網路管理員要親自為某個部門,甚至整個企業的上百台機器逐一手工分配IP地址,那麼這個效率是非常低的,其實可以通過DHCP伺服器來實現這個工作。本篇文章就為大家介紹了DHCP伺服器的概念、原理以及配置,快來看看吧!
一、什麼是 DHCP伺服器 ? DHCP伺服器 簡介
1、簡介
DHCP,(全稱Dynamic Host Configuration Protocol),即動態主機配置協議。DHCP主要在區域網使用,對IP地址進行集中管理和分配,使網路環境中的主機動態獲得IP地址、網關地址、DNS伺服器地址等信息,並提升IP地址使用率。
2、原理
DHCP是一種基於客戶/伺服器模式的服務協議,工作原理其實很簡單,是在安裝有DHCP伺服器的網路中,客戶端啟動時自動與DHCP伺服器通信,要求伺服器提供自動分配IP地址的服務,而安裝了DHCP伺服器軟體的伺服器響應這個要求,並向客戶端發送出合法的IP地址。所謂DHCP伺服器,也就是提供DHCP服務的伺服器,它是通過IP地址租約的方式為DHCP客戶端提供服務的。
DHCP客戶端通過和DHCP伺服器的交互通訊以獲得IP地址租約。為了從DHCP伺服器獲得一個IP地址,在標准情況下DHCP客戶端和DHCP伺服器之間會進行四次通訊。DHCP協議通訊使用埠UDP 67(伺服器端)和UDP 68(客戶端)進行通訊,UDP68埠用於客戶端請求,UDP67用於伺服器響應,並且大部分DHCP協議通訊使用廣播進行。
(1) DHCP DISCOVER
當DHCP客戶端處於以下三種情況之一時,觸發DHCP DISCOVER廣播消息:
1)當TCP/IP協議作為DHCP客戶端(自動獲取IP地址)進行初始化(DHCP客戶端啟動、啟用網路適配器或者連接到網路時);
2)DHCP客戶端請求某個IP地址被DHCP伺服器拒絕,通常發生在已獲得租約的DHCP客戶端連接到不同的網路中;
3)DHCP客戶端釋放已有租約並請求新的租約。
此時,DHCP客戶端發起DHCP DISCOVER廣播消息,向所有DHCP伺服器獲取IP地址租約。此時由於DHCP客戶端沒有IP地址,因此在數據包中,使用0.0.0.0作為源IP地址,然後廣播地址255.255.255.255作為目的地址。在此請求數據包中同樣會包含客戶端的MAC地址,以便DHCP伺服器進行區分。
如果沒有DHCP伺服器答復DHCP客戶端的請求,DHCP客戶端在等待1秒後會再次發送DHCP DISCOVER廣播消息。除了第一個DHCP DISCOVER廣播消息外,DHCP客戶端還會發出三個DHCP DISCOVER廣播消息,等待時延分別為9秒、13秒和16秒加上一個長度為0~1000毫秒之間的隨機時延。如果仍然無法聯系DHCP伺服器,則認為自動獲取IP地址失敗,默認情況下將隨機使用APIPA(自動專有IP地址,169.254.0.0/16)中定義的未被其他客戶使用的IP地址,子網掩碼為255.255.0.0,但是不會配置默認網關和其他TCP/IP選項,因此只能和同子網的使用APIPA地址的客戶端進行通訊。
(2) DHCP OFFER
所有接收到DHCP客戶端發送的DHCP DISCOVER廣播消息的DHCP伺服器會檢查自己的配置,如果具有有效的DHCP作用域和富餘的IP地址,則DHCP伺服器發起DHCP OFFER廣播消息來應答發起DHCP DISCOVER廣播的DHCP客戶端,此消息包含以下內容:
客戶端MAC地址;
DHCP伺服器提供的客戶端IP地址;
DHCP伺服器的IP地址;
DHCP伺服器提供的客戶端子網掩碼;
其他作用域選項,例如DNS伺服器、網關、WINS伺服器等;
租約期限等。
因此DHCP客戶端沒有IP地址,所以DHCP伺服器同樣使用廣播進行通訊:源IP地址為DHCP伺服器的IP地址,而目的IP地址為255.255.255.255。同時,DHCP伺服器為此客戶保留它提供的IP地址,從而不會為其他DHCP客戶分配此IP地址。如果有多個DHCP伺服器給予此DHCP客戶端回復DHCP OFFER消息,則DHCP客戶端接受它接收到的第一個DHCP OFFER消息中的IP地址。
(3) DHCP REQUEST
當DHCP客戶端接受DHCP伺服器的租約時,它將發起DHCP REQUEST廣播消息,告訴所有DHCP伺服器自己已經做出選擇,接受了某個DHCP伺服器的租約。
在此DHCP REQUEST廣播消息中包含了DHCP客戶端的MAC地址、接受的租約中的IP地址、提供此租約的DHCP伺服器地址等,所有其他的DHCP伺服器將收回它們為此DHCP客戶端所保留的IP地址租約,以給其他DHCP客戶端使用。
此時由於沒有得到DHCP伺服器最後確認,DHCP客戶端仍然不能使用租約中提供的IP地址,所以在數據包中仍然使用0.0.0.0作為源IP地址,廣播地址255.255.255.255作為目的地址。
( 4 ) DHCP ACK
提供的租約被接受的DHCP伺服器在接收到DHCP客戶端發起的DHCP REQUEST廣播消息後,會發送DHCP ACK廣播消息進行最後的確認,在這個消息中同樣包含了租約期限及其他TCP/IP選項信息。
如果DHCP客戶端的操作系統為Windows版本,當DHCP客戶端接收到DHCP ACK廣播消息後,會向網路發出三個針對此IP地址的ARP解析請求以執行沖突檢測,確認網路上沒有其他主機使用DHCP伺服器提供的IP地址,從而避免IP地址沖突。如果發現該IP已經被其他主機所使用(有其他主機應答此ARP解析請求),則DHCP客戶端則會廣播發送(因為它仍然沒有有效的IP地址)DHCP DECLINE消息給DHCP伺服器拒絕此IP地址租約,然後重新發起DHCP DISCOVER進程。此時,在DHCP伺服器管理控制台中,會顯示此IP地址為BAD_ADDRESS。
如果沒有其他主機使用此IP地址,則DHCP客戶端的TCP/IP使用租約中提供的IP地址完成初始化,從而可以和其他網路中的主機進行通訊。至於其他TCP/IP選項,如DNS伺服器和WINS伺服器等,本地手動配置將覆蓋從DHCP伺服器獲得的值。
二、 DHCP SERVER (RELAY)配置方式
1、相關配置文件
埠號:ipv4 udp 67(源埠:接收客戶端請求的)、 udp 68(目的埠:向客戶端發送請求成功或失敗的回應)、ipv6 udp 546、udp 547
服務名:dhcpd、dhcrelay
主配置文件:/etc/dhcp/dhcpd.conf
模板文件:/usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample
中繼配置文件:/etc/sysconfig/dhcrelay
執行程序:/usr/sbin/dhcpd、/usr/sbin/dhcrelay
服務腳本:/etc/init.d/dhcpd、/etc/init.d/dhcrelay
執行參數配置:/etc/sysconfig/dhcpd
查看租約文件:/var/lib/dhcpd/dhcpd.lease
很多網路服務的排錯日誌:/var/log/messages
2、配置步驟
(1)操作前的准備
防火牆臨時關閉:iptables –F
防火牆永久關閉:/etc/init.d/iptables stop
查看防火牆狀態:iptables -L
selinux臨時關閉:setenforce 0
selinux永久關閉:sed –i「7s/enforcing/disabled/g」/etc/selinux/config
(2)客戶端配置
1、關閉防火牆和selinux
2、自己在虛擬網路編輯器創建一個區域網的網卡,並設置好網段,取消虛擬網路編輯器的DHCP自動分配功能
3、進入客戶機設置IP地址為自動獲取(就是讓DHCP選項生效),然後用service network restart 重啟客戶機網卡,到這里客戶端就設置完成。
(3)服務端配置
1、進入服務機設置IP地址、網關和虛擬網路編輯器那個網卡的網段一致,然後重啟網卡;
2、配置yum源,掛載光碟,然後用yum -y install dhcp安裝dhcp軟體;
3、進入dhcp配置文件/etc/dhcp/dhcpd.conf發現裡面是空的,然後把dhcp模板文件中的內容導入dhcp 配置文件;
4、將配置文件的前幾個subnet聲明注釋掉,修改最後一個subnet的聲明;
5、修改完成後保存退出,用service dhcpd configtest測試文件是否有錯誤;
6、然後用service dhcpd start 重啟dhcp服務;
7、重啟客戶機網卡,看能不能獲取到服務機地址池的IP地址;
8、為某台主機設置IP地址保留,把要保留IP的MAC地址和要保留的IP地址寫入dhcpd.conf的配置文件即可,然後設置客戶機為自動獲取IP;
9、用ifdown eth0停止服務機網卡,再用ifup eth0開啟網卡,然後用service dhcpd start 重啟dhcp服務,看客戶機能不能獲取到指定IP。
3、中繼代理配置
interface f0/0
ip helper-address 1.1.1.1
ip dhcp relay information trust
update arp開啟定期ARP詢問
interfaca g0/0/2
arp authorized禁止動態更新ARP
arp timeout 60 60s無應答則刪除ARP條目
ip dhcp snooping vlan 20 vlan20開啟snooping
interface f0/0定義信任埠
ip dhcp snooping trust交換機連接DHCP伺服器埠設為trusted
dhcp snooping bind-table static ip-address ip-address mac-address mac-address interface g0/0#配置IP與MAC靜態綁定表
interface vlan 1
ip add dhcp-alloc #立即發送DHCP-discover報文,1-10s內隨機發送,如果沒有收到DHCP伺服器的回應報文繼續發送,直到回應為止
dhcp selsect global all #全局分配地址
dhcp server group dhcp-relay
dhcp-server 10.1.1.1組里有多個dhcp伺服器
interface vlan 2
dhcp select relay
dhcp relay server-select dhcp-relay
display dhcp server ip-in-use all #查看地址池可用地址信息
reset dhcp server ip-in-use all #重置正在使用的IP地址
address-check enable dhcp #中繼的安全特性
ip dhcp relay information trust-all合法的DHCP服務路由,為了形成一個綁定表
no ip dhcp conflict logging關閉DHCP沖突日誌
display ip interface br
❸ dhcp伺服器軟體包的名稱
一、dhcp簡述
dhcp:應用層協議
Dynamic Host Configuration Prototocl 動態主機配置協議
作用:動態的分配tcp/ip參數
DHCP是Dynamic Host Configuration Protocol的英文縮寫,中文名稱是:動態主機配置協議,主要作用就是給計算機分配IP地址,運行DHCP服務的網路設備就叫做DHCP伺服器。PS∶普通的計算機、伺服器、路由器等都可以運行DHCP服務。
二、dhcp服務的實現
使用的軟體:dhcp
安裝dhcp軟體的命令:yum install dhcp -y
配置文件:/etc/dhcp/dhcpd.conf
服務名稱:dhcpd
使用的埠:67,基於udp協議
❹ 如何搭建DHCP及DHCP中繼伺服器
1.安裝DHCP伺服器軟體包
先檢查RPM命令檢查系統中是否已經安裝DHCP軟體包,如果沒有安裝,則掛載RHEL5系統光碟,並安裝其中的dhcp- 3.0.5.el5.i386.rpm軟體包即可
查看dhcp軟體包安裝的主要文件
使用vi打開dhcp伺服器的主配置文件/etc/dhcpd.conf,但是該文件中默認並不包含任何有效配置,需要手動建立。
為各客戶機動態分配的ip地址,默認租約時間為21600秒,最大租約時間為43200秒,對應於三個物理網段,用於動態分配的ip地址范圍:192.168.1.10~192.168.1.100、192.168.2.10~192.168.2.100、192.168.3.10~192.168.3.100
啟動dhcpd服務。
打開命令參數配置文件/etc/sysconfig/dhcpd,設置dhcpd服務僅面向eth0、eth1、eth2網卡提供動態地址分配服務。
配置dhcp中繼伺服器。
在RHEL5系統中,安裝dhcp軟體包,安裝完之後,就已經包含了dhcp中繼相關的程序和腳本等文件。配置dhcp中繼伺服器時,只需修改配置文件/etc/sysconfig/dhcrelay服務即可,作為路由器使用時,還需要開啟伺服器的路由轉發功能。
編輯/etc/sysctl.conf文件,將net.ipv4.ip_forward配置項的值修改為1,並執行sysctl -p命令使之生效。
打開dhcp中繼伺服器的配置文件,設置允許dhcp中繼數據的介面及dhcp伺服器的ip地址。
啟動dhcrelay中繼服務程序。
驗證dhcp結果。
修改測試客戶機的虛擬網卡連接方式,分別使用不同的網卡進行測試。確保能夠通過dhcp方式獲取正確的網路地址配置(兩種方法)。
1. 如果測試客戶機使用Linux系統,則進行dhclient eth0命令獲取地址,或者修改eth0網卡的配置文件,設置BOOTPROTO=dhcp,然後重啟network服務。
2. 如果測試客戶機使用windows系統,則打開cmd命令窗口,執行ipconfig/release命令釋放租約,執行ipconfig/renew命令重新獲取地址。
❺ dhcp server 那個軟體怎麼用
dhcp伺服器是分配ip的.dns是域名解析的.可以是同一地址.
注意.不是dna伺服器.是dns伺服器.
❻ 怎麼在linux安裝dhcp
一.首先了解DHCP的概念
DHCP是實現主機IP地址DNS等動態配置的網路協議.
DNCP可以在多種操作系統中實現,包括最常用的LINUX系統和WINDOWS系統
DHCP網路服務的結構中具有伺服器和客戶機兩個角色
DHCP伺服器用於為網路中所有的DHCP客戶機提供網路配置信息,在同一網路中,
DHCP伺服器通常是唯一存在在.
網路中的任何主機都可以配置成為DHCP客戶機,向DHCP伺服器發出配置請求並按照伺服器返回的信息進行網路配置
二.DHCP伺服器能夠提供的網路配置信息
1.網路介面的IP地址和子網掩碼.
2.網路介面的IP地址對應的網路地址和廣播地址
3.默認網關地址
4.DNS伺服器地址
三.DHCP伺服器的配置
1.安裝DHCP伺服器軟體(在RHEL4系統的安裝光碟中包括RPM格式的DHCP伺服器軟體包,包文件的名稱是dhcp-3.0.1-12_EL.i386.rpm),在RHEL4的第4安裝光碟中,在同一張安裝盤中還包括與DHCP相關的其它軟體包
# cd /media/cdrom/rehat/rpms/
#ks -l dhcp*
dhcp-3.0.1-12_EL.i386,rpm在REL4中沒有被默認安裝,需要手動安裝
#rpm -qa | grep dhcp
#rpm -ivh dhcp-3.0.1-12_EL.i386.rpm
2.其中/usr/sbin/dhcpd 是DHCP伺服器的執行文件,/etc/rc.d/init.d/dhcpd是DHCP伺服器的啟動腳本,雖然文件名都是DHCPD,但是文件位於不同的目錄,功能也不一樣.
DHCPD.CONF配置文件以及建立配置文件和配置文件的格式
#ls /etc/dhcp*
#vi /etc/dhcpd.conf
如:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
}
3.全局設置
全局設置是DHCPD.CONF配置文件中不包括在任何聲明中的配置項(參數或選項),
作用於整個配置文件.當聲明中沒有相應的配置項時將使用全局配置項的設置,當聲明
中有相應的設置項時將使用本聲明中設置,而不採用全局設置項的值.
DHCP.CONF配置文件中常用的全局設置如下:
1) ddns-update-style參數用來設置DHCP伺服器與DNS伺服器的動態信息更新模式.
2) 默認租約時間使用default-lease-time參數設置,參數值的單位是秒.
3) 最大租約時間使用max-lease-time參數設置,參數值的單位是秒.
4) 主機所在域的名稱使用domain-name先項進行設置,設置的域名將與主機名稱一起組成
主機全名
5)DNS伺服器地址使用domain-name-servers選項進行設置,設置的值為DHCP客戶端需要使用的DNS伺服器的IP地址.
6)使用subnet聲明設置子網屬性
subnet 是DHCP.CONF文件中最常用的聲明,用於在子網中設置動態分配的地址的網路屬性,subnet聲明中可包括其他的參數.就不再說了.
4.DHCP伺服器的啟動與停止及重起\和DHCP服務的狀態
#service dhcpd start
#service dhcpd stop
#service dhcpd restart
#service dhcpd status
三.DHCP配置實例
如
默認租約時間為21600S
最大租約時間為43200S
區域網內所有主機動的域名為abc.com
客戶機使用的DNS伺服器的IP地址是192.168.1.1
聲明在子網192.168.1.0/24中用於動態分配的IP地址范圍是192.168.1.100~~~192.168.1.200所分配的子網掩碼是255.255.255.0默認網關是192.168.1.1
在子網192.168.1.0/24中有名為server01的伺服器主機,需要的固定分配IP地址是192.168.1.1,
#vi /etc/dhcpd.conf
ddns-update-style interim;
default-lease-time 21600;
max-lease-time 43200;
option domaion-name "abc.com;
option domain-name-servers 192.168.1.1;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option subnet-mask 255.255.255.0;
option routers 192.168.1.1;
host server01 {
hardware ethernet bo:co:c3:22:46:81;
fixed-address 192.168.1.11;
}
}
❼ 誰幫忙推薦一個免費的DHCP服務軟體啊小巧好用的,就幾台電腦
這東西還要軟體,軟體就是伺服器自帶的組件,如果你覺得搞伺服器很麻煩的話,去買一個小的soho路由器,就幾十塊錢,只要你點幾下滑鼠馬上搞定。
用不著那麼麻煩,免費的軟體? 你想想會穩定嗎?
❽ 用易語言怎麼編寫DHCP伺服器軟體
自己寫倆軟體 一個建個伺服器組件 一個是客戶端組件
客戶端連接上伺服器以後 發送數據 最前面加個標識符 比如前面加個Y是用戶名 M是密碼
然後伺服器收到數據以後 判斷以下收到的數據取文本最前面標識符是什麼 然後相應自己寫出到一個TXT文件里保存
以此類推 以這種發送封包然後伺服器判斷封包標識符來保存這些數據
伺服器最後再加上 判斷客戶端登錄的帳號 然後發送數據 也是用封包傳送 等級 物品 金錢之類的東西 客戶端登錄成功以後 通過伺服器來獲取這些信息
如果你覺得麻煩的話直接保存到他本地的文件里 寫配置項然後加密 保存到C盤他一般找不到的地方 然後每次打開的時候讀取本地保存的配置項就可以了
❾ CA證書與DHCP服務
1、創建私有CA並進行證書申請。
1 :創建 CA 私鑰
$ openssl genrsa -des3 -out ca.key 4096
2 :生成 CA 的自簽名證書,其實 CA 證書就是一個自簽名證書
$ openssl req -new -x509 -days 365 -key ca.key -outca.crt
3 :生成需要頒發證書的私鑰
$ openssl genrsa -des3 -out server.key 4096
4 :生成要頒發證書的證書簽名請求
Ps:證書簽名請求當中的 Common Name 必須區別於 CA 的證書裡面的 Common
Name
$ openssl req -new -key server.key -out server.csr
5 :創建一個ext文件,內容如下
keyUsage = nonRepudiation, digitalSignature,keyEncipherment
extendedKeyUsage = serverAuth, clientAuth
subjectAltName=@SubjectAlternativeName
[ SubjectAlternativeName ]
DNS.1=abc.com
DNS.2=*.abc.com
6 :用 2 創建的 CA 證書給 4 生成的 簽名請求 進行簽名
$ openssl x509 -req -days 365 -extfile http.ext -inserver.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt
7 :最終會得到一下幾個文件
ca.crt: 這個是ca證書,客戶端信任該證書意味著會信任該證書頒發出去的所有證書
ca.key: ca證書的密鑰
server.key: 伺服器密鑰,需要配置的
server.csr: 證書簽名請求,通常是交給CA機構,這里我們就自己解決了
server.crt: 伺服器證書,需要配置的
2、總結ssh常用參數、用法
ssh命令是ssh客戶端,允許實現對遠程系統經驗證地加密安全訪問。ssh客戶端配置文件是:/etc/ssh/ssh_config
ssh
命令配合的常見選項:
-p port
:遠程伺服器監聽的埠
ssh 192.168.1.8 -p 2222
-b
指定連接的源IP
ssh 192.168.1.8 -p 2222 -b 192.168.1.88
-v
調試模式
ssh 192.168.1.8 -p 2222 -v
-C
壓縮方式
-X
支持x11轉發支持將遠程linux主機上的圖形工具在當前設備使用
-t
強制偽tty分配,如:ssh -t remoteserver1 ssh -t remoteserver2 ssh
remoteserver3
-o option
如:-oStrictHostKeyChecking=no
-i
指定私鑰文件路徑,實現基於key驗證,默認使用文件:~/.ssh/id_dsa,
~/.ssh/id_ecdsa,/.ssh/id_ed25519
,/.ssh/id_rsa等
3、總結sshd服務常用參數。伺服器端的配置文件: /etc/ssh/sshd_config
常用參數:
Port #
埠號
ListenAddress ipLoginGraceTime 2m #
寬限期
PermitRootLogin yes #
默認ubuntu不允許root遠程ssh登錄
StrictModes yes #
檢查.ssh/文件的所有者,許可權等
MaxAuthTries 6
MaxSessions 10 #
同一個連接最大會話
PubkeyAuthentication yes #
基於key驗證
PermitEmptyPasswords no #
空密碼連接
PasswordAuthentication yes #
基於用戶名和密碼連接
GatewayPorts no
ClientAliveInterval 10 #
單位:秒
ClientAliveCountMax 3 #
默認3
UseDNS yes #
提高速度可改為no
GSSAPIAuthentication yes #
提高速度可改為no
MaxStartups #
未認證連接最大值,默認值10
Banner /path/file
以下可以限制可登錄用戶的辦法:
AllowUsers user1 user2 user3
DenyUsers
AllowGroups
ssh
服務的最佳實踐建議使用非默認埠禁止使用protocol version 1
限制可登錄用戶設定空閑會話超時時長利用防火牆設置ssh訪問策略僅監聽特定的IP地址基於口令認證時,使用強密碼策略,比如:tr -dc A-Za-z0-9_ < /dev/urandom| head -c 12|
xargs
使用基於密鑰的認證禁止使用空密碼禁止root用戶直接登錄限制ssh的訪問頻度和並發在線數經常分析日誌
4、搭建dhcp服務,實現ip地址申請分發
一、配置DHCP伺服器
1、安裝DHCP伺服器軟體
[root@centos01 ~]# mount /dev/cdrom /mnt/<!--掛載操作系統光碟-->
mount: /dev/sr0 防寫,將以只讀方式掛載
[root@centos01 ~]# rm -rf /etc/yum.repos.d/CentOS-*<!--刪除系統自動yum源-->
[root@centos01 ~]# yum -y install dhcp<!--安裝DHCP服務 -->
2、建立主配置文件dhcpd.conf
[root@centos01 ~]# vim /etc/dhcp/dhcpd.conf<!--編輯主配置文件-->
:r /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example<!--讀取默認配置文件-->
ddns-update-style none;<!--禁用DNS動態更新-->
option domain-name "benet.com";<!--指定默認搜索域-->
option domain-name-servers 202.106.0.10, 202.106.0.20;
<!--指定DNS伺服器地址-->
default-lease-time 600;<!--默認租約時間-->
max-lease-time 7200;<!--最大租約時間-->
1)/etc/dhcp/dhcpd.conf文件的配置構成
在主配置文件dhcpd.conf中,可以使用聲明、參數、選項這三種類型的配置,各自的作用和表現形式如下所述:
聲明:用來描述dhcpd伺服器中對網路布局的劃分,是網路設置的邏輯范圍。常見的聲明是subnet、host,其中subnet聲明用來約束一個網段。host聲明用來約束一台特定主機。
參數:由配置關鍵字和對應的值組成,總是以「;」(分號)結束,一般位於指定的聲明範圍之內,用來設置所在范圍的運行特性(如默認租約時間、最大租約時間等)。
選項:由「option」引導,後面跟具體的配置關鍵字和對應的值,也是以「;」結束,用於指定分配給客戶機的各種地址參數(如默認網關地址、子網掩碼、DNS伺服器地址等)。
2)確定dhcpd服務的全局配置
為了使配置文件的結構更加清晰、全局配置通常會放在配置文件dhcod.conf的開頭部分,可以是配置參數,也可以是配置選項。常用的全局配置參數和選項如下所述:
ddns-update-style:動態DNS更新模式。用來設置與DHCP服務相關聯的DNS數據動態更新模式。在實際的DHCP應用中很少用到該參數。將值設為「none」即可。
default-lease-time:默認租約時間。單位為秒,表示客戶端可以從DHCP伺服器租用某個IP地址的默認時間。
max-lease-time:最大租約時間。單位為秒,表示允許DHCP客戶端請求的最大租約時間,當客戶端未請求明確的租約時間時,伺服器將採用默認租約時間。
option domain-name:默認搜索區域。未客戶機指定解析主機名時的默認搜索域,該配置選項將體現在客戶機的/etc/resolv.conf配置文件中,如「search benet.com」。
option domain-name-servers:DNS伺服器地址。為客戶端指定解析域名時使用的DNS伺服器地址,該配置選項同樣將體現在客戶機的/etc/resolv.conf配置文件中,如「nameserver 202.106.0.20」。需要設置多個DNS伺服器地址時,以逗號進行分隔。
3)確定subnet網段聲明
一台DHCP伺服器可以為多個網段提供服務,因此subnet網段聲明必須有而且可以有多個。例如,若要DHCP伺服器為192.168.100.0/24網段提供服務,用於自動分配的IP地址范圍為192.168.100。100~192.168.100.200,為客戶機指定默認網關地址為192.168.100.254,則ke可以修改dhcpd.conf配置文件,參考以下內容調整subnet網段聲明:
[root@centos01 ~]# vim /etc/dhcp/dhcpd.conf<!--編輯主配置文件-->
subnet 192.168.100.0 netmask 255.255.255.0 {<!--聲明網段地址-->
range 192.168.100.100 192.168.100.200;<!--設置地址池,可以有多個-->
option routers 192.168.100.254;<!--指定默認網關地址-->
}
4)確定host主機聲明
host聲明用於設置單個主機的網路屬性,通常用於為網路列印機或個別伺服器分配固定的IP地址(保留地址),這些主機的共同特點是要求每次獲取的IP地址相同,以確保服務的穩定性。
host聲明通過host關鍵字指定需要使用保留地址的客戶機名稱,並使用「hardware ethernet」參數指定該主機的MAC地址,使用「fixed-address」參數指定保留給該主機的IP地址。例如,若要為列印機prtsvr(MAC地址為00:0C:29:0D:BA:6B)分配固定的IP地址192.168.100.101,可以修改dhcpd.conf配置文件,參考以下內容在網段聲明內添加host主機聲明。
C:\Users\Administrator>getmac
物理地址 傳輸名稱
=================== =======================================================
00-0C-29-0D-BA-6B \Device\Tcpip_{92E3F48B-40F0-4A0D-9604-6386AAAE3233}<!--客戶端獲取MAC地址-->
[root@centos01 ~]# vim /etc/dhcp/dhcpd.conf
host win7 {
hardware ethernet 00:0C:29:0D:BA:6B;<!--客戶機的MAC地址-->
fixed-address 192.168.100.101;<!--分配給客戶機的IP地址-->
}
3、啟動dhcpd服務
在啟動dhcpd服務之前,應確認提供DHCP伺服器的網路介面具有靜態指定的固定IP地址,並且至少有一個網路介面的IP地址與DHCP伺服器中的一個subnet網段相對應,否則將無法正常啟動dhcpd服務。例如,DHCP伺服器的IP地址為192.168.100.10,用於為網段192。168.100.0/24內的其他客戶機提供自動分配地址服務。
安裝dhcp軟體包以後,對應的系統服務腳本位於/usr/lib/systemd/system/dhcpd.service,可以使用systemd服務進行控制。例如,執行以下操作可以啟動dhcpd服務,並檢查UDP的67埠是否在監聽,以確認DHCP伺服器是否正常。
[root@centos01 ~]# systemctl start dhcpd<!--啟動dhcp服務-->
[root@centos01 ~]# systemctl enable dhcpd<!--設置服務開機自動啟動-->
[root@centos01 ~]# netstat -anptu | grep 67<!--監聽DHCP服務埠號-->
udp 0 0 0.0.0.0:67 0.0.0.0:* 2102/dhcpd
udp 0 0 0.0.0.0:67 0.0.0.0:* 1064/dnsmasq
注意:需要關閉、重啟dhcpd服務時,只要將上述操作命令中的「start」改為「stop」或「restart」即可。
二、使用DHCP客戶端
1、windows客戶端
ipconfig /renew<!--可以為主機重新獲取新的IP地址-->
ipconfig /release<!--釋放IP地址-->
tracert IP地址<!--可以測試從當前主機到目的主機經過的網路節點-->
route print<!--查看路由表-->
2、Linux客戶端
在Linux客戶機中可以設置使用DHCP的方式獲取地址。只需要編輯對應網卡的配置文件,修改或添加「BOOTPROTO=dhcp」配置行,並重新載入配置文件或者重新啟動network服務即可。例如,執行以下操作可修改網卡配置文件,並重新載入配置以通過DHCP方式自動獲取地址:
[root@centos02 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
NAME=ens32
DEVICE=ens32
ONBOOT=yes
[root@centos02 ~]# ifdown ens32 ; ifup ens32
[root@centos02 ~]# systemctl restart network
在Linux客戶機中,還可以使用dhclient工具來測試DHCP伺服器。若直接執行「dhclient」命令,則dhclient將嘗試為除回環介面lo以外的所有網路介面通過DHCP方式申請新的地址,然後自動轉入後台繼續運行。當然,測試時可以指定一個具體的網路介面,並結合「-d」選項使其在前台運行,測試完畢後按Ctrl+C組合鍵終止。例如,執行「dhclient -d ens32」命令後,可以為網卡ens32自動獲取新的IP地址,並顯示獲取過程。
[root@centos02 ~]# dhclient -d ens32
Internet Systems Consortium DHCP Client 4.2.5
Copyright 2004-2013 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Listening on LPF/ens32/00:0c:29:97:5c:9f
Sending on LPF/ens32/00:0c:29:97:5c:9f
Sending on Socket/fallback
DHCPDISCOVER on ens32 to 255.255.255.255 port 67 interval 4 (xid=0x5364e17f)
DHCPDISCOVER on ens32 to 255.255.255.255 port 67 interval 6 (xid=0x5364e17f)
DHCPDISCOVER on ens32 to 255.255.255.255 port 67 interval 14 (xid=0x5364e17f)<!--DHCP發現-->
DHCPREQUEST on ens32 to 255.255.255.255 port 67 (xid=0x5364e17f)<!--DHCP請求-->
DHCPOFFER from 192.168.100.10<!--DHCP提供-->
DHCPACK from 192.168.100.10 (xid=0x5364e17f)<!--DHCP確認-->
bound to 192.168.100.102 -- renewal in 229 seconds.
............<!--按Ctrl+C組合鍵終止-->
客戶端需要通過dhclient命令釋放獲取的IP租約時,可以結合「-r」選項。例如,執行以下的「dhclient -r ens32」將會釋放之前為網卡ens32獲取的IP租約。此時再通過執行「ifconfig ens32」命令就看不到分配的IP地址了。
[root@centos02 ~]# dhclient -r ens32