當前位置:首頁 » 操作系統 » linux伺服器安全策

linux伺服器安全策

發布時間: 2022-06-19 09:36:28

linux伺服器一般都做哪些方面的安全措施

方法非常多:1.設置嚴格的許可權2.定期檢查文件系統,避免程序文件帶有setuidsetgid許可權find/-typef-perm+6000很多系統文件帶有這樣的特殊許可權,需要加以區分的3.設置磁碟配額,避免非法佔用過多磁碟空間4.為不允許修改的文件設置i屬性,為日誌類文件增加a屬性,是的文件不能被修改或者只能追擊內容而不能修改和刪除chattr+ifilenamechattr+afilename5對於存儲數據的文件系統,還可以為mount命令指定-onoexec,nosuid選項

❷ Linux伺服器的安全防護都有哪些措施

一、強化密碼強度
只要涉及到登錄,就需要用到密碼,如果密碼設定不恰當,就很容易被黑客破解,如果是超級管理員(root)用戶,如果沒有設立良好的密碼機制,可能給系統造成無法挽回的後果。
很多用戶喜歡用自己的生日、姓名、英文名等信息來設定,這些方式可以通過字典或者社會工程的手段去破解,因此建議用戶在設定密碼時,盡量使用非字典中出現的組合字元,且採用數字與字元、大小寫相結合的密碼,增加密碼被破譯的難度。
二、登錄用戶管理
進入Linux系統前,都是需要登錄的,只有通過系統驗證後,才能進入Linux操作系統,而Linux一般將密碼加密後,存放在/etc/passwd文件中,那麼所有用戶都可以讀取此文件,雖然其中保存的密碼已加密,但安全系數仍不高,因此可以設定影子文件/etc/shadow,只允許有特殊許可權的用戶操作。
三、賬戶安全等級管理
在Linux操作系統上,每個賬戶可以被賦予不同的許可權,因此在建立一個新用戶ID時,系統管理員應根據需要賦予該賬號不同的許可權,且歸並到不同的用戶組中。每個賬號ID應有專人負責,在企業中,如果負責某個ID的員工離職,該立即從系統中刪除該賬號。
四、謹慎使用"r"系列遠程程序管理
在Linux操作系統中,有一系列r開頭的公用程序,如rlogin、rcp等,非常容易被不法分子用來攻擊我們的系統,因此千萬不要將root賬號開放給這些公用程序,現如今很多安全工具都是針對此漏洞而設計的,比如PAM工具,就可以將其有效地禁止掉。
五、root用戶許可權管理
root可謂是Linux重點保護對象,因為其權利是最高的,因此千萬不要將它授權出去,但有些程序的安裝、維護必須要求是超級用戶許可權,在此情況下,可以利用其他工具讓這類用戶有部分超級用戶的許可權。sudo就是這樣的工具。
六、綜合防禦管理
防火牆、IDS等防護技術已成功應用到網路安全的各個領域,且都有非常成熟的產品,需要注意的是:在大多數情況下,需要綜合使用這兩項技術,因為防火牆相當於安全防護的第一層,它僅僅通過簡單地比較IP地址/埠對來過濾網路流量,而IDS更加具體,它需要通過具體的數據包(部分或者全部)來過濾網路流量,是安全防護的第二層。綜合使用它們,能夠做到互補,並且發揮各自的優勢,最終實現綜合防禦。

❸ Linux系統的伺服器怎樣進行安全維護

日常維護方面需要分析操作系統日誌,確定系統運行的狀態,做好數據異地備份;安全檢測檢測方面我們應該注意的是: 1)Linux 操作系統漏洞檢測。定期對系統進行漏洞掃描,並模擬黑客從互聯網上對網站 伺服器進行滲透攻擊,以檢測 Linux 系統的安全狀況。 2)Linux 操作系統安全加固,禁止不必要開放的埠、不安全的服務,啟用防火牆安全 策略,設置安全的並發會話等。 3)在檢測到 Linux 的安全漏洞時,及時對其進行修補,以保障伺服器的安全。

❹ 如何使Linux伺服器變得更安全

1.安裝和配置一個防火牆
一個配置適當的防火牆不僅是系統有效應對外部攻擊的第一道防線,也是最重要的一道防線。在新系統第一次連接上Internet之前,防火牆就應該被安裝並且配置好。防火牆配置成拒絕接收所有數據包,然後再打開允許接收的數據包,將有利於系統的安全。Linux為我們提供了一個非常優秀的防火牆工具,它就是netfilter/iptables。它完全是免費的,並且可以在一台低配置的老機器上很好地運行。防火牆的具體設置方法請參見iptables使用方法。

2、關閉無用的服務和埠
任何網路連接都是通過開放的應用埠來實現的。如果我們盡可能少地開放埠,就使網路攻擊變成無源之水,從而大大減少了攻擊者成功的機會。把Linux作為專用伺服器是個明智的舉措。例如,希望Linux成為的Web伺服器,可以取消系統內所有非必要的服務,只開啟必要服務。這樣做可以盡量減少後門,降低隱患,而且可以合理分配系統資源,提高整機性能。以下是幾個不常用的服務:
① fingerd(finger伺服器)報告指定用戶的個人信息,包括用戶名、真實姓名、shell、目錄和聯系方式,它將使系統暴露在不受歡迎的情報收集活動下,應避免啟動此服務。
② R服務(rshd、rlogin、rwhod、rexec)提供各種級別的命令,它們可以在遠程主機上運行或與遠程主機交互,在封閉的網路環境中登錄而不再要求輸入用戶名和口令,相當方便。然而在公共伺服器上就會暴露問題,導致安全威脅。

3、刪除不用的軟體包
在進行系統規劃時,總的原則是將不需要的服務一律去掉。默認的Linux就是一個強大的系統,運行了很多的服務。但有許多服務是不需要的,很容易引起安全風險。這個文件就是/etc/xinetd.conf,它制定了/usr/sbin/xinetd將要監聽的服務,你可能只需要其中的一個:ftp,其它的類如telnet、shell、login、exec、talk、ntalk、imap、finger、auth等,除非你真的想用它,否則統統關閉。

4、不設置預設路由
在主機中,應該嚴格禁止設置預設路由,即default route。建議為每一個子網或網段設置一個路由,否則其它機器就可能通過一定方式訪問該主機。

5、口令管理
口令的長度一般不要少於8個字元,口令的組成應以無規則的大小寫字母、數字和符號相結合,嚴格避免用英語單詞或片語等設置口令,而且各用戶的口令應該養成定期更換的習慣。另外,口令的保護還涉及到對/etc/passwd和/etc/shadow文件的保護,必須做到只有系統管理員才能訪問這2個文件。安裝一個口令過濾工具加npasswd,能幫你檢查你的口令是否耐得住攻擊。如果你以前沒有安裝此類的工具,建議你現在馬上安裝。如果你是系統管理員,你的系統中又沒有安裝口令過濾工具,請你馬上檢查所有用戶的口令是否能被窮盡搜索到,即對你的/ect/passwd文件實施窮盡搜索攻擊。用單詞作密碼是根本架不住暴力攻擊的。黑客們經常用一些常用字來破解密碼。曾經有一位美國黑客表示,只要用「password」這個字,就可以打開全美多數的計算機。其它常用的單詞還有:account、ald、alpha、beta、computer、dead、demo、dollar、games、bod、hello、help、intro、kill、love、no、ok、okay、please、sex、secret、superuser、system、test、work、yes等。
密碼設置和原則:
a.足夠長,指頭只要多動一下為密碼加一位,就可以讓攻擊者的辛苦增加十倍;
b. 不要用完整的單詞,盡可能包括數字、標點符號和特殊字元等;
c.混用大小寫字元;
d.經常修改。

6、分區管理
一個潛在的攻擊,它首先就會嘗試緩沖區溢出。在過去的幾年中,以緩沖區溢出為類型的安全漏洞是最為常見的一種形式了。更為嚴重的是,緩沖區溢出漏洞佔了遠程網路攻擊的絕大多數,這種攻擊可以輕易使得一個匿名的Internet用戶有機會獲得一台主機的部分或全部的控制權!。
為了防止此類攻擊,我們從安裝系統時就應該注意。如果用root分區記錄數據,如log文件,就可能因為拒絕服務產生大量日誌或垃圾郵件,從而導致系統崩潰。所以建議為/var開辟單獨的分區,用來存放日誌和郵件,以避免root分區被溢出。最好為特殊的應用程序單獨開一個分區,特別是可以產生大量日誌的程序,還建議為/home單獨分一個區,這樣他們就不能填滿/分區了,從而就避免了部分針對Linux分區溢出的惡意攻擊。
很多Linux桌面用戶往往是使用Windows、Linux雙系統。最好使用雙硬碟。方法如下:首先將主硬碟的數據線拆下,找一個10GB左右的硬碟掛在計算機上,將小硬碟設置為從盤,按照平常的操作安裝Linux伺服器版本,除了啟動的引導程序放在MBR外,其它沒有區別。 安裝完成,調試出桌面後,關閉計算機。將小硬碟的數據線拆下,裝上原硬碟,並設定為主盤(這是為了原硬碟和小硬碟同時掛接在一個數據線上),然後安裝Windows軟體。將兩個硬碟都掛在數據線上,數據線是IDE 0介面,將原硬碟設定為主盤,小硬碟設定為從盤。如果要從原硬碟啟動,就在CMOS里將啟動的順序設定為「C、D、CDROM」,或者是「IDE0(HDD-0)」。這樣計算機啟動的時候,進入Windows界面。如果要從小硬碟啟動,就將啟動順序改為「D、C、CDROM」,或者是「IDE1(HDD-1)」,啟動之後,將進入Linux界面。平時兩個操作系統是互相不能夠訪問的。

7、防範網路嗅探:
嗅探器技術被廣泛應用於網路維護和管理方面,它工作的時候就像一部被動聲納,默默的接收看來自網路的各種信息,通過對這些數據的分析,網路管理員可以深入了解網路當前的運行狀況,以便找出網路中的漏洞。在網路安全日益被注意的今天.我們不但要正確使用嗅探器.還要合理防範嗅探器的危害.嗅探器能夠造成很大的安全危害,主要是因為它們不容易被發現。對於一個安全性能要求很嚴格的企業,同時使用安全的拓撲結構、會話加密、使用靜態的ARP地址是有必要的。

8、完整的日誌管理
日誌文件時刻為你記錄著你的系統的運行情況。當黑客光臨時,也不能逃脫日誌的法眼。所以黑客往往在攻擊時修改日誌文件,來隱藏蹤跡。因此我們要限制對/var/log文件的訪問,禁止一般許可權的用戶去查看日誌文件。
另外要使用日誌伺服器。將客戶機的日誌信息保存副本是好主意,創建一台伺服器專門存放日誌文件,可以通過檢查日誌來發現問題。修改/etc/sysconfig/syslog文件加入接受遠程日誌記錄。

/etc/sysconfig/syslog SYSLOGD_OPTIONS="-m r 0"

還應該設定日誌遠程保存。修改/etc/syslog.conf文件加入日誌伺服器的設置,syslog將保存副本在日誌伺服器上。
/etc/syslog.conf *.* @log_server_IP

可以使用彩色日誌過濾器。彩色日誌loco過濾器,目前版本是0.32。使用loco /var/log/messages | more可以顯示出彩色的日誌,明顯標記出root的位置和日誌中異常的命令。這樣可以減少分析日誌時人為遺漏。還要進行日誌的定期檢查。Red Hat Linux中提供了logwatch工具,定期自動檢查日誌並發送郵件到管理員信箱。需要修改/etc/log.d/conf/ logwatch.conf文件,在MailTo = root參數後增加管理員的郵件地址。Logwatch會定期檢查日誌,過濾有關使用root、sudo、telnet、ftp登錄等信息,協助管理員分析日常安全。完整的日誌管理要包括網路數據的正確性、有效性、合法性。對日誌文件的分析還可以預防入侵。例如、某一個用戶幾小時內的20次的注冊失敗記錄,很可能是入侵者正在嘗試該用戶的口令。

9、終止正進行的攻擊
假如你在檢查日誌文件時,發現了一個用戶從你未知的主機登錄,而且你確定此用戶在這台主機上沒有賬號,此時你可能正被攻擊。首先你要馬上鎖住此賬號(在口令文件或shadow文件中,此用戶的口令前加一個Ib或其他的字元)。若攻擊者已經連接到系統,你應馬上斷開主機與網路的物理連接。如有可能,你還要進一步查看此用戶的歷史記錄,查看其他用戶是否也被假冒,攻擊音是否擁有根許可權。殺掉此用戶的所有進程並把此主機的ip地址掩碼加到文件hosts.deny中。

10、使用安全工具軟體:
Linux已經有一些工具可以保障伺服器的安全。如bastille linux和Selinux。 bastille linux對於不熟悉 linux 安全設定的使用者來說,是一套相當方便的軟體,bastille linux 目的是希望在已經存在的 linux 系統上,建構出一個安全性的環境。增強安全性的Linux(SELinux)是美國安全部的一個研發項目,它的目的在於增強開發代碼的Linux內核,以提供更強的保護措施,防止一些關於安全方面的應用程序走彎路,減輕惡意軟體帶來的災難。普通的Linux系統的安全性是依賴內核的,這個依賴是通過setuid/setgid產生的。在傳統的安全機制下,暴露了一些應用授權問題、配置問題或進程運行造成整個系統的安全問題。這些問題在現在的操作系統中都存在,這是由於他們的復雜性和與其它程序的互用性造成的。SELinux只單單依賴於系統的內核和安全配置政策。一旦你正確配置了系統,不正常的應用程序配置或錯誤將只返回錯誤給用戶的程序和它的系統後台程序。其它用戶程序的安全性和他們的後台程序仍然可以正常運行,並保持著它們的安全系統結構。用簡單一點的話說就是:沒有任何的程序配置錯誤可以造成整個系統的崩潰。安裝SELinux SELinux的內核、工具、程序/工具包,還有文檔都可以到增強安全性的Linux網站上上下載你必須有一個已經存在的Linux系統來編譯你的新內核,這樣才能訪問沒有更改的系統補丁包。

11.使用保留IP地址
維護網路安全性最簡單的方法是保證網路中的主機不同外界接觸。最基本的方法是與公共網路隔離。然而,這種通過隔離達到的安全性策略在許多情況下是不能接受的。這時,使用保留IP地址是一種簡單可行的方法,它可以讓用戶訪問Internet同時保證一定的安全性。- RFC 1918規定了能夠用於本地 TCP/IP網路使用的IP地址范圍,這些IP地址不會在Internet上路由,因此不必注冊這些地址。通過在該范圍分配IP地址,可以有效地將網路流量限制在本地網路內。這是一種拒絕外部計算機訪問而允許內部計算機互聯的快速有效的方法。 保留IP地址范圍:
---- 10.0.0 .0 - 10.255.255.255
---- 172.16.0.0 - 172.31.255.255
--- 192.168.0.0 - 192.168.255.255。
來自保留IP地址的網路交通不會經過Internet路由器,因此被賦予保留IP地址的任何計算機不能從外部網路訪問。但是,這種方法同時也不允許用戶訪問外部網路。IP偽裝可以解決這一問題。

12、合理選擇Linux發行版本:
對於伺服器使用的Linux版本,既不使用最新的發行版本,也不選擇太老的版本。應當使用比較成熟的版本:前一個產品的最後發行版本如RHEL 3.0等。畢竟對於伺服器來說安全穩定是第一的。

13、部署Linux防範病毒軟體
Linux操作系統一直被認為是Windows系統的勁敵,因為它不僅安全、穩定、成本低,而且很少發現有病毒傳播。但是,隨著越來越多的伺服器、工作站和個人電腦使用Linux軟體,電腦病毒製造者也開始攻擊這一系統。對於Linux系統無論是伺服器,還是工作站的安全性和許可權控制都是比較強大的,這主要得力於其優秀的技術設計,不僅使它的作業系統難以宕機,而且也使其難以被濫用。Unix經過20多年的發展和完善,已經變得非常堅固,而Linux基本上繼承了它的優點。在Linux里,如果不是超級用戶,那麼惡意感染系統文件的程序將很難得逞。速客一號(Slammer)、沖擊波(Blast)、霸王蟲(Sobig)、 米蟲(Mimail)、勞拉(Win32.Xorala)病毒等惡性程序雖然不會損壞Linux伺服器,但是卻會傳播給訪問它的Windows系統平台的計算機。

❺ 如何提高linux伺服器的安全策略

安全是IT行業一個老生常談的話題了,處理好信息安全問題已變得刻不容緩。做為運維人員,就必須了解一些安全運維准則,同時,要保護自己所負責的業務,首先要站在攻擊者的角度思考問題,修補任何潛在的威脅和漏洞。主要分五部分展開:賬戶和登錄安全賬戶安全是系統安全的第一道屏障,也是系統安全的核心,保障登錄賬戶的安全,在一定程度上可以提高伺服器的安全級別,下面重點介紹下Linux系統登錄賬戶的安全設置方法。
1、刪除特殊的賬戶和賬戶組 Linux提供了各種不同角色的系統賬號,在系統安裝完成後,默認會安裝很多不必要的用戶和用戶組,如果不需要某些用戶或者組,就要立即刪除它,因為賬戶越多,系統就越不安全,很可能被黑客利用,進而威脅到伺服器的安全。
Linux系統中可以刪除的默認用戶和組大致有如下這些:
可刪除的用戶,如adm,lp,sync,shutdown,halt,news,uucp,operator,games,gopher等。
可刪除的組,如adm,lp,news,uucp,games,dip,pppusers,popusers,slipusers等。
2、關閉系統不需要的服務Linux在安裝完成後,綁定了很多沒用的服務,這些服務默認都是自動啟動的。對於伺服器來說,運行的服務越多,系統就越不安全,越少服務在運行,安全性就越好,因此關閉一些不需要的服務,對系統安全有很大的幫助。具體哪些服務可以關閉,要根據伺服器的用途而定,一般情況下,只要系統本身用不到的服務都認為是不必要的服務。例如:某台Linux伺服器用於www應用,那麼除了httpd服務和系統運行是必須的服務外,其他服務都可以關閉。下面這些服務一般情況下是不需要的,可以選擇關閉: anacron、auditd、autofs、avahi-daemon、avahi-dnsconfd、bluetooth、cpuspeed、firstboot、gpm、haldaemon、hidd、ip6tables、ipsec、isdn、lpd、mcstrans、messagebus、netfs、nfs、nfslock、nscd、pcscd portmap、readahead_early、restorecond、rpcgssd、rpcidmapd、rstatd、sendmail、setroubleshoot、yppasswdd ypserv
3、密碼安全策略在Linux下,遠程登錄系統有兩種認證方式:密碼認證和密鑰認證。密碼認證方式是傳統的安全策略,對於密碼的設置,比較普遍的說法是:至少6個字元以上,密碼要包含數字、字母、下劃線、特殊符號等。設置一個相對復雜的密碼,對系統安全能起到一定的防護作用,但是也面臨一些其他問題,例如密碼暴力破解、密碼泄露、密碼丟失等,同時過於復雜的密碼對運維工作也會造成一定的負擔。密鑰認證是一種新型的認證方式,公用密鑰存儲在遠程伺服器上,專用密鑰保存在本地,當需要登錄系統時,通過本地專用密鑰和遠程伺服器的公用密鑰進行配對認證,如果認證成功,就成功登錄系統。這種認證方式避免了被暴力破解的危險,同時只要保存在本地的專用密鑰不被黑客盜用,攻擊者一般無法通過密鑰認證的方式進入系統。因此,在Linux下推薦用密鑰認證方式登錄系統,這樣就可以拋棄密碼認證登錄系統的弊端。Linux伺服器一般通過SecureCRT、putty、Xshell之類的工具進行遠程維護和管理,密鑰認證方式的實現就是藉助於SecureCRT軟體和Linux系統中的SSH服務實現的。
4、合理使用su、sudo命令su命令:是一個切換用戶的工具,經常用於將普通用戶切換到超級用戶下,當然也可以從超級用戶切換到普通用戶。為了保證伺服器的安全,幾乎所有伺服器都禁止了超級用戶直接登錄系統,而是通過普通用戶登錄系統,然後再通過su命令切換到超級用戶下,執行一些需要超級許可權的工作。通過su命令能夠給系統管理帶來一定的方便,但是也存在不安全的因素,例如:系統有10個普通用戶,每個用戶都需要執行一些有超級許可權的操作,就必須把超級用戶的密碼交給這10個普通用戶,如果這10個用戶都有超級許可權,通過超級許可權可以做任何事,那麼會在一定程度上對系統的安全造成了威協。因此su命令在很多人都需要參與的系統管理中,並不是最好的選擇,超級用戶密碼應該掌握在少數人手中,此時sudo命令就派上用場了。sudo命令:允許系統管理員分配給普通用戶一些合理的「權利」,並且不需要普通用戶知道超級用戶密碼,就能讓他們執行一些只有超級用戶或其他特許用戶才能完成的任務。比如:系統服務重啟、編輯系統配置文件等,通過這種方式不但能減少超級用戶登錄次數和管理時間,也提高了系統安全性。因此,sudo命令相對於許可權無限制性的su來說,還是比較安全的,所以sudo也被稱為受限制的su,另外sudo也是需要事先進行授權認證的,所以也被稱為授權認證的su。
sudo執行命令的流程是:將當前用戶切換到超級用戶下,或切換到指定的用戶下,然後以超級用戶或其指定切換到的用戶身份執行命令,執行完成後,直接退回到當前用戶,而這一切的完成要通過sudo的配置文件/etc/sudoers來進行授權。
sudo設計的宗旨是:賦予用戶盡可能少的許可權但仍允許它們完成自己的工作,這種設計兼顧了安全性和易用性,因此,強烈推薦通過sudo來管理系統賬號的安全,只允許普通用戶登錄系統,如果這些用戶需要特殊的許可權,就通過配置/etc/sudoers來完成,這也是多用戶系統下賬號安全管理的基本方式。
5、刪減系統登錄歡迎信息 系統的一些歡迎信息或版本信息,雖然能給系統管理者帶來一定的方便,但是這些信息有時候可能被黑客利用,成為攻擊伺服器的幫凶,為了保證系統的安全,可以修改或刪除某些系統文件,需要修改或刪除的文件有4個,分別是:/etc/issue、/etc/issue.net、/etc/redhat-release和/etc/motd。/etc/issue和/etc/issue.net文件都記錄了操作系統的名稱和版本號,當用戶通過本地終端或本地虛擬控制台等登錄系統時,/etc/issue的文件內容就會顯示,當用戶通過ssh或telnet等遠程登錄系統時,/etc/issue.net文件內容就會在登錄後顯示。在默認情況下/etc/issue.net文件的內容是不會在ssh登錄後顯示的,要顯示這個信息可以修改/etc/ssh/sshd_config文件,在此文件中添加如下內容即可:Banner /etc/issue.net其實這些登錄提示很明顯泄漏了系統信息,為了安全起見,建議將此文件中的內容刪除或修改。/etc/redhat-release文件也記錄了操作系統的名稱和版本號,為了安全起見,可以將此文件中的內容刪除/etc/motd文件是系統的公告信息。每次用戶登錄後,/etc/motd文件的內容就會顯示在用戶的終端。通過這個文件系統管理員可以發布一些軟體或硬體的升級、系統維護等通告信息,但是此文件的最大作用就、是可以發布一些警告信息,當黑客登錄系統後,會發現這些警告信息,進而產生一些震懾作用。看過國外的一個報道,黑客入侵了一個伺服器,而這個伺服器卻給出了歡迎登錄的信息,因此法院不做任何裁決。
遠程訪問和認證安全
1、遠程登錄取消telnet而採用SSH方式 telnet是一種古老的遠程登錄認證服務,它在網路上用明文傳送口令和數據,因此別有用心的人就會非常容易截獲這些口令和數據。而且,telnet服務程序的安全驗證方式也極其脆弱,攻擊者可以輕松將虛假信息傳送給伺服器。現在遠程登錄基本拋棄了telnet這種方式,而取而代之的是通過SSH服務遠程登錄伺服器。
2、合理使用Shell歷史命令記錄功能 在Linux下可通過history命令查看用戶所有的歷史操作記錄,同時shell命令操作記錄默認保存在用戶目錄下的.bash_history文件中,通過這個文件可以查詢shell命令的執行歷史,有助於運維人員進行系統審計和問題排查,同時,在伺服器遭受黑客攻擊後,也可以通過這個命令或文件查詢黑客登錄伺服器所執行的歷史命令操作,但是有時候黑客在入侵伺服器後為了毀滅痕跡,可能會刪除.bash_history文件,這就需要合理的保護或備份.bash_history文件。
3、啟用tcp_wrappers防火牆Tcp_Wrappers是一個用來分析TCP/IP封包的軟體,類似的IP封包軟體還有iptables。Linux默認都安裝了Tcp_Wrappers。作為一個安全的系統,Linux本身有兩層安全防火牆,通過IP過濾機制的iptables實現第一層防護。iptables防火牆通過直觀地監視系統的運行狀況,阻擋網路中的一些惡意攻擊,保護整個系統正常運行,免遭攻擊和破壞。如果通過了第一層防護,那麼下一層防護就是tcp_wrappers了。通過Tcp_Wrappers可以實現對系統中提供的某些服務的開放與關閉、允許和禁止,從而更有效地保證系統安全運行。

文件系統安全
1、鎖定系統重要文件系統運維人員有時候可能會遇到通過root用戶都不能修改或者刪除某個文件的情況,產生這種情況的大部分原因可能是這個文件被鎖定了。在Linux下鎖定文件的命令是chattr,通過這個命令可以修改ext2、ext3、ext4文件系統下文件屬性,但是這個命令必須有超級用戶root來執行。和這個命令對應的命令是lsattr,這個命令用來查詢文件屬性。對重要的文件進行加鎖,雖然能夠提高伺服器的安全性,但是也會帶來一些不便。例如:在軟體的安裝、升級時可能需要去掉有關目錄和文件的immutable屬性和append-only屬性,同時,對日誌文件設置了append-only屬性,可能會使日誌輪換(logrotate)無法進行。因此,在使用chattr命令前,需要結合伺服器的應用環境來權衡是否需要設置immutable屬性和append-only屬性。另外,雖然通過chattr命令修改文件屬性能夠提高文件系統的安全性,但是它並不適合所有的目錄。chattr命令不能保護/、/dev、/tmp、/var等目錄。根目錄不能有不可修改屬性,因為如果根目錄具有不可修改屬性,那麼系統根本無法工作:/dev在啟動時,syslog需要刪除並重新建立/dev/log套接字設備,如果設置了不可修改屬性,那麼可能出問題;/tmp目錄會有很多應用程序和系統程序需要在這個目錄下建立臨時文件,也不能設置不可修改屬性;/var是系統和程序的日誌目錄,如果設置為不可修改屬性,那麼系統寫日誌將無法進行,所以也不能通過chattr命令保護。
2、文件許可權檢查和修改不正確的許可權設置直接威脅著系統的安全,因此運維人員應該能及時發現這些不正確的許可權設置,並立刻修正,防患於未然。下面列舉幾種查找系統不安全許可權的方法。
(1)查找系統中任何用戶都有寫許可權的文件或目錄
查找文件:find / -type f -perm -2 -o -perm -20 |xargs ls -al查找目錄:find / -type d -perm -2 -o -perm -20 |xargs ls –ld
(2)查找系統中所有含「s」位的程序
find / -type f -perm -4000 -o -perm -2000 -print | xargs ls –al
含有「s」位許可權的程序對系統安全威脅很大,通過查找系統中所有具有「s」位許可權的程序,可以把某些不必要的「s」位程序去掉,這樣可以防止用戶濫用許可權或提升許可權的可能性。
(3)檢查系統中所有suid及sgid文件
find / -user root -perm -2000 -print -exec md5sum {} \;find / -user root -perm -4000 -print -exec md5sum {} \;
將檢查的結果保存到文件中,可在以後的系統檢查中作為參考。
(4)檢查系統中沒有屬主的文件
find / -nouser -o –nogroup
沒有屬主的孤兒文件比較危險,往往成為黑客利用的工具,因此找到這些文件後,要麼刪除掉,要麼修改文件的屬主,使其處於安全狀態。
3、/tmp、/var/tmp、/dev/shm安全設定在Linux系統中,主要有兩個目錄或分區用來存放臨時文件,分別是/tmp和/var/tmp。存儲臨時文件的目錄或分區有個共同點就是所有用戶可讀寫、可執行,這就為系統留下了安全隱患。攻擊者可以將病毒或者木馬腳本放到臨時文件的目錄下進行信息收集或偽裝,嚴重影響伺服器的安全,此時,如果修改臨時目錄的讀寫執行許可權,還有可能影響系統上應用程序的正常運行,因此,如果要兼顧兩者,就需要對這兩個目錄或分區就行特殊的設置。/dev/shm是Linux下的一個共享內存設備,在Linux啟動的時候系統默認會載入/dev/shm,被載入的/dev/shm使用的是tmpfs文件系統,而tmpfs是一個內存文件系統,存儲到tmpfs文件系統的數據會完全駐留在RAM中,這樣通過/dev/shm就可以直接操控系統內存,這將非常危險,因此如何保證/dev/shm安全也至關重要。對於/tmp的安全設置,需要看/tmp是一個獨立磁碟分區,還是一個根分區下的文件夾,如果/tmp是一個獨立的磁碟分區,那麼設置非常簡單,修改/etc/fstab文件中/tmp分區對應的掛載屬性,加上nosuid、noexec、nodev三個選項即可,修改後的/tmp分區掛載屬性類似如下:LABEL=/tmp /tmp ext3 rw,nosuid,noexec,nodev 0 0 其中,nosuid、noexec、nodev選項,表示不允許任何suid程序,並且在這個分區不能執行任何腳本等程序,並且不存在設備文件。在掛載屬性設置完成後,重新掛載/tmp分區,保證設置生效。對於/var/tmp,如果是獨立分區,安裝/tmp的設置方法是修改/etc/fstab文件即可;如果是/var分區下的一個目錄,那麼可以將/var/tmp目錄下所有數據移動到/tmp分區下,然後在/var下做一個指向/tmp的軟連接即可。也就是執行如下操作:
[root@server ~]# mv /var/tmp/* /tmp[root@server ~]# ln -s /tmp /var/tmp
如果/tmp是根目錄下的一個目錄,那麼設置稍微復雜,可以通過創建一個loopback文件系統來利用Linux內核的loopback特性將文件系統掛載到/tmp下,然後在掛載時指定限制載入選項即可。一個簡單的操作示例如下:
[root@server ~]# dd if=/dev/zero of=/dev/tmpfs bs=1M count=10000[root@server ~]# mke2fs -j /dev/tmpfs[root@server ~]# cp -av /tmp /tmp.old[root@server ~]# mount -o loop,noexec,nosuid,rw /dev/tmpfs /tmp[root@server ~]# chmod 1777 /tmp[root@server ~]# mv -f /tmp.old/* /tmp/[root@server ~]# rm -rf /tmp.old
最後,編輯/etc/fstab,添加如下內容,以便系統在啟動時自動載入loopback文件系統:
/dev/tmpfs /tmp ext3 loop,nosuid,noexec,rw 0 0
Linux後門入侵檢測工具rootkit是Linux平台下最常見的一種木馬後門工具,它主要通過替換系統文件來達到入侵和和隱蔽的目的,這種木馬比普通木馬後門更加危險和隱蔽,普通的檢測工具和檢查手段很難發現這種木馬。rootkit攻擊能力極強,對系統的危害很大,它通過一套工具來建立後門和隱藏行跡,從而讓攻擊者保住許可權,以使它在任何時候都可以使用root許可權登錄到系統。rootkit主要有兩種類型:文件級別和內核級別,下面分別進行簡單介紹。文件級別的rootkit一般是通過程序漏洞或者系統漏洞進入系統後,通過修改系統的重要文件來達到隱藏自己的目的。在系統遭受rootkit攻擊後,合法的文件被木馬程序替代,變成了外殼程序,而其內部是隱藏著的後門程序。通常容易被rootkit替換的系統程序有login、ls、ps、ifconfig、、find、netstat等,其中login程序是最經常被替換的,因為當訪問Linux時,無論是通過本地登錄還是遠程登錄,/bin/login程序都會運行,系統將通過/bin/login來收集並核對用戶的賬號和密碼,而rootkit就是利用這個程序的特點,使用一個帶有根許可權後門密碼的/bin/login來替換系統的/bin/login,這樣攻擊者通過輸入設定好的密碼就能輕松進入系統。此時,即使系統管理員修改root密碼或者清除root密碼,攻擊者還是一樣能通過root用戶登錄系統。攻擊者通常在進入Linux系統後,會進行一系列的攻擊動作,最常見的是安裝嗅探器收集本機或者網路中其他伺服器的重要數據。在默認情況下,Linux中也有一些系統文件會監控這些工具動作,例如ifconfig命令,所以,攻擊者為了避免被發現,會想方設法替換其他系統文件,常見的就是ls、ps、ifconfig、、find、netstat等。如果這些文件都被替換,那麼在系統層面就很難發現rootkit已經在系統中運行了。這就是文件級別的rootkit,對系統維護很大,目前最有效的防禦方法是定期對系統重要文件的完整性進行檢查,如果發現文件被修改或者被替換,那麼很可能系統已經遭受了rootkit入侵。檢查件完整性的工具很多,常見的有Tripwire、 aide等,可以通過這些工具定期檢查文件系統的完整性,以檢測系統是否被rootkit入侵。內核級rootkit是比文件級rootkit更高級的一種入侵方式,它可以使攻擊者獲得對系統底層的完全控制權,此時攻擊者可以修改系統內核,進而截獲運行程序向內核提交的命令,並將其重定向到入侵者所選擇的程序並運行此程序,也就是說,當用戶要運行程序A時,被入侵者修改過的內核會假裝執行A程序,而實際上卻執行了程序B。內核級rootkit主要依附在內核上,它並不對系統文件做任何修改,因此一般的檢測工具很難檢測到它的存在,這樣一旦系統內核被植入rootkit,攻擊者就可以對系統為所欲為而不被發現。目前對於內核級的rootkit還沒有很好的防禦工具,因此,做好系統安全防範就非常重要,將系統維持在最小許可權內工作,只要攻擊者不能獲取root許可權,就無法在內核中植入rootkit。
1、rootkit後門檢測工具chkrootkit chkrootkit是一個Linux系統下查找並檢測rootkit後門的工具,它的官方址:http://www.chkrootkit.org/。 chkrootkit沒有包含在官方的CentOS源中,因此要採取手動編譯的方法來安裝,不過這種安裝方法也更加安全。chkrootkit的使用比較簡單,直接執行chkrootkit命令即可自動開始檢測系統。下面是某個系統的檢測結果:
[root@server chkrootkit]# /usr/local/chkrootkit/chkrootkitChecking `ifconfig』… INFECTEDChecking `ls』… INFECTEDChecking `login』… INFECTEDChecking `netstat』… INFECTEDChecking `ps』… INFECTEDChecking `top』… INFECTEDChecking `sshd』… not infectedChecking `syslogd』… not tested
從輸出可以看出,此系統的ifconfig、ls、login、netstat、ps和top命令已經被感染。針對被感染rootkit的系統,最安全而有效的方法就是備份數據重新安裝系統。chkrootkit在檢查rootkit的過程中使用了部分系統命令,因此,如果伺服器被黑客入侵,那麼依賴的系統命令可能也已經被入侵者替換,此時chkrootkit的檢測結果將變得完全不可信。為了避免chkrootkit的這個問題,可以在伺服器對外開放前,事先將chkrootkit使用的系統命令進行備份,在需要的時候使用備份的原始系統命令讓chkrootkit對rootkit進行檢測。
2、rootkit後門檢測工具RKHunter RKHunter是一款專業的檢測系統是否感染rootkit的工具,它通過執行一系列的腳本來確認伺服器是否已經感染rootkit。在官方的資料中,RKHunter可以作的事情有:MD5校驗測試,檢測文件是否有改動
檢測rootkit使用的二進制和系統工具文件 檢測特洛伊木馬程序的特徵碼 檢測常用程序的文件屬性是否異常 檢測系統相關的測試 檢測隱藏文件 檢測可疑的核心模塊LKM 檢測系統已啟動的監聽埠
在Linux終端使用rkhunter來檢測,最大的好處在於每項的檢測結果都有不同的顏色顯示,如果是綠色的表示沒有問題,如果是紅色的,那就要引起關注了。另外,在執行檢測的過程中,在每個部分檢測完成後,需要以Enter鍵來繼續。如果要讓程序自動運行,可以執行如下命令:
[root@server ~]# /usr/local/bin/rkhunter –check –skip-keypress
同時,如果想讓檢測程序每天定時運行,那麼可以在/etc/crontab中加入如下內容:
30 09 * * * root /usr/local/bin/rkhunter –check –cronjob
這樣,rkhunter檢測程序就會在每天的9:30分運行一次。伺服器遭受攻擊後的處理過程安全總是相對的,再安全的伺服器也有可能遭受到攻擊。作為一個安全運維人員,要把握的原則是:盡量做好系統安全防護,修復所有已知的危險行為,同時,在系統遭受攻擊後能夠迅速有效地處理攻擊行為,最大限度地降低攻擊對系統產生的影響。

❻ Linux伺服器的安全防護都有哪些措施

一、強化密碼強度
只要涉及到登錄,就需要用到密碼,如果密碼設定不恰當,就很容易被黑客破解,如果是超級管理員(root)用戶,如果沒有設立良好的密碼機制,可能給系統造成無法挽回的後果。
很多用戶喜歡用自己的生日、姓名、英文名等信息來設定,這些方式可以通過字典或者社會工程的手段去破解,因此建議用戶在設定密碼時,盡量使用非字典中出現的組合字元,且採用數字與字元、大小寫相結合的密碼,增加密碼被破譯的難度。
二、登錄用戶管理
進入Linux系統前,都是需要登錄的,只有通過系統驗證後,才能進入Linux操作系統,而Linux一般將密碼加密後,存放在/etc/passwd文件中,那麼所有用戶都可以讀取此文件,雖然其中保存的密碼已加密,但安全系數仍不高,因此可以設定影子文件/etc/shadow,只允許有特殊許可權的用戶操作。
三、賬戶安全等級管理
在Linux操作系統上,每個賬戶可以被賦予不同的許可權,因此在建立一個新用戶ID時,系統管理員應根據需要賦予該賬號不同的許可權,且歸並到不同的用戶組中。每個賬號ID應有專人負責,在企業中,如果負責某個ID的員工離職,該立即從系統中刪除該賬號。
四、謹慎使用"r"系列遠程程序管理
在Linux操作系統中,有一系列r開頭的公用程序,如rlogin、rcp等,非常容易被不法分子用來攻擊我們的系統,因此千萬不要將root賬號開放給這些公用程序,現如今很多安全工具都是針對此漏洞而設計的,比如PAM工具,就可以將其有效地禁止掉。
五、root用戶許可權管理
root可謂是Linux重點保護對象,因為其權利是最高的,因此千萬不要將它授權出去,但有些程序的安裝、維護必須要求是超級用戶許可權,在此情況下,可以利用其他工具讓這類用戶有部分超級用戶的許可權。sudo就是這樣的工具。
六、綜合防禦管理
防火牆、IDS等防護技術已成功應用到網路安全的各個領域,且都有非常成熟的產品,需要注意的是:在大多數情況下,需要綜合使用這兩項技術,因為防火牆相當於安全防護的第一層,它僅僅通過簡單地比較IP地址/埠對來過濾網路流量,而IDS更加具體,它需要通過具體的數據包(部分或者全部)來過濾網路流量,是安全防護的第二層。綜合使用它們,能夠做到互補,並且發揮各自的優勢,最終實現綜合防禦。
酷酷雲伺服器為您誠意解答,伺服器租戶的選擇,酷酷雲值得信賴。

❼ 如何保證Linux伺服器的安全

一、更新伺服器。

❽ 大家的 linux 伺服器安全策略怎麼做的

「安全第一」對於linux管理界乃至計算機也都是一個首要考慮的問題。加密的安全性依賴於密碼本身而非演算法!而且,此處說到的安全是指數據的完整性,由此,數據的認證安全和完整性高於數據的私密安全,也就是說數據發送者的不確定性以及數據的完整性得不到保證的話,數據的私密性當無從談起!
1. 禁止系統響應任何從外部/內部來的ping請求攻擊者一般首先通過ping命令檢測此主機或者IP是否處於活動狀態 ,如果能夠ping通 某個主機或者IP,那麼攻擊者就認為此系統處於活動狀態,繼而進行攻擊或破壞。如果沒有人能ping通機器並收到響應,那麼就可以大大增強伺服器的安全性,linux下可以執行如下設置,禁止ping請求:

❾ 如何保證Linux伺服器的網路安全

本文將向你介紹基本的 Linux 伺服器安全知識。雖然主要針對 Debian/Ubuntu,但是你可以將此處介紹的所有內容應用於其他 Linux 發行版。我也鼓勵你研究這份材料,並在適當的情況下進行擴展。

1、更新你的伺服器

保護伺服器安全的第一件事是更新本地存儲庫,並通過應用最新的修補程序來升級操作系統和已安裝的應用程序。

在 Ubuntu 和 Debian 上:

$ sudo apt update && sudo apt upgrade -y

在 Fedora、CentOS 或 RHEL:

$ sudo dnf upgrade

2、創建一個新的特權用戶

接下來,創建一個新的用戶帳戶。永遠不要以 root 身份登錄伺服器,而是創建你自己的帳戶(用戶),賦予它 sudo 許可權,然後使用它登錄你的伺服器。

首先創建一個新用戶:

$ adser <username>

通過將 sudo 組(-G)附加(-a)到用戶的組成員身份里,從而授予新用戶帳戶 sudo 許可權:

$ usermod -a -G sudo <username>

3、上傳你的 SSH 密鑰

你應該使用 SSH 密鑰登錄到新伺服器。你可以使用 ssh--id 命令將 預生成的 SSH 密鑰 上傳到你的新伺服器:

$ ssh--id <username>@ip_address

現在,你無需輸入密碼即可登錄到新伺服器。

4、安全強化 SSH

接下來,進行以下三個更改:

  • 禁用 SSH 密碼認證

  • 限制 root 遠程登錄

  • 限制對 IPv4 或 IPv6 的訪問

  • 使用你選擇的文本編輯器打開 /etc/ssh/sshd_config 並確保以下行:

  • PasswordAuthentication yes
  • PermitRootLogin yes

  • 改成這樣:

  • PasswordAuthentication no

  • PermitRootLogin no

  • 接下來,通過修改 AddressFamily 選項將 SSH 服務限制為 IPv4 或 IPv6。要將其更改為僅使用 IPv4(對大多數人來說應該沒問題),請進行以下更改:

  • AddressFamily inet

  • 重新啟動 SSH 服務以啟用你的更改。請注意,在重新啟動 SSH 服務之前,與伺服器建立兩個活動連接是一個好主意。有了這些額外的連接,你可以在重新啟動 SSH 服務出錯的情況下修復所有問題。

    在 Ubuntu 上:

  • $ sudo service sshd restart

  • 在 Fedora 或 CentOS 或任何使用 Systemd 的系統上:

  • $ sudo systemctl restart sshd

  • 5、啟用防火牆

    現在,你需要安裝防火牆、啟用防火牆並對其進行配置,以僅允許你指定的網路流量通過。(Ubuntu 上的) 簡單的防火牆 (UFW)是一個易用的 iptables 界面,可大大簡化防火牆的配置過程。

    你可以通過以下方式安裝 UFW:

  • $ sudo apt install ufw

  • 默認情況下,UFW 拒絕所有傳入連接,並允許所有傳出連接。這意味著伺服器上的任何應用程序都可以訪問互聯網,但是任何嘗試訪問伺服器的內容都無法連接。

    首先,確保你可以通過啟用對 SSH、HTTP 和 HTTPS 的訪問來登錄:

  • $ sudo ufw allow ssh

  • $ sudo ufw allow http

  • $ sudo ufw allow https

  • 然後啟用 UFW:

  • $ sudo ufw enable

  • 你可以通過以下方式查看允許和拒絕了哪些服務:

  • $ sudo ufw status

  • 如果你想禁用 UFW,可以通過鍵入以下命令來禁用:

  • $ sudo ufw disable

  • 你還可以(在 RHEL/CentOS 上)使用 firewall-cmd ,它已經安裝並集成到某些發行版中。

    6、安裝 Fail2ban

    Fail2ban 是一種用於檢查伺服器日誌以查找重復或自動攻擊的應用程序。如果找到任何攻擊,它會更改防火牆以永久地或在指定的時間內阻止攻擊者的 IP 地址。

    你可以通過鍵入以下命令來安裝 Fail2ban:

  • $ sudo apt install fail2ban -y

  • 然後復制隨附的配置文件:

  • $ sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

  • 重啟 Fail2ban:

  • $ sudo service fail2ban restart

  • 這樣就行了。該軟體將不斷檢查日誌文件以查找攻擊。一段時間後,該應用程序將建立相當多的封禁的 IP 地址列表。你可以通過以下方法查詢 SSH 服務的當前狀態來查看此列表:

  • $ sudo fail2ban-client status ssh

  • 7、移除無用的網路服務

    幾乎所有 Linux 伺服器操作系統都啟用了一些面向網路的服務。你可能希望保留其中大多數,然而,有一些你或許希望刪除。你可以使用 ss 命令查看所有正在運行的網路服務:(LCTT 譯註:應該是只保留少部分,而所有確認無關的、無用的服務都應該停用或刪除。)

  • $ sudo ss -atpu

  • ss 的輸出取決於你的操作系統。下面是一個示例,它顯示 SSH(sshd)和 Ngnix(nginx)服務正在偵聽網路並准備連接:

  • tcp LISTEN 0 128 *:http *:* users:(("nginx",pid=22563,fd=7))

  • tcp LISTEN 0 128 *:ssh *:* users:(("sshd",pid=685,fd=3))

  • 刪除未使用的服務的方式因你的操作系統及其使用的程序包管理器而異。

    要在 Debian / Ubuntu 上刪除未使用的服務:

  • $ sudo apt purge <service_name>

  • 要在 Red Hat/CentOS 上刪除未使用的服務:

  • $ sudo yum remove <service_name>

  • 再次運行 ss -atup 以確認這些未使用的服務沒有安裝和運行。

以上文章來源www.idccoupon.com,歡迎一起交流討論學習。

❿ Linux伺服器安全策略詳解的目錄

第1章 Linux網路基礎與Linux伺服器的安全威脅
第2章 OpenSSL與Linux網路安全
第3章 PAM與Open LDAP
第4章 Linux網路服務和xinetd
第5章 DNS伺服器的安全策略
第6章 Web伺服器的安全策略
第7章 電子郵件伺服器的安全策略
第8章 FTP伺服器的安全策略
第9章 Samba伺服器的安全策略
第10章 NFS伺服器的安全策略
第11章 DHCP伺服器的安全策略
第12章 Squid伺服器的安全策略
第13章 SSH伺服器的安全策略
第14章 Linux防火牆
第15章 Linux網路環境下的VPN構建
第16章 使用IDS保護Linux伺服器
第17章 Linux網路監控策略
第18章 Linux常用安全工具
第19章 防範嗅探器攻擊和Linux病毒
第20章 Linux數據備份恢復技術
附錄A 使用Linux幫助信息
附錄B Linux用戶和用戶組管理命令
附錄C Linux文件處理命令
附錄D Linux網路設備管理命令
附錄E Linux進程管理命令
附錄F Linux磁碟管理維護命令
附錄G Linux設備管理命令
附錄H Linux其他常用命令

熱點內容
sqlserver圖片路徑 發布:2024-11-07 14:37:56 瀏覽:67
磁羅經演算法 發布:2024-11-07 14:26:49 瀏覽:850
怎麼使用主機搭建伺服器 發布:2024-11-07 14:10:26 瀏覽:84
螞蟻礦機什麼配置 發布:2024-11-07 14:10:22 瀏覽:430
上海家譜資料庫 發布:2024-11-07 14:10:19 瀏覽:296
ibm伺服器如何修復系統 發布:2024-11-07 13:56:02 瀏覽:977
pythonarraylist 發布:2024-11-07 13:52:03 瀏覽:742
不記名杉德卡密碼在哪裡 發布:2024-11-07 13:43:44 瀏覽:533
劍擊腳本 發布:2024-11-07 13:39:12 瀏覽:205
python強轉 發布:2024-11-07 13:32:35 瀏覽:1001