天天看點

紅帽Linux網絡管理運維(持續更新)

前言

學校開設Linux和Linux網絡管理課程,将學習過程記錄一下

一、密碼恢複

1.重新開機按e進入核心模式

紅帽Linux網絡管理運維(持續更新)

2.光标移動到16行,添加rd.break console=tty0然後,ctrl+x重新開機

紅帽Linux網絡管理運維(持續更新)

3.輸入指令

Mount –o remount,rw /sysroot
Chroot /sysroot
Passwd 12345的6 //重置的密碼
Touch ./autorelabel
           

二、配置靜态位址

1.nmcli指令

①NetworkManager 守護程序

②nmcli是指令行管理NetworkManager的工具

③配置檔案在

/etc/sysconfig/network-scripts

目錄下

④網絡的配置基于會話,一個網卡可以有多個會話,但是隻允許一個會話處于激活狀态

指令:nmcli device 硬體相關設定 connection邏輯配置相關設定

nmcli connection add添加 delete删除 edit編輯 show檢視 down停掉 modify修改 up啟用

實操:請配置兩台Linux主機,位址均為手動配置,伺服器ip位址為192.168.1.254/24用戶端ip位址為192.168.1.10/24 網關位址為192.168.1.1/24 dns為8.8.8.8

指令:

nmcli connection add con-name static ifname eno16777736 type ethernet ip4 192.168.1.254/24 gw4 192.168.1.1

紅帽Linux網絡管理運維(持續更新)

①解釋:con-name static會話名稱 ifname ens33接口名(網卡)type ethernet 網卡類型為以太網卡 ip4是ip位址 gw4是網關位址 /24為網絡字首,預設為32

ipv4.method manual會話配置方式為手動配置(動态為auto)ipv4.dns表示dns伺服器

nmcli connection up static

啟動剛剛添加的資訊

nmcli connection modify static ipv4.method manual

改為手動配置

nmcli connection show

檢視網絡會話

nmcli connection show static

檢視網絡會話具體資訊

紅帽Linux網絡管理運維(持續更新)

配置用戶端指令一樣的,隻是改下ip位址

紅帽Linux網絡管理運維(持續更新)

2.測試網絡連通性

①ip指令=ifconfig指令 centos7預設ip指令

文法:ip [options] object [command[arguments]] 可選項 操作對象 操作對象要執行什麼指令,以及效果如何

常用選項:ip addr檢視網絡位址資訊 ip link set up/down激活或停止網絡接口

ip addr add ip位址 dev 網卡名 臨時設定ip位址

②ping 指令:不會自動終止,需ctrl+c指定次數或終止

紅帽Linux網絡管理運維(持續更新)

3.網卡鍊路聚合

解釋:多個實體網卡聚合成一張虛拟網卡,當一張實體網卡損壞時,整個網絡不會down掉

(一)常見模式

①round-robin policy負載均衡輪詢政策 提供負載均衡和容錯能力

②active-backup policy 主備用政策 當一張網卡down掉,另一張即刻轉換為主狀态 隻提供容錯能力

③broadcast 廣播政策 過于浪費資源,但有很好的容錯能力

④load balancing 負載均衡 提供非常好的負載均衡

(二)建立鍊路聚合會話

nmcli connection add con-name team0 ifname team0 type team config '{"runner":{"name":"activebackup"}}'

主鍊路

解釋 ifname 和會話同名 type類型 config 網卡鍊路聚合模式

②添加網卡成員

nmcli connection add con-name team0-p1(會話名稱) ifname ens33(網卡名字) type team-slave master team0 (主會話名稱)

ifname真實實體網卡 type類型team後面跟名字 slave是成員的意思 master是主人的意思為team0服務

nmcli connection modify team0 ipv4.addresses “192.168.1.10/24” ipv4.gatway 192.168.1.1 ipv4.method manual

nmcli connection modify team0 ipv4.metthod manual

設定為手動配置

nmcli connection up team0

啟用會話

nmcli connection show

檢視網絡會話

(三)測試鍊路聚合

①檢視鍊路聚合狀态:

teamdctl team0 state

②斷開一張網卡:

nmcli device disconnect eth0

③重新開機網絡讓配置生效:

systemctl restart network

(四)配置ipv6位址

nmcli connect mod con-name team0 ifname ens33 type ethernet ipv6.address 1:123::ABCD:0:10/96 ipv6.gatway 1:123::ABCD:0:1/96 ipv6.method manual

配置伺服器位址

②systemctl restart network 重新開機網卡

(五)測試ipv6位址

nmcli connection add con-name ipv6 ifname ens33 type ethernet ipv6.addresses 1:123::ABCD:0:20/96 ipv6.method manual

配置用戶端

ping6 1:123:abcd:10 測試連通性

三、認識ssh

1.登陸ssh 登陸方法:ssh 使用者@ip位址 然後回車 輸入密碼 -X加載圖形化界面

第一次登陸會提示是否信任該主機,選擇yes就好,這個是防中間人攻擊的

紅帽Linux網絡管理運維(持續更新)

2.使用密鑰登陸:生成密鑰

ssh-keygen

,一直回車,然後進入.ssh目錄 把id_rsa.pub公鑰傳到伺服器上,使用指令

ssh-copy-id [email protected]

,期間會叫你輸入伺服器的user1使用者密碼

紅帽Linux網絡管理運維(持續更新)

再次登入,不用密碼了

紅帽Linux網絡管理運維(持續更新)

3.使用ssh備份,還原(scp):

備份:

scp 1.tar.gz [email protected]:/home/user01

把用戶端的1.tar.gz 上傳到伺服器上user1使用者的家目錄

紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)

還原:

scp [email protected]:/home/user01/1.tar.gz .

把伺服器的/home/user01/1.tar.gz 還原到用戶端的目前目錄

紅帽Linux網絡管理運維(持續更新)

4.使用ssh計劃任務:

修改

vim /etc/crontabs

tar czvf root date +%d.tar.gz /root

加時間進行備份root下所有檔案

30 22 * * * root tar czvf /backup/root.tar.gz /root

每晚10點30分打包root下的目錄

0 23 * * * root scp /backup/root.tar.gz [email protected]:/tmp

每天晚上的23點把用戶端的root.tar.gz 上傳到伺服器上natash的/tmp目錄

紅帽Linux網絡管理運維(持續更新)

5.使用ssh上傳檔案(sftp)

sftp [email protected]

進入互動模式

put 1.c

上傳1.c到/home/user01

紅帽Linux網絡管理運維(持續更新)

get root.tar.gz

下載下傳root.tar.gz

1.修改ssh端口:

1.修改ssh預設端口,預設是22,進入ssh目錄,

cd /etc/ssh

,修改sshd_config檔案,找到protocol一行,# port 22把#号去掉,然後将22修改任意一個端口号。

2.設定SELinux,

semanage port -l | grep ssh

檢視預設22号端口上下文值,

semanage port -a -t ssh_port_t -p tcp

剛剛設定的端口号(-a 表示添加,-t表示類型 -p表示協定)

3.在防火牆中開啟剛剛設定的端口,firewall-cmd --permanent --add-port=剛剛設定的端口号/tcp,然後重新加載防火牆

firewall-cmd --reload

4.重新開機ssh服務

systemctl restart sshd

2.ssh加強

1.指定伺服器隻能由某個使用者登入:

vim /etc/sshd_config

将PermitRootLogin no 禁止root使用者ssh遠端登入

PasswordAuthentication no 禁止使用者輸入密碼(禁止使用者密碼登入)

systemctl restart sshd

重新開機ssh服務

四、挂載yum源

1.挂載本地yum源(CD光牒)

要求:

①目錄事先存在

②挂載點目錄不可被其他程序使用到

③挂載點下原有檔案将被隐藏

實作永久挂載,修改檔案:

vim /etc/fstab

最後一行加上内容:

/dev/cdrom /mnt/cdrom iso9660 defaults 0 0

mount -a

讓它生效

解釋:硬體是是什麼 挂載點是什麼 挂載的檔案系統 挂載的方式 第一個0指不做大備份 第二個0指開機不自檢

2.建立本地yum源

認識yum:

①yum是軟體的倉庫,可以通過http或ftp共享

②yum可以自動處理依賴性關系,提供查找安裝删除指令

3.挂載本地源

①yum的配置檔案:

/etc/yum.repos.ddhcpd.conf.example

DHCP模闆檔案,可複制到dhcp.conf中

紅帽Linux網絡管理運維(持續更新)

systemctl start dhcpd

啟動dhcp服務

systemctl enable dhcpd

設定開機自啟

4.設定防火牆

firewall-cmd --permanent --add-service=dhcp

永久允許dhcp 的流量

firewall-cmd --reload

立即生效

5.測試DHCP服務

①關閉VMware的DHCP功能

②配置dhcp會話

nmcli connection add con-name dhcp(會話名) ifname ens33 type ethernet ipv4.method auto(自動擷取)

③檢視會話

nmcli connection show

④停掉靜态會話

nmcli connection down static

⑤用ip addr檢視dhcp擷取效果

6.實操

紅帽Linux網絡管理運維(持續更新)

服務端:

①安裝dhcp服務

yum install dhcp.x86_64 -y

紅帽Linux網絡管理運維(持續更新)

②修改配置檔案

vim /etc/dhcp/dhcpd.conf

打開

/usr/share/doc/dhcp/*/dhcpd.conf.example

DHCP模闆檔案,複制有用的

紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)

③檢查檔案是否有錯

dhcpd -t

紅帽Linux網絡管理運維(持續更新)

④開啟dhcp服務

systemctl start dhcpd

⑤開啟防火牆

firewall-cmd --permanent --add-service=dhcp

永久允許dhcp 的流量

firewall-cmd --reload

立即生效

首先要打開虛拟機網絡編輯器,改為僅主機模式,并且把自動擷取dhcp給關了

紅帽Linux網絡管理運維(持續更新)

用戶端:

①添加一個會話,擷取ip位址為自動

nmcli con add con-name dhcp ifname eno16777736 type ethernet

紅帽Linux網絡管理運維(持續更新)

②改為自動擷取

nmcli con modify dhcp ipv4.method auto

紅帽Linux網絡管理運維(持續更新)

③啟動會話

紅帽Linux網絡管理運維(持續更新)

④自動擷取

dhclient

紅帽Linux網絡管理運維(持續更新)

六、搭建NTP服務

網絡時間服務的配置與應用

1.安裝ntp服務

yum install ntp.x86_64 -y

紅帽Linux網絡管理運維(持續更新)

2.修改配置檔案

vim /etc/ntp.conf

紅帽Linux網絡管理運維(持續更新)

①注釋第八行

②注釋21-24行

③添加

server 127.127.1.1

3.重新開機ntp服務

systemctl restart ntpd

4.添加防火牆

①添加服務

firewall-cmd --permanent --add-service=ntp

②重新開機防火牆

firewall-cmd --reload

紅帽Linux網絡管理運維(持續更新)

5.測試,

ntpq -p

紅帽Linux網絡管理運維(持續更新)

用戶端:

和服務端操作一模一樣,添加

server 127.127.1.

1後面跟伺服器ip位址,重新開機然後測試

紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)

七、搭建NFS服務

1.安裝NFS服務

①在centos7下,預設安裝NFS服務,隻需通過指令查詢

rpm -qa | grep rpcbind rpcbind-0.2.0-38.el7.x86_64
rpm -qa | grep nfs-utils nfs-utils-1.3.0-0.33.el7.x86_64
           
紅帽Linux網絡管理運維(持續更新)

2.建立共享目錄

①建立nfs和nfs1目錄,指令:

mkdir /nfs /nfs1

紅帽Linux網絡管理運維(持續更新)

②在/nfs 和 /nfs1兩個目錄中建立檔案

紅帽Linux網絡管理運維(持續更新)

③修改/common權限,指令:

chmod -R 777 /nfs1

紅帽Linux網絡管理運維(持續更新)

3.配置NFS服務

①配置防火牆

systemctl start rpcbind.service
systemctl enable rpcbind.service
systemctl start nfs.service
systemctl enable nfs.service
           
紅帽Linux網絡管理運維(持續更新)

②檢視相關程序是否啟動

ps -ef | grep rpcbind     
 ps -ef | grep nfsd
           
紅帽Linux網絡管理運維(持續更新)

③檢視端口開放情況

netstat -lnutp |grep 111

紅帽Linux網絡管理運維(持續更新)

④修改NFS的主要配置檔案

vim /etc/expors

添加參數:

/mnt/nfs *(ro) 該網段内的主機都有讀取的權限

/mnt/nfs1 192.168.1.0(rw) 該網段内的主機都有讀取的權限

/mnt/nfs2 192.168.1.21/24(rw,all_squash)隻有這個ip位址有讀寫的權限,并且把所有主機設定匿名使用者

重新加載并顯示共享目錄 exportfs -rv

紅帽Linux網絡管理運維(持續更新)

4.設定防火牆

①添加nfs的相關服務

firewall-cmd --permanent --add-service=nfs
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --reload
           

5.實作用戶端挂載

①在用戶端的/mnt建立新目錄

mkdir /mnt/nfs /mnt/nfs1

②在用戶端進行挂載,指令:

mount -t nfs 192.168.1.254:/mnt/nfs /mnt/nfs
mount -t nfs 192.168.1.254:/mnt/nfs1 /mnt/nfs1
           
紅帽Linux網絡管理運維(持續更新)

6.實作用戶端永久挂載

①檢視共享目錄,指令:

showmount -e 192.168.1.254

紅帽Linux網絡管理運維(持續更新)

②修改fstab檔案

vim /etc/fstab

添加内容:

192.168.1.254:/mnt/nfs /mnt/nfs nfs defaults 0 0

192.168.1.254:/mnt/nfs1 /mnt/nfs1 nfs defaults 0 0

伺服器的共享目錄 本地挂載目錄 檔案系統 挂載方式 不備份 不自檢

紅帽Linux網絡管理運維(持續更新)

④使指令生效,指令:

mount -a

7.測試權限

①nfs目錄不可寫

紅帽Linux網絡管理運維(持續更新)

②nfs1目錄可讀可寫

紅帽Linux網絡管理運維(持續更新)

八、搭建smaba伺服器

服務端:

1.安裝Samba服務

①安裝,指令:

yum install -y samba.x86_64
yum install -y samba-client.x86_64
           
紅帽Linux網絡管理運維(持續更新)

②啟動

systemctl start smb nmb
           

③設定開機自動運作

systemctl enable samba
           
紅帽Linux網絡管理運維(持續更新)

④驗證

rpm -qa | grep sanmba    
netstat -tunlp | grep -E 'smbd|nmbd'
           
紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)

2.建立共享目錄

①建立,指令:

mkdir /share mkdir /common
           

②設定權限,指令:

chmod 777 /share /common
           

③驗證,指令:

ls -l / | grep share/common
           
紅帽Linux網絡管理運維(持續更新)

3.修改配置檔案

vim /etc/samba/smb.conf
           

①修改89行workgroup = MYGROUP改為workgroup = WORKGROUP

紅帽Linux網絡管理運維(持續更新)

②在末尾添加字段

[share]
       comment = Public Stuff
       path = /share
       public = yes
       writable = yes
           

③儲存後重新開機

systemctl restart smb nmb
           
紅帽Linux網絡管理運維(持續更新)

4.設定防火牆

firewall-cmd --permanent --add-service=samba
firewall-cmd --reload
           
紅帽Linux網絡管理運維(持續更新)

5.配置SELinux

PS:由于還沒有學到SELinux,暫時關閉保護,下一次課會講到

getenforce 檢視目前保護狀态 Enforcing 強制保護

setenforce 0 關閉強制保護 Permissive 警告

紅帽Linux網絡管理運維(持續更新)

6.測試,後面的share是配置檔案裡面的共享節

smbclient //192.168.1.254/share 
           
紅帽Linux網絡管理運維(持續更新)

①在share建立檔案,并再次通路,可以看到通路成功

紅帽Linux網絡管理運維(持續更新)

②測試是否可寫,上傳桌面anaconda-ks.cfg檔案

紅帽Linux網絡管理運維(持續更新)

③windows通路samba服務

紅帽Linux網絡管理運維(持續更新)

測試能否ping通伺服器

紅帽Linux網絡管理運維(持續更新)

然後在運作輸入\192.168.1.254\share發現需要賬戶名和密碼

此時我們傳回伺服器,建立samba賬戶

useradd   samba
smbpasswd -a samba
           
紅帽Linux網絡管理運維(持續更新)

再次通路輸入samba和123456即可通路成功

紅帽Linux網絡管理運維(持續更新)

測試是否可寫,建立一個1.txt文檔

紅帽Linux網絡管理運維(持續更新)

7.可能出錯的地方,檢查網卡的dns位址

例:

紅帽Linux網絡管理運維(持續更新)

九、搭建DNS服務

①DNS是Domain Name System的簡稱,采用分層結構,包括根域、頂級域、二級域、主機名稱

②DNS資源記錄類型表

類型 作用
A記錄 一個域名與IP對應關系
NS記錄 一個區域有哪些DNS伺服器負責解析
SOA記錄 一個區域内多個DNS伺服器哪個是主伺服器
MX記錄 郵件投遞記錄
CNAME記錄 别名記錄
SVR記錄 說明一個伺服器能夠提供什麼樣的服務
RTR記錄 A記錄的逆向記錄,把IP位址解析為域名

③DNS查詢過程:檢查hosts檔案是否有映射,否則查找DNS解析器緩存是否有記錄,再沒有像DNS伺服器查詢,然後完成解析

要求:

紅帽Linux網絡管理運維(持續更新)

1.安裝dns服務,安裝dns伺服器需要安裝bind、bind-utils這兩個包

yum -y install bind bind-utils
           
紅帽Linux網絡管理運維(持續更新)

2.修改配置檔案

①修改主配置檔案,配置檔案在/etc/named.conf,修改監聽IP為所有,當然也可以指定IP位址,開啟allow-query(允許查詢)

②修改11和17行 添加any; 注意有分号有空格

紅帽Linux網絡管理運維(持續更新)

③修改區域檔案,配置檔案在/etc/named.rfc1912.zones

正向區域:

複制19-23行,然後粘貼到最後

紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)

反向區域:

複制31-35行,粘貼到最後

紅帽Linux網絡管理運維(持續更新)

修改:

紅帽Linux網絡管理運維(持續更新)

④檢查文法

named-checkconf /etc/named.conf
           
紅帽Linux網絡管理運維(持續更新)

⑤檢查文法

named-checkconf /etc/named.rfc1912.zones
           
紅帽Linux網絡管理運維(持續更新)

⑥進入/var/named目錄,建立正向和反向區域檔案

正向區域:

拷貝模闆檔案,然後修改

cp named.localhost scitc.zx
           
紅帽Linux網絡管理運維(持續更新)

反向區域:

拷貝模闆檔案,然後修改

cp named.localhost scitc.fx
           
紅帽Linux網絡管理運維(持續更新)

⑦檢查文法

named-checkzone scitc.com.cn scitc.zx
named-checkzone 1.168.192.in-addr.apra scitc.fx 
           
紅帽Linux網絡管理運維(持續更新)

⑧防火牆設定

firewall-cmd --permanent --add-service=dns
firewall-cmd --permanent --add-port=53/tcp
firewall-cmd --permanent --add-port=53/udp
firewall-cmd --reload 
           
紅帽Linux網絡管理運維(持續更新)

⑨SELinux設定,預設是,是以不用改

紅帽Linux網絡管理運維(持續更新)

⑩設定所屬組為named,設定權限

chgrp named scitc*
           
紅帽Linux網絡管理運維(持續更新)

如果不想設定所屬組,在拷貝模闆檔案的時候,跟-a參數即可

⑪重新開機服務,添加開機自啟

systemctl restart named
systemctl enable named
           
紅帽Linux網絡管理運維(持續更新)

3.用戶端測試

①修改dns位址

nmcli connection modify dhcp ipv4.dns 192.168.1.254
           

②nslookup測試

紅帽Linux網絡管理運維(持續更新)

③有可能的錯誤,dns未修改成功,檢視/etc/resolv.conf是否為伺服器端ip位址

vim /etc/resolv.conf
           

十、架設Apache服務

1.安裝Apache服務,

yum install httpd.x86_64 -y

紅帽Linux網絡管理運維(持續更新)

2.防火牆放行服務

firewall-cmd --permanent --add-service=http
firewall-cmd --reload
           
紅帽Linux網絡管理運維(持續更新)

3.啟動Apache服務,添加開機自啟動

systemctl start httpd
systemctl enable httpd
           
紅帽Linux網絡管理運維(持續更新)

4.用戶端通路

紅帽Linux網絡管理運維(持續更新)

5.伺服器端寫一個靜态網站測試

①進入/var/www/html目錄

②寫入首頁檔案

紅帽Linux網絡管理運維(持續更新)

③重新開機Apche服務,systemctl restart httpd

紅帽Linux網絡管理運維(持續更新)

④用戶端通路

紅帽Linux網絡管理運維(持續更新)

6.聯合DNS進行解析

①找到正向和反向域有哪些

vim /etc/named.rfc1912.zones
           
紅帽Linux網絡管理運維(持續更新)

②用戶端測試域名通路

紅帽Linux網絡管理運維(持續更新)

7.配置虛拟主機通路

①修改正向配置檔案

cd /var/named/scitc.zx //增加别名
           
紅帽Linux網絡管理運維(持續更新)

②重新開機服務

systemctl restart named
           

③用戶端測試

紅帽Linux網絡管理運維(持續更新)

8.修改Apache配置檔案

①增加自定義配置檔案

cd /etc/httpd/conf.d/
vim www.conf
           
紅帽Linux網絡管理運維(持續更新)

③建立/web/www

mkdir -p /web/www
           
紅帽Linux網絡管理運維(持續更新)

④建立首頁檔案

echo test1 > /web/www/index.html
           
紅帽Linux網絡管理運維(持續更新)

⑤設定SELinux

semanage fcontext -a -t httpd_sys_content_t "/web(/.*)?"
restorecon -vRF /web
           
紅帽Linux網絡管理運維(持續更新)

⑥重新開機服務

systemctl	restart httpd
           

⑦用戶端測試

紅帽Linux網絡管理運維(持續更新)

9.在web目錄繼續建立其他主機,寫入首頁檔案,不用設定SELinux,因為繼承父目錄

紅帽Linux網絡管理運維(持續更新)

①拷貝/etc/httpd/conf.d的www.conf檔案并修改對應的資訊

紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)

②重新開機服務,用戶端測試

紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)

10.繼續建立端口号主機

①在/web目錄建立10086目錄,寫入檔案

紅帽Linux網絡管理運維(持續更新)

②拷貝/etc/httpd/conf.d的www.conf檔案并修改對應的資訊

紅帽Linux網絡管理運維(持續更新)

③設定防火牆

firewall-cmd --permanent --add-port=10086/tcp
firewall-cmd --reload
           
紅帽Linux網絡管理運維(持續更新)

④設定SELinux,檢視安全上下文并設定

semanage port -l | grep http
           
紅帽Linux網絡管理運維(持續更新)
semanage port -a -t http_port_t -p tcp 10086
           
紅帽Linux網絡管理運維(持續更新)

⑤重新開機服務并測試

紅帽Linux網絡管理運維(持續更新)

11.架設虛拟目錄

①在/web/www目錄建立xuni子目錄,在/web/www/xuni寫入首頁檔案

紅帽Linux網絡管理運維(持續更新)

②在/etc/httpd/conf.d的www.conf檔案添加四行

紅帽Linux網絡管理運維(持續更新)

③重新開機服務并測試

紅帽Linux網絡管理運維(持續更新)

12.通路權限設定(ACL)

簡單配置執行個體:

Order Allow,Deny 誰的優先級更高就放在後面,Allow允許,Deny拒絕

Allow form all 允許所有通路

Deny from 192.168.1.0/24 拒絕1.0網段通路

Order Deny,Allow 允許的優先級最高

Deny from all 拒絕所有通路

Allow from abc.com 允許通路abc.com

執行個體:修改虛拟目錄123不能通路

服務端:

修改主配置檔案vim /etc/httpd/conf.d/123.conf

重新開機服務

systemctl restart httpd
           

添加以下字段

紅帽Linux網絡管理運維(持續更新)

用戶端:

測試通路,提示沒有權限,說明ACL已經架設成功

紅帽Linux網絡管理運維(持續更新)

十一、資料庫(MariaDB)基本操作

MariaDB=mysql 操作指令一模一樣

常用操作:

紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)

1.安裝MariaDB:

yum install mariadb-server.x86_64 -y
           

啟動

systemctl start mariadb
           

添加開機啟動

systemctl enable mariadb
           

2.初始化資料庫

mysql_secure_installation 
           

期間設定資料庫root密碼,其餘都選yes

紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)

3.登陸資料庫,有兩種登陸方式

mysql -uroot -p123456 //明文登陸
mysql -uroot -p //密文登陸
           
紅帽Linux網絡管理運維(持續更新)

4.例:建立一個student資料庫,設定為目前庫

注意:mysql互動界面每句話結束必須要有分号

creatr database student; //建立資料庫
use student; //選擇資料庫
           
紅帽Linux網絡管理運維(持續更新)

5.在student建立一個course表,表包含兩個字段id,name,這兩個字段均為非空字元串,初始學号20170001,id為主鍵(primary key)

6.向student學生庫的course表中插入zhang,li兩條記錄,并對有關記錄進行查詢、更新和删除操作。

insert  into  student.course (id,name)  values('20170264','zhang');
insert  into  student.course (id,name)  values('20171358', 'li')
           

7.檢視資料

十二、管理資料庫(MariaDB)

1.建立資料庫使用者

來源位址:localhost 隻能本地,%号任何主機位址,192.168.1.%可以從192.168.1.0的任何主機登陸

2.授權給資料庫使用者

紅帽Linux網絡管理運維(持續更新)

on 資料庫名.表名——要針對哪些表授予權限。可使用通配符“”,例如“.*”表示所有資料庫中的所有表。

to 使用者名@來源位址——要被授予權限的使用者。

3.例: 以root使用者連接配接MariaDB後,添加一個名為user1、密碼為abc的MariaDB使用者,允許其隻能從本地主機(即MariaDB資料庫所在的主機)上登入,并授予對資料庫student進行查詢的權限。然後驗證該使用者能否進行登入、查詢和插入記錄的操作。

create  user  user1@localhost  identified by "abc"; //建立使用者
grant  select  on  student.*  to  user1@localhost;//授權使用者
flush  privileges;					//重新整理權限
exit; //退出
           
mysql  -h  localhost  -u  user1  -p123456	//驗證登入操作
use  student;
select  *  from  course;		//驗證查詢權限
insert  into  course(id,name)  values('20170616', ‘wang');//驗證插入權限
           

4.撤銷資料庫使用者的權限

revoke  權限清單  on  資料庫名.表名  from  使用者名@域名或IP位址
           

例: 撤銷使用者user1從伺服器本機通路資料庫student的查詢權限

revoke  select  on  student.*  from  user1@'localhost';
flush   privileges; //重新整理權限使修改後的權限生效
MariaDB [(none)]> show  grants  for  user1@'localhost';	//檢視修改後權限
           

5.備份與恢複

紅帽Linux網絡管理運維(持續更新)

6.使用mysqldump指令備份(導出)資料

mysqldump  -u 使用者名  -p [密碼] [選項] [資料庫名] [表名] > /備份路徑/備份檔案名
           

常用選項有:

–all-databases——備份伺服器中的所有資料庫内容。

–opt——對備份過程進行優化,此項為預設選項。

–no-data——僅備份資料庫結構,不備份資料内容(記錄)。

例: 備份指定的student資料庫,備份student資料庫中的course表,備份伺服器中的所有資料庫内容。

mysqldump  -u  root  -p123456  --opt  student > back_student.dump
mysqldump  -u  root  -p123456  student  course > back_course.dump
mysqldump  -u  root  -p123456  --all-databases > back_all.dump
ll  back*
           

7.使用mysql指令恢複(導入)資料

mysql  -u  root  -p  [資料庫名] < /備份路徑/備份檔案名
           

例: 恢複整個student資料庫;恢複student資料庫中的course表;恢複伺服器中的所有資料庫内容。

mysql -u root -p123456 student < back_student.dump

mysql -u root -p123456 student < back_course.dump

mysql -u root -p123456 < back_all.dump

例:

紅帽Linux網絡管理運維(持續更新)

1.建立資料庫,及資料表

create database  newstaff;
use newstaff;
create table stafftable (staffid int not null,primary key(staffid),username varchar(20),sex char(6),age int);
discribe stafftable;
           
紅帽Linux網絡管理運維(持續更新)

2.插入資料

insert into newstaff.stafftable(staffid,username,sex,age) values('1','Janes','Male','33');
insert into newstaff.stafftable(staffid,username,sex,age) values('2','Selire','Female','32');
select * from newstaff.stafftable;
           
紅帽Linux網絡管理運維(持續更新)

3.建立賬戶并設定權限

create user jw@localhost identified by '123456';
grant select,insert on newstaff.* to jw@localhost;
           
紅帽Linux網絡管理運維(持續更新)

4.計劃任務,建立一個腳本名字随便取

#! /bin/sh
time = `date+"("$F")"%R`
$/usr/local/mysql/bin/mysqldump -uroot -p123456 newstaff | gzip > /root/staffbackup-$time.gz crontab -e
00 00 * * * /root/backup.sh
           

用指令操作:

vim /etc/crontab

0 0 * * * root mysqldump -uroot -p123456 newstaff > /root/newback`date+%d`.dump
           
紅帽Linux網絡管理運維(持續更新)

8.對資料庫伺服器進行必要的網絡安全方面的設定,隻允許從公司内部網絡(192.168.1.0/24)通路資料庫伺服器;

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="4406" accept"
firewall-cmd --reload
           

9.從安全的角度對資料庫伺服器的配置檔案進行必要的安全設定,修改資料庫端口為“4406”,并設定日志檔案為/var/log/mariadb/access.log;

vim /etc/my.conf
port 4406
log=/var/log/mariadb/access.log
           
紅帽Linux網絡管理運維(持續更新)

十三、架設ftp伺服器

1.linux自帶的是vsftpd

2.伺服器安裝vsftpd,開啟服務,開機自啟

yum -y install vsftpd
systemctl start vsftpd
systemctl enable vsftpd
           
紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)

3.設定防火牆

firewall-cmd --permanent --add-service=ftp 
firewall-cmd --reload
           
紅帽Linux網絡管理運維(持續更新)

簡單測試通路 1.在伺服器vsftp通路目錄建立檔案

cd /var/ftp
touch file{1..5}
ls
           
紅帽Linux網絡管理運維(持續更新)

2…用戶端測試,安裝ftp用戶端

紅帽Linux網絡管理運維(持續更新)

3.輸入ftp,然後輸入open 192.168.1.254然後輸入賬戶名,沒有密碼直接回車,然後檢視檔案

紅帽Linux網絡管理運維(持續更新)

對ftp伺服器進行安全加強

1.vsftpd的配置檔案及目錄

紅帽Linux網絡管理運維(持續更新)

2. 主配置檔案vsftpd.conf常用配置項及功能說明

紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)

實操: 搭建一台功能簡單的FTP伺服器,允許所有師生員工使用匿名使用者下載下傳檔案 1.建立一個供下載下傳資源的目錄/ftp/share,并在其中添加測試檔案

mkdir -p /ftp/share
echo my test file > /ftp/share/test.txt
           

2.設定SElinux,修改/ftp/share的安全上下文

ll -Zd /ftp/share //檢視
chcon -R -t pubilc_content_t /ftp/share
           

3.編輯配置檔案vsftpd.conf,允許匿名使用者通路

vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES  //允許匿名通路
anon_root=/fttp/share //添加匿名使用者登入後的根目錄
           

4.防火牆放行服務

firewall-cmd --perment --add-service=ftp
firewall-cmd --reload
           

5.重新開機服務

systemctl restart vsftpd
           
紅帽Linux網絡管理運維(持續更新)

1.建立用于維護網站的禁止登入且家目錄為/var/www/web1的使用者user1

mkdir -p /var/www/web1        //建立首頁檔案
echo "index" > /var/www/web1/index.html    //寫入内容到首頁檔案
chmod -R 757 /var/www/web1     //設定權限
useradd user1 -s /sbin/nologin //禁止登入
           

2.編輯主配置檔案

vim /etc/vsftpd/vsftpd.conf
           

local_ enable=YES //16行:允許本地使用者登入 local_root=/var/www/web1 //添加至17行:設定本地使用者登入後的根目錄

allow_ writeable chroot=YES

write_enable=YES //19行:允許寫入

local_ umask=022 //23行:設定新上傳檔案(夾)的權限掩碼

connect_from_ port 20=YES //添加至43

chroot local_ user=YES//100行:是否将所有使用者限制在登入根目錄内

chroot list_ enable=NO//101行:開啟鎖定使用者的chroot功能 #chroot ist file=/etc/vsttpd/chroot_ list //103行:設 置鎖定使用者的清單檔案

紅帽Linux網絡管理運維(持續更新)

3.建立/etc/vsfttpd/chroot_list檔案,将被鎖定的使用者user01加入其中

vim /etc/vsftpd/chroot_list
           

4.開啟防火牆

firewall-cmd --zone=public --permanent --add-service=ftp
firewall-cmd --reload
           

5.修改SELinux,允許本地使用者登入

getsebool -a | grep ftp //檢視與ftp有關的所有SELinux的布爾值
setsebool -P ftpd_full_access on //開放ftp通路(-P寫入磁盤,永久生效)
           

6.重新開機服務

systemctl restart vsftpd
           

十四、搭建LMAP伺服器

1.什麼是LMAP

LMAP是Linux、Mysql、Apache、PHP的縮寫

2.安裝php,指令:

yum install php php-mysql -y
           
紅帽Linux網絡管理運維(持續更新)

3.建立虛拟主機,直接在複制原來的123.conf然後更名為php.conf修改下,添加DirectoryIndex字段,這裡路徑不一樣,去/var/www/建立一個php就行了

cd /etc/httpd/conf.d/
cp 123.conf php.conf
vim php.conf
           

4.建立檔案并測試

cd /var/www/
mkdir php
cd php
vim index.php
           

添加以下代碼

<?php
$link=mysql_connect("localhost","root","123456");# 這裡是資料庫的密碼,因人而異,如果是本教程可以不用改
if( $link )
echo "success";
else
echo "faile";
mysql_close();
?>

           

5.重新開機apache服務,測試

systemctl restart httpd
           

6.測試,浏覽器、指令行均可

curl www.123.com
           
紅帽Linux網絡管理運維(持續更新)

部署一個動态網站

1.寫入配置檔案

Vim /etc/httpd/conf.d/virtual.conf
           
紅帽Linux網絡管理運維(持續更新)

2.重新開機Apache,安裝論壇

紅帽Linux網絡管理運維(持續更新)
紅帽Linux網絡管理運維(持續更新)

注意:需資料庫密碼正确才能安裝

3.測試

紅帽Linux網絡管理運維(持續更新)

十五、雲waf部署

1.下載下傳伺服器安全狗linux版本

wget http://download.safedog.cn/safedog_linux64.tar.gz
           

2.解壓并安裝(需關閉SELinux)

tar xzvf safedog_linux64.tar.gz
cd safedog_an_linux64_2.8.21207/
chmod +x *.py
./install.py
           

3.啟動服務

紅帽Linux網絡管理運維(持續更新)

4.輸入雲服務帳号密碼

紅帽Linux網絡管理運維(持續更新)

5.登入http://fuyun.safedog.cn 進行管理

紅帽Linux網絡管理運維(持續更新)

十六、ISCSI

1.安裝服務

yum -y install targetd targetcli
           

2.啟動服務端程式,加入開機自啟

紅帽Linux網絡管理運維(持續更新)

3.配置ISCSI服務端共享資源,将/dev/sdc加入到配置共享裝置的“資源池”中,并将該檔案重新命名為disk0

紅帽Linux網絡管理運維(持續更新)

4.建立ISCSI target名稱及配置共享資源

紅帽Linux網絡管理運維(持續更新)

5.設定通路控制清單

紅帽Linux網絡管理運維(持續更新)

6.設定ISCSI服務端的監聽IP位址和端口号

紅帽Linux網絡管理運維(持續更新)

7.重新開機服務,配置防火牆

紅帽Linux網絡管理運維(持續更新)

十七、LVM磁盤整理

1.添加磁盤

紅帽Linux網絡管理運維(持續更新)

2. 讓新添加的兩塊硬碟裝置支援LVM技術

pvcreate /dev/sdb
           

3.将硬碟裝置加入到storage卷組中,然後檢視卷組的狀态

vgcreate storage /dev/sdb
           
  1. 切割出一個2G的邏輯卷裝置
lvcreate -n vo -L 2G storage
           

5.把生成好的邏輯卷進行格式化,然後挂載使用

mkfs.ext4 /dev/storage/vo
mkdir /srv/www
mount /dev/storage/vo /srv/www/
           

繼續閱讀