一褂萧、CentOS8新特性
CentOS 官網(wǎng)文檔手冊(cè)
CentOS8 相關(guān)資料鏈接←01
CentOS8 相關(guān)資料鏈接←02
CentOS8 與CentOS7的區(qū)別
需要騰訊云TCA汹押、阿里云ACP考試碼及題庫(kù)請(qǐng)簡(jiǎn)書(shū)私信(考試碼比官網(wǎng)優(yōu)惠,阿里云題庫(kù)覆蓋率超99%寓调,騰訊云題庫(kù)覆蓋率近95%)
* `CentOS8最終于2019年9月24日發(fā)布`拢军。由于這是一個(gè)源自Red Hat Enterprise linux (RHEL)的Linux發(fā)行版往声,所以CentOS團(tuán)隊(duì)必須構(gòu)建一個(gè)基礎(chǔ)設(shè)施來(lái)支持新引入的RHEL 8柠座。
* 該版本還包含全新的`CentOS Streams`铅祸,Centos Stream是一個(gè)滾動(dòng)發(fā)布的Linux發(fā)行版作箍,它介于Fedora Linux的上游開(kāi)發(fā)和RHEL的下游開(kāi)發(fā)之間而存在硬梁。你可以把CentOS Streams當(dāng)成是用來(lái)體驗(yàn)最新紅帽系Linux特性的一個(gè)版本,而無(wú)需等太久胞得。
* CentOS 8主要改動(dòng)和 RedHat Enterprise Linux 8 是一致的荧止,`基于Fedora 28和內(nèi)核版本 4.18`,為用戶(hù)提供一個(gè)穩(wěn)定的、安全的、一致的基礎(chǔ)罩息,跨越混合云部署嗤详,支持傳統(tǒng)和新興的工作負(fù)載所需的工具
* CentOS系統(tǒng)在開(kāi)發(fā)人員和系統(tǒng)管理員中廣泛使用,因?yàn)樗峁┝藢?duì)其高度可定制的開(kāi)源軟件包的完全控制瓷炮。它是穩(wěn)定的葱色,背后有一個(gè)龐大而活躍的支持社區(qū)。由于其可靠性娘香,它已經(jīng)成為服務(wù)器操作系統(tǒng)的主流選擇苍狰。
1. 兩種模式:
CentOS stream:滾動(dòng)發(fā)布的 Linux 發(fā)行版,適用于需要頻繁更新的開(kāi)發(fā)者
CentOS-1905:類(lèi)似 RHEL 8 的穩(wěn)定操作系統(tǒng)烘绽,系統(tǒng)管理員可以用其部署或配置服務(wù)和應(yīng)用
2. 大致概述:
- 擴(kuò)展設(shè)備支持:
GNOME現(xiàn)在集成了Thunderbolt 3連接支持淋昭。每當(dāng)Thunderbolt 3建立連接并激活時(shí),您將得到通知安接。該功能允許您密切監(jiān)視所有連接翔忽,并檢測(cè)任何安全漏洞或數(shù)據(jù)泄漏或盜竊企圖。
- 新的盒子特性:
GNOME的應(yīng)用程序中包含了一些用于管理遠(yuǎn)程和虛擬機(jī)的新特性盏檐。更新后的版本通過(guò)自動(dòng)下載操作系統(tǒng)簡(jiǎn)化了創(chuàng)建虛擬環(huán)境的過(guò)程歇式。此外,它的拖放功能可以讓您輕松地在機(jī)器之間傳輸文件胡野。
* 新的屏幕鍵盤(pán):
GNOME團(tuán)隊(duì)重新編寫(xiě)了最新版本的屏幕鍵盤(pán)材失,試圖解決緊迫的UI問(wèn)題。現(xiàn)在硫豆,該功能支持多種布局以支持不同的地區(qū)龙巨、自動(dòng)鍵盤(pán)激活和視圖切換,因此用戶(hù)在書(shū)寫(xiě)時(shí)可以清楚地看到文本熊响。
- 更新的UI界面:
新的桌面環(huán)境還增加了幾個(gè)額外的特性來(lái)改進(jìn)UI和UX旨别。這包括多顯示器處理,直接窗口處理汗茄,改進(jìn)的縮放昼榛,等等。
- 網(wǎng)絡(luò)功能剔难,有兩個(gè)主要的更新:
CentOS現(xiàn)在提供了TCP網(wǎng)絡(luò)堆棧版本4.16。
- 使用的缺省包過(guò)濾框架是nftables奥喻。
最重要的是偶宫,這些更改確保了更好的穩(wěn)定性、可伸縮性和性能环鲤。
nftables替代iptables纯趋、iptablesip6table、arptables和ebtables,作為IPv4和IPv6協(xié)議的單一框架吵冒。此外纯命,firewalld deamon還將使用與默認(rèn)后端相同的用于過(guò)濾網(wǎng)絡(luò)事務(wù)的子系統(tǒng)。
3. Cockpit Web控制臺(tái)
開(kāi)放的基于web的控制臺(tái)界面痹栖,Cockpit亿汞,現(xiàn)在作為新的CentOS發(fā)布的一部分。使用此平臺(tái)可以通過(guò)web控制臺(tái)界面輕松地管理服務(wù)器揪阿。通過(guò)web瀏覽器執(zhí)行系統(tǒng)任務(wù)疗我、創(chuàng)建和管理虛擬機(jī)、配置網(wǎng)絡(luò)南捂、啟動(dòng)容器和檢查日志吴裤。
Cockpit高度集成。它不僅有一個(gè)嵌入式終端溺健,可以讓你隨時(shí)從終端切換到瀏覽器麦牺,而且還可以在移動(dòng)設(shè)備上工作。
因此鞭缭,當(dāng)你安裝CentOS 8時(shí)剖膳,它會(huì)自動(dòng)設(shè)置Cockpit web控制臺(tái),并打開(kāi)所需的防火墻端口缚去。但是潮秘,不必?fù)?dān)心它會(huì)加重系統(tǒng)的負(fù)擔(dān)。該軟件非常有效易结,因?yàn)樗辉诨顒?dòng)時(shí)使用內(nèi)存和CPU枕荞。
4. 軟件倉(cāng)庫(kù)更新
內(nèi)容分布在兩個(gè)主要的軟件倉(cāng)庫(kù):
BaseoS
repository
Appstream
Repository雖然BaseOS包含所有底層OS包,但AppStream包含與應(yīng)用程序相關(guān)的包搞动、開(kāi)發(fā)工具躏精、數(shù)據(jù)庫(kù)和其他包。
BaseOS存儲(chǔ)庫(kù)擁有組成操作系統(tǒng)核心的傳統(tǒng)RPM包鹦肿。一旦更新了系統(tǒng)矗烛,它會(huì)自動(dòng)下載并安裝這些包的任何新版本。
有時(shí)可能不想批量升級(jí)軟件箩溃,因?yàn)樗赡軙?huì)在你希望保持穩(wěn)定的環(huán)境中導(dǎo)致兼容性問(wèn)題(例如瞭吃,在測(cè)試代碼時(shí))。這就是為什么新的CentOS 8附帶了附加的AppStream存儲(chǔ)庫(kù)涣旨,提供了更多的特性歪架、功能和定制。
這個(gè)軟件倉(cāng)庫(kù)有一個(gè)不同的管理軟件的方法霹陡,將它分為幾個(gè)子類(lèi):
Packages:作為常規(guī)包處理和蚪。
Modules:相關(guān)或共享依賴(lài)項(xiàng)的包組止状。
Module streams:軟件模塊的不同版本。
Module profiles:構(gòu)建模塊的包的不同配置攒霹。
5. 軟件管理更新
CentOS 8附帶
yum包管理器v4.0.4版本
怯疤,該版本現(xiàn)在使用DNF (Dandified YUM)技術(shù)作為后端
。DNF是新一代的YUM催束,新的操作系統(tǒng)版本允許您同時(shí)使用這兩種工具來(lái)管理包集峦。與DNF技術(shù)集成,最新版本有一個(gè)大大改進(jìn)的軟件管理系統(tǒng)泣崩。并
支持模塊化內(nèi)容
少梁、增強(qiáng)了性能
、并且提供了設(shè)計(jì)良好的API
用于與其他工具集成矫付。云應(yīng)用程序流凯沪、容器工作負(fù)載和CI/CD。
6. 虛擬化更新
CentOS版本8帶有KVM (qemu-kvm 2.12)买优,支持:
5級(jí)分頁(yè)功能妨马,擴(kuò)展了虛擬地址的大小,增加了可尋址的虛擬內(nèi)存杀赢。
用戶(hù)模式指令預(yù)防(UMIP)烘跺,一種將對(duì)用戶(hù)空間應(yīng)用程序的訪問(wèn)限制為系統(tǒng)級(jí)設(shè)置的安全特性。減少了特權(quán)升級(jí)攻擊的潛在載體脂崔,從而使KVM虛擬機(jī)管理程序及其來(lái)賓計(jì)算機(jī)更加安全滤淳。
虛擬化支持Ceph存儲(chǔ)
,在所有的RHEL CPU架構(gòu)上提供塊存儲(chǔ)功能砌左。所有虛擬機(jī)都預(yù)先設(shè)置的Q35機(jī)器類(lèi)型(機(jī)器類(lèi)型包括本機(jī)PCIe熱插拔脖咐、IOMMU、安全啟動(dòng)和許多其他新集成的功能)汇歹。
NVIDIA vGPU和VNC控制臺(tái)之間的兼容性屁擅。
-
QEMU仿真器引入的沙箱特性,以確保安全的代碼測(cè)試产弹。
7. 安全更新
CentOS團(tuán)隊(duì)已經(jīng)改進(jìn)了安全特性派歌,以確保數(shù)據(jù)保護(hù)和防止入侵。最新版本的OpenSSL 1.1.1默認(rèn)包含TLS 1.3痰哨。這將確保您的所有數(shù)據(jù)以及客戶(hù)端數(shù)據(jù)都受到密碼保護(hù)胶果。
OS附帶了一個(gè)全系統(tǒng)的加密策略,這意味著你不必修改各個(gè)應(yīng)用程序的安全配置斤斧。
8. CentOS Stream
CentOS Stream是一個(gè)結(jié)合了Fedora項(xiàng)目和RHEL的項(xiàng)目稽物。CentOS團(tuán)隊(duì)創(chuàng)建了Stream版本作為滾動(dòng)發(fā)行版,試圖消除重大更新后的延遲和兼容性問(wèn)題折欠。
本項(xiàng)目的基本思路是:
通過(guò)一次更改幾個(gè)包來(lái)獲得開(kāi)發(fā)更新Stream。
獲取用戶(hù)反饋并解決CentOS社區(qū)提出的任何問(wèn)題。
允許在CentOS Stream上構(gòu)建分層項(xiàng)目(如Ansible锐秦、oVirt和RDO)咪奖。
9. 命令行工具
nobody用戶(hù)更換nfsnobody
,這兩個(gè)都已合并到nobody用戶(hù)和組對(duì)中酱床,使用65534 ID羊赵。新安裝不再創(chuàng)建該nfsnobody對(duì)。此項(xiàng)更改減少了對(duì)nobodyNFS 擁有但與NFS無(wú)關(guān)的文件的困惑扇谣。-
提供了版本控制系統(tǒng)
Git 2.18:
它是具有分散架構(gòu)的分布式修訂控制系統(tǒng)昧捷。Mercurial 4.8:
一種輕量級(jí)的分布式版本控制系統(tǒng),旨在有效處理大型項(xiàng)目罐寨。Subversion 1.10:
一個(gè)集中的版本控制系統(tǒng)靡挥。
10. 編程語(yǔ)言 Web和數(shù)據(jù)庫(kù)服務(wù)器
Python 3.6:
默認(rèn)情況下可能未安裝該軟件包。要安裝Python 3.6鸯绿,使用yum install python3命令Python 2.7:
繼續(xù)支持跋破,但是生命周期較短,其目的是促進(jìn)使用者向Python3的平穩(wěn)過(guò)渡-
Node.js
是最新包含的瓶蝴,其他動(dòng)態(tài)語(yǔ)言更新包括:PHP 7.2:
默認(rèn)情況下使用FastCGI流程管理器,可以安全地與線程一起使用httpd
不再在使用httpd配置文件,應(yīng)該在池配置中設(shè)置它:/etc/php-fpm.d/*.conf
PHP腳本錯(cuò)誤和警告記錄到/var/log/php-fpm/www-error.log文件中毒返,而不是/var/log/httpd/error.log
以下擴(kuò)展已被刪除: aspell ;mysql舷手;memcache
* Ruby 2.5拧簸;Perl 5.26;SWIG 3.0
提供
Apache HTTP Server 2.4
男窟; mod_http2提供了HTTP / 2支持盆赤。支持直接從PKCS#11模塊中從硬件安全令牌加載TLS證書(shū)和私鑰;以及首次引入的nginx 1.14
提供的數(shù)據(jù)庫(kù)服務(wù)版本包括:
MySQL 8.0
蝎宇;
現(xiàn)在弟劲,它包含一個(gè)事務(wù)性數(shù)據(jù)字典,用于存儲(chǔ)有關(guān)數(shù)據(jù)庫(kù)對(duì)象的信息
默認(rèn)字符集已從更改latin1為utf8mb4
InnoDB現(xiàn)在支持帶有鎖定讀取語(yǔ)句的NOWAIT和SKIP LOCKED選項(xiàng)
MariaDB 10.3
姥芥;
新增了這些功能常用表表達(dá)式兔乞;系統(tǒng)版本表;FOR 循環(huán)凉唐;隱形欄庸追;順序;即時(shí)ADD COLUMN的InnoDB台囱;與存儲(chǔ)引擎無(wú)關(guān)的列壓縮淡溯;并行復(fù)制;多源復(fù)制簿训。
PostgreSQL 9.6
&PostgreSQL 10
咱娶;
順序操作的并行執(zhí)行:scan米间,join,和aggregate膘侮。
同步復(fù)制的增強(qiáng)屈糊。
改進(jìn)的全文搜索,使用戶(hù)可以搜索短語(yǔ)琼了。
該postgres_fdw數(shù)據(jù)聯(lián)合驅(qū)動(dòng)程序現(xiàn)在支持遠(yuǎn)程join逻锐,sort,UPDATE雕薪,和DELETE操作昧诱。
大幅提升性能,尤其是在多CPU插槽服務(wù)器上的可伸縮性方面所袁。
Redis 5
盏档;Squid 版本升級(jí)到4.4
,首次提供Varnish Cache 6.0
Squid(用于Web客戶(hù)端的高性能代理緩存服務(wù)器) 纲熏;varnish cache(一款高性能的開(kāi)源HTTP加速器)
11. 桌面環(huán)境
GNOME Shell 升級(jí)到3.28.
GNOME會(huì)話(huà)和顯示管理使用 Wayland 作為默認(rèn)的顯示服務(wù)器妆丘,而RHEL 7默認(rèn)的 X.Org server依然提供
12. 文件系統(tǒng)和存儲(chǔ)
XFS
文件系統(tǒng)最大大小已從500 TiB增加為1024 TiB
LUKS版本2(LUKS2)格式替代了舊版LUKS(LUKS1)格式;使用LUKS2作為加密卷的默認(rèn)格式局劲。LUKS2在部分元數(shù)據(jù)損壞事件的情況下為加密卷提供元數(shù)據(jù)冗余和自動(dòng)恢復(fù)
13. 安全方面
默認(rèn)的系統(tǒng)級(jí)的 加密策略,用于配置核心加密子系統(tǒng)勺拣,覆蓋TLS, IPsec, SSH, DNSSEC,和Kerberos協(xié)議。增加全新命令update-crypto-policies,管理員可以輕松切換不同模式:default, legacy, future,和fips.
支持智能卡和硬件安全模塊 (HSM)的 PKCS #11
14. 網(wǎng)絡(luò)方面
nftables 框架替代 iptables
作為默認(rèn)的網(wǎng)絡(luò)包過(guò)濾工具firewalld 守護(hù)進(jìn)程使用 nftables 作為默認(rèn)后端
支持 IPVLAN 虛擬網(wǎng)絡(luò)驅(qū)動(dòng)程序鱼填,可以為多個(gè)容器提供網(wǎng)絡(luò)連接
15. 編譯器和開(kāi)發(fā)工具
Gcc 編譯器更新到8.2版本
药有,支持更多C++標(biāo)準(zhǔn),更好的優(yōu)化以及代碼增強(qiáng)技術(shù)苹丸、提升警告和硬件特性支持不同的代碼生成愤惰、操作和調(diào)試工具現(xiàn)在可以處理 DWARF5 調(diào)試信息格式(體驗(yàn)階段)
核心支持 eBPF 調(diào)試的工具包括BCC, PCP,和 SystemTap.
`glibc 庫(kù)升級(jí)到2.28,支持 Unicode 11,更新的Linux系統(tǒng)調(diào)用赘理,關(guān)鍵提升主要在DNS stub resolver宦言、額外的安全加強(qiáng)和性能提升
提供OpenJDK 11, OpenJDK 8, IcedTea-Web,以及不同 Java 工具
,如 Ant, Maven,或 Scala.
安裝CentOS8
1. 環(huán)境準(zhǔn)備
CentOS8-1905鏡像下載地址
CentOS8-Stream的鏡像下載地址
兩個(gè)鏡像的差異:
2. 安裝步驟
VMware虛擬機(jī):
CentOS-8(1905)須要最少 2 GB 內(nèi)存商模。官方推薦采用至少 4 GB 內(nèi)存奠旺。
選擇NAT模式
進(jìn)入虛擬機(jī)BIOS設(shè)置,將虛擬磁盤(pán)設(shè)置為第一啟動(dòng)項(xiàng)施流,F(xiàn)10保存
修改網(wǎng)卡名 tab鍵后輸入 net.ifnames=0 biosdevname=0 然后回車(chē)
建議選擇英文响疚,我這里選擇的中文
<meta charset="utf-8">
CentOS 8 分配了 40 GB 的硬盤(pán)空間。有兩種分區(qū)方案可供選擇:如果由安裝向?qū)нM(jìn)行自動(dòng)分區(qū)瞪醋,可以從“ 存儲(chǔ)配置(Storage Configuration)”中選擇“ 自動(dòng)(Automatic)”選項(xiàng)忿晕;如果想要自己手動(dòng)進(jìn)行分區(qū),可以選擇“ 自定義(Custom)”選項(xiàng)银受。
在這里我們選擇“ 自定義(Custom)”選項(xiàng)践盼,并按照以下的方式創(chuàng)建基于 LVM 的分區(qū):
可選擇最小化或者帶GUI的圖形界面
最小化安裝要選擇的
創(chuàng)建ROOT密碼
為虛擬機(jī)創(chuàng)建快照鸦采。
3. 可Cockpit Web控制臺(tái)界面管理CentOS8
CentOS8的一大改變就是通過(guò)Web直觀的管理服務(wù)器的系統(tǒng),這項(xiàng)新服務(wù)的名稱(chēng)為Cockpit,可以幫助不熟悉命令行的使用者管理服務(wù)器系統(tǒng)咕幻。不僅僅CenOS8 可以使用赖淤。ubuntu 和CentOS7 也是可以使用的。
- 支持web終端谅河,在web中關(guān)閉防火墻,selinux确丢。
- 支持虛擬機(jī)管理绷耍,需要安裝cockpit-machines
- 支持k8s dashboard管理,需要安裝 cockpit-kubernetes
- 支持web界面配置網(wǎng)卡
systemctl start cockpit.socket
systemctl enable cockpit.socket
訪問(wèn) http://IP:9090
用戶(hù)名密碼和Linux的是一樣的 打開(kāi)Web界面后就可以實(shí)現(xiàn)對(duì)系統(tǒng)的監(jiān)控和配置功能鲜侥,Web界面的左側(cè)便是其各種功能的菜單
三褂始、CentOS8的新操作
[root@CentOS8 ~]# ssh -V
OpenSSH_7.8p1, OpenSSL 1.1.1 FIPS 11 Sep 2018
[root@CentOS8 ~]# cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)
[root@CentOS8 ~]# uname -a
Linux CentOS8 4.18.0-80.el8.x86_64 #1 SMP Tue Jun 4 09:19:46 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
3.1 網(wǎng)絡(luò)配置—NetworkManager
在CentOS7上,同時(shí)支持network.service和NetworkManager.service描函。默認(rèn)情況下崎苗,這2個(gè)服務(wù)都有開(kāi)啟,但許多人都會(huì)將NetworkManager禁用掉舀寓。
在CentOS8上胆数,默認(rèn)沒(méi)有安裝network.service,依然支持network互墓。因此只能通過(guò)NetworkManager進(jìn)行網(wǎng)絡(luò)配置必尼,包括動(dòng)態(tài)ip和靜態(tài)ip。換言之篡撵,在CentOS8上判莉,必須開(kāi)啟NM,否則無(wú)法使用網(wǎng)絡(luò)育谬。
NetworkManager介紹:
能管理各種網(wǎng)絡(luò)
? 有線網(wǎng)卡券盅、無(wú)線網(wǎng)卡
? 動(dòng)態(tài)ip、靜態(tài)ip
? 以太網(wǎng)膛檀、非以太網(wǎng)
? 物理網(wǎng)卡锰镀、虛擬網(wǎng)卡使用方法齊全
? nmcli:命令行。這是最常用的工具宿刮,本文將詳細(xì)講解該工具使用互站。
? nmtui:在shell終端開(kāi)啟文本圖形界面。
? Freedesktop applet:如GNOME上自帶的網(wǎng)絡(luò)管理工具
? cockpit:redhat自帶的基于web圖形界面的"駕駛艙"工具僵缺,具有dashborad和基礎(chǔ)管理功能胡桃。為什么要用NetworkManager
? 工具齊全:命令行、文本界面磕潮、圖形界面翠胰、web
? 廣納天地:納管各種網(wǎng)絡(luò)容贝,有線、無(wú)線之景、物理斤富、虛擬
? 參數(shù)豐富:多達(dá)200多項(xiàng)配置參數(shù)
? 一統(tǒng)江湖:RedHat、CentOS锻狗、Suse满力、Debian/Ubuntu,均支持
? 大勢(shì)所趨:下一個(gè)大版本只能通過(guò)NM管理網(wǎng)絡(luò)
3.2 設(shè)置網(wǎng)卡的新方法—nmcli
在NetworkManager里轻纪,有2個(gè)維度:連接(connection)和設(shè)備(device)油额,這是多對(duì)一的關(guān)系。想給某個(gè)網(wǎng)卡配ip刻帚,首先NetworkManager要能納管這個(gè)網(wǎng)卡潦嘶。設(shè)備里存在的網(wǎng)卡(即nmcli d可以看到的),就是NM納管的崇众。接著掂僵,可以為一個(gè)設(shè)備配置多個(gè)連接(即nmcli c可以看到的),每個(gè)連接可以理解為一個(gè)ifcfg配置文件顷歌。同一時(shí)刻锰蓬,一個(gè)設(shè)備只能有一個(gè)連接活躍⊙梅裕可以通過(guò)nmcli c up切換連接互妓。
查看網(wǎng)卡連接信息
connection有2種狀態(tài):
? 活躍(帶顏色字體):表示當(dāng)前該connection生效
? 非活躍(正常字體):表示當(dāng)前該connection不生效
[root@CentOS8 ~]# nmcli connection
NAME UUID TYPE DEVICE
eth0 07b4217d-3fc4-48f7-ac70-1495cb856f98 ethernet eth0
virbr0 4750c5db-fdd4-4423-812d-ab31120c88fd bridge virbr0
#查看connection列表和詳細(xì)列表
nmcli c show
nmcli c show eth0
#語(yǔ)法:
nmcli connection modify <interface_name> ipv4.address <ip/prefix>
譯作連接,可理解為配置文件坤塞,相當(dāng)于ifcfg-eth0 可以簡(jiǎn)寫(xiě)為 nmcli c
獲取網(wǎng)卡設(shè)備列表
device有4種常見(jiàn)狀態(tài):
? connected:已被NM納管冯勉,并且當(dāng)前有活躍的connection
? disconnected:已被NM納管,但是當(dāng)前沒(méi)有活躍的connection
? unmanaged:未被NM納管
? unavailable:不可用摹芙,NM無(wú)法納管灼狰,通常出現(xiàn)于網(wǎng)卡link為down的時(shí)候
[root@CentOS8 ~]# nmcli device
DEVICE TYPE STATE CONNECTION
eth0 ethernet connected eth0
lo loopback unmanaged --
#查看所有device詳細(xì)信息
nmcli d show
#查看指定device詳細(xì)信息
nmcli d show eth0
譯作設(shè)備,可理解為實(shí)際存在的網(wǎng)卡(包括物理網(wǎng)卡和虛擬網(wǎng)卡) 可以簡(jiǎn)寫(xiě)為 nmcli d
查看ip地址和NetworkManager狀態(tài)
類(lèi)似于ifconfig浮禾、ip addr
[root@CentOS8 ~]# nmcli
eth0: connected to eth0
"Intel 82545EM"
ethernet (e1000), 00:0C:29:B2:BE:2D, hw, mtu 1500
ip4 default
inet4 10.0.0.58/24
route4 0.0.0.0/0
route4 10.0.0.0/24
inet6 fe80::b05:e02d:a476:ce8e/64
route6 fe80::/64
route6 ff00::/8
lo: unmanaged
"lo"
loopback (unknown), 00:00:00:00:00:00, sw, mtu 65536
DNS configuration:
servers: 10.0.0.1
interface: eth0
Use "nmcli device show" to get complete information about known devices and
"nmcli connection show" to get an overview on active connection profiles.
Consult nmcli(1) and nmcli-examples(5) manual pages for complete usage details.
啟用和停止網(wǎng)卡連接
#相當(dāng)于ifup ifdown
啟用 nmcli c up eth0
停止 nmcli c down eth0
立即生效connection交胚,有3種方法
nmcli c up eth0
nmcli d reapply eth0
nmcli d connect eth0
刪除網(wǎng)卡連接
nmcli c delete eth0
重載所有、指定 ifcfg或route到connection
(不會(huì)立即生效)
nmcli c reload
nmcli c load /etc/sysconfig/network-scripts/ifcfg-eth0
創(chuàng)建網(wǎng)絡(luò)連接并配置靜態(tài)IP地址
(等同于配置ifcfg盈电,其中BOOTPROTO=none蝴簇,并ifup啟動(dòng))
nmcli c add type ethernet con-name eth0 ifname eth0 ipv4.addr 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.method manual
創(chuàng)建網(wǎng)絡(luò)連接并配置動(dòng)態(tài)IP地址
(等同于配置ifcfg,其中BOOTPROTO=dhcp匆帚,并ifup啟動(dòng))
nmcli c add type ethernet con-name eth0 ifname eth0 ipv4.method auto
修改IP地址
(非交互式)
nmcli c modify eth0 ipv4.addr '192.168.0.200/24'
nmcli c up eth0
修改IP地址
(交互式)
nmcli c edit eth0
nmcli> goto ipv4.addresses
nmcli ipv4.addresses> change
Edit 'addresses' value: 192.168.1.200/24
Do you also want to set 'ipv4.method' to 'manual'? [yes]: yes
nmcli ipv4> save
nmcli ipv4> activate
nmcli ipv4> quit
關(guān)閉無(wú)線網(wǎng)絡(luò)
nmcli r all off
查看NetworkManager狀態(tài)
nmcli n
#開(kāi)啟NetworkManager
nmcli n on
#關(guān)閉NetworkManager
nmcli n off
監(jiān)聽(tīng)事件
nmcli m
檢測(cè)NetworkMarger是否在線可用
nm-online
例子:創(chuàng)建一個(gè)連接(connection)
nmcli c add type ethernet con-name eth0-test ifname eth0-test ipv4.addresses '192.168.1.100/24,192.168.1.101/32' ipv4.routes '10.0.0.0/8 192.168.1.10,192.168.0.0/16 192.168.1.11' ipv4.gateway 192.168.1.254 ipv4.dns '8.8.8.8,4.4.4.4' ipv4.method manual
? type ethernet:創(chuàng)建連接時(shí)候必須指定類(lèi)型熬词,類(lèi)型有很多,可以通過(guò)nmcli c add type -h看到,這里指定為ethernet互拾。
? con-name ethX ifname ethX:第一個(gè)ethX表示連接(connection)的名字歪今,這個(gè)名字可以任意定義,無(wú)需和網(wǎng)卡名相同颜矿;第二個(gè)ethX表示網(wǎng)卡名寄猩,這個(gè)ethX必須是在nmcli d里能看到的。
? ipv4.addresses '192.168.1.100/24,192.168.1.101/32':配置2個(gè)ip地址骑疆,分別為192.168.1.100/24和192.168.1.101/32
? ipv4.gateway 192.168.1.254:網(wǎng)關(guān)為192.168.1.254
? ipv4.dns '8.8.8.8,4.4.4.4':dns為8.8.8.8和4.4.4.4
? ipv4.method manual:配置靜態(tài)IP
對(duì)應(yīng)生成的網(wǎng)卡配置文件就是
[root@CentOS8 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0-test
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
IPADDR=192.168.1.100
PREFIX=24
IPADDR1=192.168.1.101
PREFIX1=32
GATEWAY=192.168.1.254
DNS1=8.8.8.8
DNS2=4.4.4.4
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=eth0-test
UUID=ced95bb1-d856-4ace-8f2e-79a3f2d572c6
DEVICE=eth0-test
ONBOOT=yes
#通過(guò)該nmcli c 可以看到增加了一條連接
[root@CentOS8 ~]# nmcli c
NAME UUID TYPE DEVICE
eth0 6eebabfa-8f58-40af-b298-a385094b2f04 ethernet eth0
eth0-test ced95bb1-d856-4ace-8f2e-79a3f2d572c6 ethernet --
3.3 使用nmtui命令管理網(wǎng)卡
nmtui
nmtui edit eth0
3.4 配置yum/dnf 源
CentOS 8 默認(rèn)是會(huì)讀取centos.org的mirrorlist的田篇,所以一般來(lái)說(shuō)是不需要配置鏡像的。
cd /etc/yum.repos.d
#備份
cp CentOS-Base.repo CentOS-Base.repo.bak
cp CentOS-AppStream.repo CentOS-AppStream.repo.bak
cp CentOS-Extras.repo CentOS-Extras.repo.bak
---
vim /etc/yum.repos.d/CentOS-Base.repo
[BaseOS]
name=CentOS-$releasever - Base
baseurl=https://mirrors.aliyun.com/centos/$releasever/BaseOS/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
---
vim /etc/yum.repos.d/CentOS-APPStream.repo
[AppStream]
name=CentOS-$releasever - AppStream
baseurl=https://mirrors.aliyun.com/centos/$releasever/AppStream/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficia
---
vim /etc/yum.repos.d/CentOS-Extras.repo
[extras]
name=CentOS-$releasever - Extras
baseurl=https://mirrors.aliyun.com/centos/$releasever/extras/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
3.5 關(guān)閉selinux firewalld
setenforce 0
systemctl stop firewalld
systemctl disable firewalld
3.6 安裝tab補(bǔ)全插件
yum install bash-completion
source /etc/profile
3.7 最小化系統(tǒng)安裝Cockpit Web控制臺(tái)
dnf install cockpit -y
systemctl start cockpit
netstat -lntup|grep 9090
瀏覽器訪問(wèn) https://ip:9090
3.8 常用軟件包安裝
對(duì)開(kāi)發(fā)者的工具支持箍铭,可以用原生yum源安裝了斯辰,不再需要通過(guò)第三方y(tǒng)um源。
@注意:CentOS8 嚴(yán)格區(qū)分pip2 和pip3坡疼,python2-pip和python3-pip
dnf install python3 php perl java-1.8.0 java-11 maven docker mysql-server mlocate lrzsz tree vim nc nmap wget bash-completion htop iotop iftop lsof net-tools sysstat unzip bc psmisc telnet-server -y
3.9 nftables防火墻規(guī)則
- nftables 框架替換了 iptables 默認(rèn)網(wǎng)絡(luò)數(shù)據(jù)包過(guò)濾工具,可以通過(guò)
nft
命令可編程式的配置防火墻衣陶。- firewalld也是Linux的防火墻柄瑰,同時(shí)支持iptables和nftables,最新版本默認(rèn)使用nftables剪况。
- 簡(jiǎn)單的說(shuō)firewalld是基于nftfilter防火墻的用戶(hù)界面工具教沾。而iptables和nftables是命令行工具。
- firewalld引入?yún)^(qū)域的概念译断,可以動(dòng)態(tài)配置授翻,讓防火墻配置及使用變得簡(jiǎn)便。
- 從用戶(hù)的角度來(lái)看孙咪,nftables添加了一個(gè)名為nft的新工具堪唐,它取代了iptables,arptables和ebtables中的所有其他工具翎蹈。
- 從架構(gòu)的角度來(lái)看淮菠,它還取代了處理包過(guò)濾規(guī)則集的運(yùn)行時(shí)評(píng)估的內(nèi)核部分。
查詢(xún)所有表名
[root@CentOS8 ~]# nft list tables
table ip filter
table ip6 filter
table bridge filter
table ip security
table ip raw
table ip mangle
table ip nat
table ip6 security
table ip6 raw
table ip6 mangle
table ip6 nat
table bridge nat
查看某個(gè)表的規(guī)則
[root@CentOS8 ~]# nft list table filter
table ip filter {
chain INPUT {
type filter hook input priority 0; policy accept;
}
chain FORWARD {
type filter hook forward priority 0; policy accept;
}
chain OUTPUT {
type filter hook output priority 0; policy accept;
}
}
打開(kāi)交互配置模式
nft -i
3.10 nft基礎(chǔ)操作
云棲社區(qū)-linux nftables簡(jiǎn)介和基礎(chǔ)操作
1荤堪、增
增加表:nft add table fillter
增加鏈:nft add chain filter input { type filter hook input priority 0 \; } # 要和hook(鉤子)相關(guān)連
增加規(guī)則:nft add rule filter input tcp dport 22 accept
2合陵、刪
只需要把上面的 add 改為 delete 即可
3、改
更改鏈名用rename
更改規(guī)則用replace
4澄阳、查
nft list ruleset # 列出所有規(guī)則
nft list tables # 列出所有表
nft list table filter # 列出filter表
nft chain filter input # 列出filter表input鏈
以上命令后面也可以加 -nn 用于不解析ip地址和端口
加 -a 用于顯示 handles