Linux入門之網絡系統詳解

網絡信息

修改主機名

# hostname node01   //本次登錄修改
# hostname //查看主機名

# vi/etc/hostname //永久修改
# shutdown -r now //修改完後需重啟虛擬機

DNS域名解析

IP地址不容易記,取名映射IP配置hosts文件時一般用主機名和ip映射

Windows系統:
		C:\Windows\system32\drivers\etc\hosts
Linux:
		# vi /etc/hosts
		# 192.168.192.100 basenode
		將來需要把所有的虛擬機都配置成hosts文件

網絡相關命令

# ifconfig ||  # ip addr  查看當前網卡的配置信息
# yum install net-tools -y 安裝ifconfig相關包

ifconfig命令屬於 net-tools中的一個命令,但是Centos7中minimal版並沒有集成這個包,所以7的時候需要自己手動安裝

# netstat 查看當前網絡的狀態信息
# netstat -r  || # route  核心路由表
# ping 查看與目標ip是否能連通
# telnet 查看與目標ip端口是否能連通
# yum install telnet -y
# curl -X GET http://www.baidu.com  通過指定唯一定位標識資源

restful 我們所有的資源在網絡上中都有唯一的定位,我們可以通過這個唯一定位標識指定的資源

防火墻

#查看防火墻狀態
systemctl status firewalld.service      
#臨時停止firewall
systemctl stop firewalld.service      
#禁止firewall開機啟動
systemctl disable firewalld.service    
firewall-cmd --state              ##查看防火墻狀態,是否是running
firewall-cmd --reload              ##重新載入配置,比如添加規則之後,需要執行此命令
firewall-cmd --get-zones            ##列出支持的zone
firewall-cmd --get-services           ##列出支持的服務,在列表中的服務是放行的
firewall-cmd --query-service ftp        ##查看ftp服務是否支持,返回yes或者no
firewall-cmd --add-service=ftp         ##臨時開放ftp服務
firewall-cmd --add-service=ftp --permanent   ##永久開放ftp服務
firewall-cmd --remove-service=ftp --permanent  ##永久移除ftp服務
firewall-cmd --add-port=80/tcp --permanent   ##永久添加80端口
開啟一個端口執行流程
# 添加
firewall-cmd --zone=public --add-port=80/tcp --permanent
#重新載入
firewall-cmd --reload
#查看
firewall-cmd --zone=public --query-port=80/tcp
#刪除
firewall-cmd --zone=public --remove-port=80/tcp --permanent

加密算法

不可逆加密算法

http://tool.chacuo.net/cryptrsaprikey

可以通過數據計算加密後的結果,但是通過結果無法計算出加密數據

應用

# Hash算法常用在不可還原的密碼存儲、信息完整性校驗。
# 文檔、音視頻文件、軟件安裝包等用新老摘要對比是否一樣(接收到的文件是否被修改)
# 用戶名或者密碼加密後數據庫存儲(數據庫大多數不會存儲關鍵信息的明文,就像很多登錄功能的忘記密碼不能找回,隻能重置)

加鹽操作

對稱加密算法

優點
生成密鑰的算法公開、計算量小、加密速度快、加密效率高、密鑰較短

缺點
雙方共同的密鑰,有一方密鑰被竊取,雙方都影響
如果為每個客戶都生成不同密鑰,則密鑰數量巨大,密鑰管理有壓力
應用場景
登錄信息用戶名和密碼加密、傳輸加密、指令加密

非對稱加密算法

非對稱加密算法需要一對密鑰(兩個密鑰):
公開密鑰(publickey)和私有密鑰(privatekey)(簡稱公鑰,私鑰)。
公開密鑰與私有密鑰生成時是一對
用公鑰加密隻能是對應的私鑰解密,同理用私鑰加密隻能用對應的公鑰解密。
代表性算法叫做 RSA、ECC、Diffie-Hellman、El Gamal、DSA(數字簽名用)
優點:
安全高(幾乎很難破解)
缺點
加解密相對速度慢、密鑰長、計算量大、效率低
應用場景
HTTPS(ssl)證書裡制作、CRS請求證書、金融通信加密、藍牙等硬件信息加密配對傳輸、關鍵
的登錄信息驗證。

免密鑰登陸

流程

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-xcOiupVR-1639032571895)(Linux網絡系統.assets/image-20211028103327750.png)]

主機間相互免密鑰

# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa  生成密鑰
# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected] 發送公鑰
# ll -a  查看192.168.192.101中是否生成.ssh/文件夾
# cd .ssh/   ——>  # cat authorized_keys 查看密鑰
# scp file [email protected]:~  發送文件

主機名與host校驗

[root@basenode ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host '192.168.192.101 (192.168.192.101)' can't be established.
ECDSA key fingerprint is SHA256:EV00Zl3Snn9UREndOJHXpzfAhDYkB3lLysSjiE/RlRo.
ECDSA key fingerprint is MD5:86:be:05:0d:92:84:79:c0:6f:9b:9a:47:67:64:28:07.
Are you sure you want to continue connecting (yes/no)? yes
錯誤原因:
Cannot determine realm for numeric host
解決方案1--本次
ssh -v -o GSSAPIAuthentication=no [email protected]
解決方案2--所有
修改/etc/ssh/ssh_config文件的配置,以後則不會再出現此問題
最後面添加:
StrictHostKeyChecking no
UserKnownHostsFile /dev/null

日期與時間

命令

# ll /etc/localtime 查看時區
# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 修改時區為上海
# ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime 修改時區為洛杉磯

# date 查看當前時間
# cal 2021 查看日歷
# date -s '2019-11-11 11:11:11'  修改時間

日期同步

# yum install ntp -y  安裝時間同步的服務
# ntpdate cn.ntp.org.cn  自動同步網絡時間中心

自動同步網絡時間中心本地NTP服務:
NTP服務器 	
# vi /etc/ntp.conf
		#========權限控制============
	restrict default kod nomodify notrap nopeer noquery   拒絕IPV4用戶
	restrict -6 default kod nomodify notrap nopeer noquery  拒絕IPV6用戶
	restrict 210.72.145.44 授權國傢授時中心服務器訪問本地NTP   
	restrict 133.100.11.8 授權133.100.11.8訪問本地NTP
	restrict 127.0.0.1
	restrict -6 ::1
	restrict 192.168.88.2 mask 255.255.255.0 nomodify   本地網段授權訪問
	#=========源服務器===========
	server cn.ntp.org.cn prefer  指定上級更新時間服務器,優先使用這個地址
	#=========差異分析===========
	driftfile /var/lib/ntp/drift
	keys  /etc/ntp/keys
	
	
# systemctl start ntpd.service  開啟本地NTP服務器
# ntpdate 192.168.192.101  同步時間

用戶組權限

用戶

# useradd sam 新增用戶,創建同名組和傢目錄
# password 123 設置密碼
# userdel -r 刪除用戶 級聯刪除

# usermod -l sam sum 修改用戶名 不修改傢目錄和組
# usermod -L sam 鎖定用戶名
# usermod -U sam 解鎖用戶名

# cat /etc/shadow 用戶名和密碼

# cat /etc/passwd 用戶名,編號,組編號,傢目錄,命令,目錄 6.5系統0-499 普通 500+ 7.6系統0-999 普通 1000+

#su sam 切換用戶

# groupadd lucky 創建組
# groupdel lucky 刪除組
# groupmod -n bdp lucky 修改組名字
# groups 查看用戶對應的組
# groups bdpboy 當我們創建用戶的時候,會默認創建一個同名的主組

# usermod -g lucky bdpboy (主組) 修改用戶的組
# usermod -G lucky bdpls (附屬組修改用戶的組

權限

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-u4QdKmSh-1639032571898)(Linux網絡系統.assets/image-20211028204436113.png)]

# ll -a 查看文件詳細信息

權限的UGO模型
u:user 文件所有者
g:group 文件所屬組用戶
o:other 其他用戶

rwx
r:read 讀取權限
w:write 寫入權限
x:  執行權限
-: 沒有權限
修改文件的權限
修改文件所屬
# chown n1 /var/lucky1
# chown n1:m1 /var/lucky2
修改文件夾時,讓子目錄迭代修改
#chown -R n1:m1 bdp
#chgrp m2 lucky3
當用戶的組被修改之後,需要重新登錄才能獲取新組的權限
修改文件的rwx
# chmod o+w lucky4
# chmod ug+rw lucky4
# chmod ugo-rw lucky4
(權限RWX分別對應數字 4 2 1 5= 4+0+1 r-x)
# chmod 664 lucky4 ->(rw- rw-r--)

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-avVk35qA-1639032571899)(Linux網絡系統.assets/image-20211028205247968.png)]

權限賦予

給普通用戶賦予管理員權限

# vim /etc/sudoers
# visudo
修改 Line 99
n1 ALL=(root) /sbin/useradd
n1 ALL=(root) /sbin/*


使用
# su n1  切換用戶
# sudo chkconfig iptables off

管道和重定向

管道

將前面命令的結果作為參數傳遞給後面的命令

grep 強大的搜索工具
# cat profile | grep if
# ls / | grep ^t

重定向

# 改變數據輸出的位置,方向# 0 in 1 out 2 err# ls / 1> lucky 標準輸出# ls / > lucky 標準輸出# ls abcd 2>lucky 錯誤輸出# > 替換 >> 追加# ls / 1>> lucky# ls / 1> lucky# 結合使用# ls /etc /abc > lucky 2>&1# ls /etc /abc >> lucky 2>&1# 信息黑洞# ls /etc /abc >> /dev/null 2>&1

進程

進程信息# ps -ef# UID PID PPID C STIME TTY TIME CMD# UID 所屬用戶# PID 當前進程編號# PPID 當前進程編號的父進程編號# ps -ef | grep redis# ps -aux# 所有信息# ps -aux --sort -pcpu# top# 當前服務器內存使用率後臺進程# 隻需要在命令的後面添加一個 & 符號# ping www.baidu.com >> baidu &# jobs -l# 可以查看當前的後臺進程# 但是隻有當前用戶界面可以獲取到# nohup 可以防止後臺進程被掛起# nohup ping www.baidu.com >> baidu 2>&1 &殺死進程kill -9

到此這篇關於Linux入門之網絡系統詳解的文章就介紹到這瞭,更多相關Linux網絡系統內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: