1. 程式人生 > >在 CentOS 中部署 KMS 伺服器(vlmcsd)

在 CentOS 中部署 KMS 伺服器(vlmcsd)

準備 vlmcsd

下載 vlmcsd

本文使用的 vlmcsd 版本為 svn1111,支援的產品:

  • Windows Vista – 10
  • Windows Server 2008 - 2016
  • Office 2013 - 2019
  • Visio 2013 - 2019
  • Project 2013 – 2019

需要的可以點選此處下載已製作成 ISO 映象檔案的 vlmcsd 安裝檔案。

或者從 進行下載,然後製作成 ISO 映象檔案(注:需科學上網,並註冊下載網站的會員)。

製作 vlmcsd ISO 映象檔案

此步驟僅適用於從 vlmcsd釋出頁下載的 vlmcsd

將下載的 vlmcsd 解壓縮(解壓密碼請檢視 vlmcsd釋出頁上的說明),並製作成 ISO 映象檔案。

注:將 vlmcsd 的內容直接放在映象檔案根目錄下。

安裝 CentOS 6.8

本文使用的虛擬機器軟體為:VMware Wrokstation,安裝的 CentOS 版本對應的映象檔案為:CentOS-6.8-i386-minimal.iso,需要的可以點選此處進行下載,或從各大 Linux 映象站點進行下載。

注:硬體相容性選擇 Workstation 6,並且安裝最小系統即可。

虛擬機器只保留基本的硬體(光碟機可在 vlmcsd 全部安裝完成後移除,需使用光碟機時可再次新增),選項中的內容無需更改,如圖:

安裝 vlmcsd

注:以下命令均以 root 許可權執行,可使用 su

命令臨時切換至 root 許可權。

載入 ISO 映象到光碟機

將準備好的 vlmcsd 的 ISO 映象檔案載入到光碟機。

注意:虛擬機器硬體中已指明光碟機使用主機上的哪個驅動器,不要載入錯了。

掛載光碟機到 CentOS

步驟及命令如下:

  1. 在 /mnt 目錄下建立 cdrom 目錄:mkdir /mnt/cdrom
  2. 掛載光碟機:mount /dev/cdrom /mnt/cdrom

若不確定光碟機的名稱,可使用如下命令確定:

ls -l /dev | grep cdrom,如圖:

複製檔案並賦予執行許可權

步驟及命令如下:

  1. 建立目錄:mkdir /usr/local/vlmcsd
  2. 進入目錄:cd /mnt/cdrom/ binaries/linux/intel/glibc
  3. 復件檔案並重命名:cp vlmcsd-x86-glibc /usr/local/vlmcsd/vlmcsd
  4. 進入目錄:cd /usr/local/vlmcsd
  5. 賦予執行許可權:chmod 755 vlmcsd

設定防火牆規則

vlmcsd 使用 tcp 協議的 1688 埠進行通訊,所以必須開啟 1688 埠,否則客戶機將無法連線至 KMS 伺服器,步驟及命令如下:

CentOS 6:

  1. 新增規則:iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT
  2. 儲存規則:service iptables save
  1. 重啟 CentOS:shutdown -h now

CentOS 7:

  1. 停止自帶防火牆:systemctl stop firewalld.service
  2. 禁止自帶防火牆開機自啟動:systemctl disable firewalld.service
  3. 安裝 iptables:yum install iptables-services

安裝其間可能會有 1-2 次確認,輸入 y 後回車即可。

若已安裝 iptables 則忽略此步驟,可通過檢查 /etc/sysconfig 目錄下是否存在 iptables 檔案來確定,命令如下:

ls -l /etc/sysconfig | grep iptables,結果如圖:

  1. 開啟 /etc/sysconfig/iptables 檔案:vi /etc/sysconfig/iptables
  2. 新增防火牆規則

在 -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT 後新增以下兩行內容:

# vlmcsd port(這是一行註釋)

-A INPUT -p tcp -m state --state NEW -m tcp --dport 1688 -j ACCEPT

  1. 重啟 iptables 使配置生效:systemctl restart iptables.service
  2. 設定 iptables 開機自啟動:systemctl enable iptables.service

設定 vlmcsd 開機自啟動

  1. 將以下內容新增到 /etc/rc.local:

echo "/usr/local/vlmcsd/vlmcsd -l /var/log/vlmcsd.log > /dev/null 2>&1" >> /etc/rc.local

注:-l /var/log/vlmcsd.log 用於記錄日誌。

  1. 設定許可權:chmod +755 /etc/rc.local

注:此命令可暫時忽略,若測試不成功再執行此命令。

修改IP設定

  1. 檢視所有網絡卡的狀態,以確定使用的網絡卡的名稱:ifconfig -a

注:網絡卡的名稱通常為:eth0

  1. 編輯網絡卡配置檔案:vi /etc/sysconfig/network-scripts/ifcfg-eth0

隨系統啟動:ONBOOT=noONBOOT=yes

IP 分配方式:BOOTPROTO=dhcpBOOTPROTO=static

BOOTPROTO=static,則:

IP 地址:IPADDR=192.168.1.x

子網掩碼:NETMASK=255.255.255.0

閘道器:GATEWAY=192.168.1.1

DNS:DNS1=202.96.128.166

      DNS2=202.96.134.133

注:實際使用時,根據網路情況替換為合適的 IP地址、子網掩碼、閘道器及DNS

  1. 重啟 CentOS:shutdown -h now

注意事項

  1. 在防火牆規則新增完成後,可先手動執行 vlmcsd,命令如下:

/usr/local/vlmcsd/vlmcsd

  1. 如果 1688 埠被其它程式佔用,會有如下報錯:

Warning: 0.0.0.0:1688: Address already in use

Fatal: Could not listen on any socket.

  1. 如需確認 vlmcsd 是否已執行,可使用如下命令:

ps aux | grep vlmcsd,結果如圖:

最後奉上已經部署好 vlmcsd 的 VMware Workstation 虛擬機器檔案,需要的點選此處進行下載。