外貿(mào)建網(wǎng)站免費(fèi)模板東莞搜索seo網(wǎng)站關(guān)鍵詞優(yōu)化
前些天發(fā)現(xiàn)了一個(gè)巨牛的人工智能學(xué)習(xí)網(wǎng)站,通俗易懂,風(fēng)趣幽默,忍不住分享一下給大家。點(diǎn)擊跳轉(zhuǎn)到網(wǎng)站。
簡介
FreeIPA 是一個(gè)針對(duì) Linux 的開源安全解決方案,提供帳戶管理和集中式身份驗(yàn)證,類似于微軟的 Active Directory。FreeIPA 基于多個(gè)開源項(xiàng)目構(gòu)建,包括 389 目錄服務(wù)器、MIT Kerberos 和 SSSD。
FreeIPA 客戶端適用于 CentOS 7、Fedora 和 Ubuntu 14.04/16.04。這些客戶端使得將機(jī)器添加到 IPA 域相當(dāng)簡單。其他操作系統(tǒng)可以使用 SSSD 或 LDAP 進(jìn)行 FreeIPA 身份驗(yàn)證。
在本教程中,我們將在 CentOS 7 服務(wù)器上安裝 FreeIPA 服務(wù)器。然后,您可以配置客戶端機(jī)器,允許 FreeIPA 用戶使用他們的 IPA 憑據(jù)登錄。
在按照本教程操作后,您可以在 Ubuntu 16.04 上配置 FreeIPA 客戶端,或者在 CentOS 7 上配置 FreeIPA 客戶端。
先決條件
要按照本教程操作,您需要:
-
一臺(tái)至少具有 1GB RAM 的 CentOS 7 服務(wù)器。默認(rèn)情況下,CentOS 7 只使用 root 用戶。因?yàn)槲覀儗⑹褂?FreeIPA 管理用戶,所以不需要手動(dòng)添加另一個(gè)用戶。您可以簡單地按照本教程使用 root 用戶。
-
服務(wù)器上啟用了防火墻,您可以按照 CentOS 7 教程中的防火墻步驟進(jìn)行設(shè)置。這是強(qiáng)烈建議的,因?yàn)?FreeIPA 處理敏感用戶憑據(jù)。
-
完全注冊的域,用于服務(wù)器和客戶端。您可以在 Namecheap 上購買一個(gè),或者在 Freenom 上免費(fèi)獲取一個(gè)。
-
為您的服務(wù)器設(shè)置以下 DNS 記錄。您可以按照主機(jī)名教程中的詳細(xì)信息進(jìn)行設(shè)置。
- 一個(gè) A 記錄,將您的服務(wù)器名稱(例如
ipa.example.com
)指向您服務(wù)器的 IPv4 地址。 - 一個(gè) AAAA 記錄,將您的服務(wù)器名稱指向您服務(wù)器的 IPv6 地址,如果您希望通過 IPv6 訪問您的服務(wù)器。
- 一個(gè) A 記錄,將您的服務(wù)器名稱(例如
-
可選地,使用
yum install nano
安裝nano
文本編輯器。CentOS 默認(rèn)使用vi
文本編輯器,但nano
可能更加用戶友好。
步驟 1 — 準(zhǔn)備 IPA 服務(wù)器
在開始安裝任何內(nèi)容之前,我們需要做一些事情,以確保服務(wù)器準(zhǔn)備好運(yùn)行 FreeIPA。具體來說,我們將設(shè)置服務(wù)器主機(jī)名,更新系統(tǒng)軟件包,檢查先決條件中的 DNS 記錄是否已傳播,并確保防火墻允許流量到 FreeIPA。
首先,您的服務(wù)器的主機(jī)名需要與您的完全合格域名(FQDN)匹配,以使 FreeIPA 正常工作。在本教程中,我們將使用 ipa.example.com
作為 FQDN。
您可以在創(chuàng)建服務(wù)器時(shí)設(shè)置主機(jī)名,也可以在創(chuàng)建服務(wù)器后使用 hostname
命令從命令行設(shè)置主機(jī)名:
hostname ipa.example.org
現(xiàn)在,使用 yum
更新軟件包存儲(chǔ)庫。
yum update
接下來,在防火墻中打開 FreeIPA 所需的端口。
firewall-cmd --permanent --add-port={80/tcp,443/tcp,389/tcp,636/tcp,88/tcp,464/tcp,53/tcp,88/udp,464/udp,53/udp,123/udp}
重新加載防火墻,以使更改生效。
firewall-cmd --reload
最后,您需要驗(yàn)證 DNS 名稱是否正確解析。您可以使用 dig
命令進(jìn)行此操作。安裝 bind-utils
軟件包以獲取 dig
和其他 DNS 測試實(shí)用程序。
yum install bind-utils
然后使用 dig
檢查 A 記錄。
dig +short ipa.example.org A
這應(yīng)該返回 your_server_ipv4
。
如果啟用了 IPv6,您可以以相同的方式測試 AAAA 記錄。
dig +short ipa.example.org AAAA
這應(yīng)該返回 your_server_ipv6
。
您還可以測試反向查找。這會(huì)測試您是否可以從 IP 地址解析主機(jī)名。
dig +short -x your_server_ipv4
dig +short -x your_server_ipv6
這兩者都應(yīng)返回 ipa.example.com.
FreeIPA 大量使用 DNS,因此在下一步中,我們將確保我們的服務(wù)器滿足 FreeIPA 正常工作所需的特定 DNS 要求。
步驟 2 — 設(shè)置 DNS
所有運(yùn)行 FreeIPA 的機(jī)器必須使用完全合格的域名(FQDN)作為其主機(jī)名,這是我們在上一步中設(shè)置的。此外,每臺(tái)服務(wù)器的主機(jī)名必須解析到其 IP 地址,而不是解析為 localhost
。
在 DigitalOcean 上,您可以在控制面板上查看服務(wù)器的公共 IP 地址。您也可以使用 ip
命令找到服務(wù)器的 IP 地址。
ip addr show
這應(yīng)該產(chǎn)生類似以下的輸出:
. . .
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ffinet 111.111.111.111/18 brd 111.111.111.255 scope global eth0valid_lft forever preferred_lft foreverinet6 1111:1111:1111:1111::1111:1111/64 scope globalvalid_lft forever preferred_lft forever
. . .
IPv4 地址直接出現(xiàn)在 inet 之后,如果啟用了 IPv6,則在 inet6 之后出現(xiàn) IPv6 地址。如果啟用了私有網(wǎng)絡(luò),您可能還會(huì)看到其他私有 IP 地址;您可以忽略這些地址。要區(qū)分公共和私有 IP 地址,注意私有 IPv4 地址將在以下范圍內(nèi):192.168.*.*
、10.*.*.*
或 172.16.*.*
到 172.31.*.*
。私有 IPv6 地址將始終以前綴 fe80::
開頭。
現(xiàn)在,我們需要更改主機(jī)文件,將服務(wù)器的主機(jī)名指向其外部 IP 地址。主機(jī)文件 /etc/hosts
在本地將域名映射到 IP 地址。使用 nano
或您喜歡的文本編輯器打開此文件。
nano /etc/hosts
查找在 127.0.0.1
之后具有您服務(wù)器主機(jī)名的行:
. . .```markdown
# 以下內(nèi)容適用于支持 IPv4 的主機(jī)
127.0.0.1 ipa.example.com ipa.example.com
127.0.0.1 localhost.localdomain localhost
127.0.0.1 localhost4.localdomain4 localhost4
. . .
將 127.0.0.1
更改為您的服務(wù)器 IPv4 地址。
. . .
# 以下內(nèi)容適用于支持 IPv4 的主機(jī)
your_server_ipv4 ipa.example.com ipa.example.com
127.0.0.1 localhost.localdomain localhost
127.0.0.1 localhost4.localdomain4 localhost4
. . .
如果您啟用了 IPv6,您還需要編輯 IPv6 映射,將 ::1
行更改為您的主機(jī)名。
...
# 以下內(nèi)容適用于支持 IPv6 的主機(jī)
::1 ipa.example.com ipa.example.com
::1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
...
將 ::1
更改為您的服務(wù)器 IPv6 地址。
...
# 以下內(nèi)容適用于支持 IPv6 的主機(jī)
your_server_ipv6 ipa.example.com ipa.example.com
::1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
...
保存并退出文件。
默認(rèn)情況下,每次系統(tǒng)啟動(dòng)時(shí),CentOS 使用 /etc/cloud/templates/hosts.redhat.tmpl
中的配置來生成 /etc/hosts
。為了使此配置更改永久生效,我們還需要在該文件中進(jìn)行類似的更改。
打開文件。
super_user
nano /etc/cloud/templates/hosts.redhat.tmpl
將 127.0.0.1 ${fqdn} ${hostname}
行更改為使用您的服務(wù)器 IPv4 地址。
...
# 以下內(nèi)容適用于支持 IPv4 的主機(jī)
your_server_ipv4 ${fqdn} ${hostname}
127.0.0.1 localhost.localdomain localhost
127.0.0.1 localhost4.localdomain4 localhost4
...
類似地,如果您使用 IPv6,將 ::1 ${fqdn} ${hostname}
行更改為使用您的 IPv6 地址。
...
# 以下內(nèi)容適用于支持 IPv6 的主機(jī)
your_server_ipv6 ${fqdn} ${hostname}
::1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
...
退出并保存文件。
接下來,我們將配置 CentOS 中的隨機(jī)數(shù)生成器。這將允許 FreeIPA 執(zhí)行所需的身份驗(yàn)證加密功能。
步驟 3 — 配置隨機(jī)數(shù)生成器
設(shè)置 FreeIPA 需要大量隨機(jī)數(shù)據(jù)來運(yùn)行的加密操作。默認(rèn)情況下,虛擬機(jī)會(huì)很快耗盡隨機(jī)數(shù)據(jù)或熵。為了解決這個(gè)問題,我們將使用 rngd
,一個(gè)軟件隨機(jī)數(shù)生成器。rngd
通過從服務(wù)器連接的硬件設(shè)備獲取數(shù)據(jù)并將其輸入到內(nèi)核的隨機(jī)數(shù)生成器中來工作。
首先,安裝 rngd
。
super_user
yum install rng-tools
然后啟用它。
super_user
systemctl start rngd
確保服務(wù)在啟動(dòng)時(shí)自動(dòng)啟動(dòng)。
super_user
systemctl enable rngd
最后,驗(yàn)證 rngd
是否正在運(yùn)行。
command
systemctl status rngd
輸出應(yīng)包含綠色的 active (running)
。
所有依賴項(xiàng)配置并正常運(yùn)行后,我們可以繼續(xù)安裝 FreeIPA 服務(wù)器軟件本身。
步驟 4 — 安裝 FreeIPA 服務(wù)器
我們可以繼續(xù)安裝 ipa-server
,即 FreeIPA 服務(wù)器軟件包本身。
super_user
yum install ipa-server
然后運(yùn)行 FreeIPA 安裝命令。這將運(yùn)行一個(gè)腳本,提示您進(jìn)行配置選項(xiàng)并安裝 FreeIPA。
super_user
ipa-server-install
除了身份驗(yàn)證外,FreeIPA 還具有管理主機(jī)的 DNS 記錄的功能。這可以使主機(jī)的配置和管理更加簡單。在本教程中,我們將不使用 FreeIPA 的集成 DNS。這對(duì)于基本設(shè)置是不需要的。
[secondary_label 安裝腳本提示]
Do you want to configure integrated DNS (BIND)? [no]: no
接下來,您需要輸入服務(wù)器的主機(jī)名、域名和 Kerberos 領(lǐng)域名稱。Kerberos 是 FreeIPA 在幕后用于對(duì)主機(jī)機(jī)器進(jìn)行身份驗(yàn)證的認(rèn)證協(xié)議。強(qiáng)烈建議您將域名用作 Kerberos 領(lǐng)域名稱。使用不同的命名方案將導(dǎo)致 FreeIPA 與 Active Directory 集成出現(xiàn)問題,并可能引起其他問題。
[secondary_label 安裝腳本提示]
Server host name [ipa.example.org]: ipa.example.org
Please confirm the domain name [example.org]: ipa.example.org
Please provide a realm name [EXAMPLE.ORG]: IPA.EXAMPLE.ORG
接下來,創(chuàng)建 LDAP 目錄管理員的密碼。這對(duì)于 FreeIPA 的 LDAP 功能是必需的。然后是 IPA 管理員密碼,將用于以管理員用戶身份登錄 FreeIPA。在這里使用安全的隨機(jī)生成密碼是非常推薦的,因?yàn)檎麄€(gè)系統(tǒng)的安全性取決于它們。
確認(rèn)配置。之后,安裝程序?qū)⑦\(yùn)行。
[secondary_label 安裝腳本提示]
Continue to configure the system with these values? [no]: yes
安裝過程可能需要幾分鐘,具體取決于服務(wù)器的速度。
現(xiàn)在我們已經(jīng)完成了服務(wù)器安裝,我們需要對(duì)其進(jìn)行測試。
## 步驟 5 — 驗(yàn)證 FreeIPA 服務(wù)器功能首先,通過嘗試為 admin 用戶初始化 Kerberos 令牌來驗(yàn)證 Kerberos 領(lǐng)域是否正確安裝。```super_user
kinit admin
如果工作正常,這應(yīng)該會(huì)提示您輸入安裝過程中輸入的 IPA 管理員密碼。輸入密碼,然后按 ENTER
。
接下來,驗(yàn)證 IPA 服務(wù)器是否正常運(yùn)行。
ipa user-find admin
這應(yīng)該會(huì)打印出以下內(nèi)容:
--------------
1 user matched
--------------User login: adminLast name: AdministratorHome directory: /home/adminLogin shell: /bin/bashPrincipal alias: admin@IPA.EXAMPLE.COMUID: 494800000GID: 494800000Account disabled: False
----------------------------
Number of entries returned 1
----------------------------
我們還應(yīng)該能夠在 https://ipa.example.com
訪問 web UI。
在 web UI 中,以 admin 用戶身份登錄。用戶名 將是 admin,密碼 將是您之前設(shè)置的 IPA 管理員密碼。頁面頂部將顯示 Authenticating…,然后您將被帶到主 IPA 頁面,看起來像這樣:
!FreeIPA UI 主頁面
最后,讓我們通過添加新用戶來探索一些 FreeIPA 的功能。
步驟 6 — 配置 IPA 用戶
FreeIPA 擁有非常豐富的用戶管理和策略功能。與標(biāo)準(zhǔn)的 Unix 用戶類似,FreeIPA 用戶可以屬于組?;诓呗?#xff0c;可以允許或拒絕組或個(gè)別用戶訪問主機(jī)(客戶端機(jī)器)或主機(jī)組(hostgroups)。FreeIPA 還可以管理 sudo 訪問;可以在主機(jī)或主機(jī)組上授予組或用戶 sudo 訪問權(quán)限。
本教程將簡要介紹如何添加新用戶以幫助您入門。
要添加用戶,請(qǐng)單擊 Identity 選項(xiàng)卡,然后單擊 Users。這將顯示一個(gè)用戶表。單擊表格上方的 + Add 按鈕以添加新用戶。在打開的表單中填寫必填字段(如名和姓),然后單擊 Add 以添加用戶,或者單擊 Add and edit 以配置高級(jí)詳細(xì)信息。
管理員也可以通過單擊原始表中的用戶來訪問高級(jí)詳細(xì)信息。這是管理員在查看用戶詳細(xì)信息時(shí)看到的內(nèi)容:
!FreeIPA UI 用戶編輯
普通用戶也可以登錄到 IPA GUI。他們將能夠查看自己的權(quán)限并編輯個(gè)人詳細(xì)信息。
新用戶在首次登錄到 IPA 機(jī)器時(shí)將被要求更改密碼。這在 IPA GUI 中以及通過 SSH 上也適用。一個(gè)有用的功能是能夠添加 SSH 密鑰。用戶可以上傳他們的公共 SSH 密鑰,并使其傳播到 IPA 機(jī)器,從而實(shí)現(xiàn)無密碼登錄。用戶隨時(shí)可以刪除 SSH 密鑰,而無需擔(dān)心它仍然存在于各個(gè)服務(wù)器上。
結(jié)論
現(xiàn)在您已經(jīng)擁有一個(gè)可用的 FreeIPA 服務(wù)器,您需要配置客戶端以對(duì)其進(jìn)行身份驗(yàn)證。您可以按照此 Ubuntu 16.04 FreeIPA 客戶端教程或此 CentOS 7 FreeIPA 客戶端教程進(jìn)行操作。此外,FreeIPA 是一個(gè) LDAP 服務(wù)器。任何支持 LDAP 認(rèn)證的服務(wù)都可以設(shè)置為針對(duì)您的 FreeIPA 服務(wù)器進(jìn)行身份驗(yàn)證。
您可以通過 FreeIPA GUI 或其 CLI 配置用戶、組和訪問策略。Sudo 規(guī)則可以提供一個(gè)相對(duì)簡單的方式來管理 root 訪問權(quán)限。對(duì)于較大的部署,建議設(shè)置多個(gè) IPA 服務(wù)器進(jìn)行復(fù)制。最后,如果您希望與 Windows 環(huán)境進(jìn)行橋接,可以建立與 Active Directory 服務(wù)器的信任關(guān)系。
FreeIPA 是一個(gè)非常多才多藝的身份驗(yàn)證工具,您接下來需要做的事取決于您打算如何使用它。有關(guān)更多信息,請(qǐng)?jiān)L問 FreeIPA 網(wǎng)站上的文檔資源列表。