抓牢三個關鍵點,掃清兩個障礙,Linux服務器不再霧裡看花

抓牢三個關鍵點,掃清兩個障礙,Linux服務器不再霧裡看花

說說過往的經歷

我是在2003年左右,讀大學的時候接觸Linux的,開始僅僅是為了玩,就是好玩,因為Linux和windows不一樣,感覺很神秘,也很酷,期間斷斷續續。直到2006年開始講授Linux服務器搭建課程後,才開始認真研究這個系統,到現在已有十多年了,這期間教了很多的學生,培訓了很多企業,也把很多人成功帶入這個“坑裡”(開個玩笑),各類發行版的系統,Redhat、紅旗、Ubuntu、Debian、Suse、CentOS,我都搗鼓過。

十多年的教學經驗,接觸的學員沒有一千也有八百了,我發現很多學生學習Linux的過程不是循序漸進的,而是一個跳躍式的過程。前期異常的痛苦,學習成果收效甚微,中期漸漸悟出其中的規律,開始厚積薄發,成就感逐漸增強,後期自學成才,各種服務器駕輕就熟,甩出一句話:Linux不過如此。有人會問這個規律到底是什麼?是否有捷徑?我可以告訴你,捷徑是沒有的,但規律是存在的!Linux初學者要牢記學習Linux服務器的三個關鍵點和兩個障礙,算是我多年教學的一點感悟吧!今天和大家一起分享下,我不喜歡泛泛而談,這對大家沒有幫助,我以CentOS7這個Linux發行版為平臺,以web服務器、ftp服務器和dns服務器三個為例講解,三個服務器毫不相關,但我們能發現其中共同的學習規律。

三個關鍵點

抓牢三個關鍵點,掃清兩個障礙,Linux服務器不再霧裡看花

三個關鍵點

關鍵點一:任何服務器都有一個安裝程序包,你要學會安裝

Linux系統很好,不像Windows,大多數的安裝軟件都集成在安裝光盤中,而且大部分Linux的發行版都遵循了開源的精神,免費提供大家使用,所以你不用擔心試用版什麼的問題。

例如,我在講解dns服務器的時候,我會告訴學生,dns服務器的軟件叫做bind,講解web服務器的時候,會說apache軟件,講解ftp時,會說vsftp等等。在學習過程中,第一步就是安裝,早期的安裝有編譯安裝和rpm安裝。作為新手,這兩種安裝我都不推薦,編譯安裝你要有良好的英文功底,能懂程序更好,因為萬一安裝出錯了,很難找到解決方案。rpm安裝同樣不好,軟件關聯性嚴重,經常會出現安裝這個軟件,系統提示缺少什麼插件,要先安裝插件,一來二去,我講的不暈,學生聽得都暈了,而且缺少插件都是英文提示,很多學生就像看天書一樣。

這裡我推薦yum安裝,自動幫你解決軟件關聯性問題,我上課的時候通常就是先配置YUM本地源,再安裝軟件,注意,本地光盤集成的服務器軟件,儘量用本地源,第一安裝迅速,第二軟件來源放心,選擇互聯網YUM源,還要擔心YUM源的可靠性和系統兼容性問題,在初學階段,把這些問題先通通排除掉,用本地YUM源吧!

關鍵點二:任何服務器都有配置文件,你要學會配置文件的修改(很關鍵!)

這是所有學生在學習時最大的障礙,每種配置文件都有固定的配置文件,所有的服務器配置都是基於配置文件的修改來完成的,這也是Linux服務器最大的特點,因為它開源。有的服務器僅有一個配置文件,有的服務器有多個配置文件,所以搞清楚配置文件,學會每種服務器的配置文件格式,是學習的關鍵。

例如,我講解dns時,會講四個配置文件,主配置文件/etc/named.conf、/etc/named.rfc1906.conf,正向文件和反向文件的位置/var/named,然後再講解他們的關係和配置格式;講解web服務器時會講解主配置文件/etc/httpd/httpd.conf以及/etc/httpd/conf.d目錄;講解ftp服務器時會講解主配置文件/etc/vsftpd/vsftpd.conf。知道了這些配置文件,我們就可以對其進行編輯設置了,再進行配置文件格式的學習(因為每個服務器的配置文件格式都不一樣,這裡限於篇幅,就不寫了,如果大家有需要,我會再出專題,講解每種服務器的配置)。

關鍵點三:任何服務器都有守護進程和服務名,你要知道服務名

記住,配置文件修改後,是不會立刻生效的,我們要對對應的服務進行重啟,才能使配置文件生效。dns服務器的服務名叫named,web服務器的服務名叫httpd,ftp服務器的服務名叫vsftpd。named服務為例,重啟指令,老版本的系統用service named restart,新版本的系統用systemctl restart named。服務有沒有重啟成功,可以通過service named status或systemctl status named查詢到,如果失敗了,那十有八九是配置文件寫錯了(這個問題對初學者很常見,我很少發現初學者一次性把服務配置成功的,少之又少,往往都是重新改配置文件,再重啟,失敗了再修改,最後直到成功開啟服務)。

兩個障礙物

抓牢三個關鍵點,掃清兩個障礙,Linux服務器不再霧裡看花

兩個障礙物

障礙一:防火牆

Linux的發行版都自帶防火牆,安全嘛,防火牆首當其衝,它會屏蔽很多端口,讓其它主機無法訪問,直接影響我們實驗效果。但對我們初學者來說,你還不會調節防火牆規則,因為防火牆規則的調整,需要你有很深計算機網絡理論知識,至少TCP/IP協議棧四層模型要知道,要了解源ip、目的ip、源端口、目的端口等等。那麼怎麼辦?先捨棄防火牆吧,我在教學階段直接就是禁用防火牆,老版本的用chkconfig --level 35 iptables off,新版本的systemctl disable firewalld,重啟後,再開始配置其它服務器。等你真正進入到第三階段了,再重新學習防火牆也不遲,我建議把防火牆放到最後學習。

障礙二:SELINUX

Linux自帶了SELINUX,這個稱為Security-Enhanced Linux,是Linux的新安全子系統,我建議也是最後學吧!前期會影響我們配置其它服務器的效果,比如以前我遇到過一個學生,學習vsftp服務的虛擬用戶配置,客戶端怎麼也登不上,檢查配置文件也沒有出錯,卡了半天,那個難受別提多鬱悶了,最後發現selinux導致有寫入權限的用戶不能登錄,關掉後立馬正常了!SELINUX本身規則比較複雜,建議在不瞭解規則的情況下,先禁用掉,也是在第三階段再進行學習。關閉方法兩種,setenforce 0(這個是臨時方法,重啟後selinux還會生效),修改/etc/selinux/config文件,然後重啟系統,這個方法可以永久關閉selinux。

這裡大家不要誤解,防火牆和SELINUX不是不學,它們是維護Linux服務器安全的重要工具,而是放到最後再學習!

說說學習Linux的感悟

Linux的學習需要不斷的上機、操作、積累經驗,在學習前期,基礎命令一定要過關,各種指令操作要熟悉。真正的Linux是全命令行操作,方便快捷,初學者可能不習慣,上機操作第一反應就是去摸鼠標,鼠標在Linux環境下真的用處不大,以前我見過一個學生,為了學Linux,直接把家裡臺式電腦裝成Linux系統,然後鼠標直接拔了,苦學了一個月,強迫自己不用windows、不用鼠標,別說這招還真管用,技能水平直線上升。

文章寫到這裡,也告一段落了,前期大家要選定好一個Linux發行版,個人建議如果專門學服務器的話,可以選擇CentOS和Redhat的企業版,這兩個版本比較適合做服務器,網上的教程也很多,研究的人也多,儘量不要選擇桌面版的Linux。希望大家在追求技術的道路上越走越遠,一技在手,工作無憂 O(∩_∩)O。


分享到:


相關文章: