linux伺服器安全問題?
01-21
現在手上有幾台VPS,裝的都是Ubuntu系統。但是,最近不是這個報被黑,就是那個被人利用發垃圾郵件。因為我只是兼職幫老闆做點程序,伺服器問題本不該我管,我也不是linux高手,只是日常使用還行,一到被黑這種問題上面就完全沒有了思路,希望各位linux前輩,給一些學習的建議跟方向。
我作為一個半隻腳腳踏入門的說點最基本的吧 全當是拋磚引玉:
1.停用所有不需要的服務 什麼ftp啊,smtp啊,什麼bluetooth等等,這些不用到的伺服器全部關閉,記得chkconfig設置其不隨機啟動,這樣就少開很多對外開放的埠,還省資源。2.修改常用伺服器的埠,比如ssh的22啊 mysql的3306啊之類的,防止一般的嗅探軟體來掃。3.使用iptables
只對外開放需要外部訪問的埠,比如80 8080 443等 這個軟防火牆他娘的比上萬的硬體防火牆太划算了,學好了也不虧,只要玩linux基本都用的上。 具體方法請google(動詞),幾條簡單的規則,基本可以防止大部分低端黑。 PS1:調試iptables的時候 可以用虛擬機來調試,服務上線的時候可以先加一條crontab記錄,10分鐘關閉iptables一次,防止你自己也登錄不上... PS2:用iptables可以限制sshd服務的訪問來源,限制在你們公司常用的ip地址才可以訪問。4.使用複雜的密碼,至少密碼都要包含字母數字標點符號大小寫8位以上5.使用證書而不是密碼來遠程登錄6.削弱root用戶的許可權,比如新建apache用戶來跑apache服務,並且限制apache用戶的許可權,這樣可以防止當web服務代碼漏洞造成的整台機器的root許可權被奪。7.如果有必要 升級操作系統和web伺服器和一些所需軟體的版本或者打補丁。這個工作量比較大,必要的時候做。8.上面運行的服務如果有資料庫,注意代碼防sql注入 。
好像偏題了。。先想到這麼多啦1、僅開使用的服務,如ssh2、開起防火牆,redhat linux 默認防火牆只開ssh 22埠,建議更改默認埠3、應用服務可設置非固定埠,如周一開1111 周二開2222 當然這個得配置和寫腳本等4、密碼策略要高,勤於更改,不明文保存,包括腳本里5、web、mail和資料庫伺服器絕對是重點,加ids 和 審計啊,相應的服務也要做安全加固,如資料庫口令 審計啊 數據加密啊6、遵循授權最小化原則7、及時更新各類軟體的補丁,都公開的漏洞了能不補嗎8、做文件修改檢查,不行就算md5
9、什麼gcc perl tcl python ruby java 能屏蔽的就屏蔽了
10、把網路流量檢測起來11、物理安全(略)關不必要的服務(ftp、phpmyadmin、wdcp、各種cp等等)開防火牆改ssh埠(或用指定的指令打開ssh埠可參考我的一篇博文《利用ping使其iptables打開ssh埠》禁用root禁用密碼用密鑰登錄程序少點漏洞
應用級不太懂。系統級,沒用的服務不但不要開,我甚至根本就不裝。這是我偏愛Arch的最主要原因。其他軟體包也一樣,只裝必須用到的最少量的軟體包及其必須的依賴。遠程管理,只用ssh,並禁止root用戶遠程登陸,修改ssh默認埠,禁止口令登陸,普通用戶用密鑰登陸後再su或sudo
技術大牛從來不在知乎上回答問題
最簡單的就是裝個雲鎖,CS架構,伺服器端裝個agent防護,控制台裝在個人電腦上,可以遠程安全設置和監控伺服器狀態CPU、內存和硬碟,被攻擊還能彈出報警,圖形化操作界面,免費。
線上業務安全
底層系統安全
1.關注漏洞庫及時升級內核版本防止提權 2.禁止服務賬號登陸(nologin) 3.限制root登陸(本地su -登陸)4.grub引導加密,禁用本地root登陸
訪問控制
1.通過iptables入站規則將公開和非公開服務區分,指向用戶提供web介面。 2.ssh服務配置白名單限制ip登錄 3.ssh密鑰+密碼登陸 4.iptables限制遠程登陸22埠的ip地址應用服務安全
1.避免使用root許可權對外提供服務 2.站點許可權:文件夾750,頁面文件640,緩存目錄可讀寫770 3.站點上傳目錄(用於上傳圖片,附件等)禁止再次解析成動態頁。4.服務漏洞(防止已知版本漏洞)
5.限制訪問與並發量 6.偽裝版本號(編譯安裝) 7.配置入侵檢測:AIDE高級入侵檢測+外部郵件告警
本地安全
環境
1.物理指紋門禁 2.網路vlan隔離、dhcp snooping信任上聯口、固定資產arp雙向綁定管理
員工安全意識,責任
核心安全還是在對外的web服務上,如何過濾篩選出有害和無害的數據流是關鍵
裝個安全狗唄,他們有linux的安全軟體,挺實用的
可以看一下這篇文章 防範伺服器被攻擊的戰略盤點http://www.5zidc.com/info/info/590.html
推薦閱讀:
※你學習嵌入式linux時有哪些經典書籍讓你相見恨晚?
※有自己的VPS伺服器可以用來做什麼有趣的事?
※Linux內核中許多晶元的驅動程序都已經存在,為何還要開發這些晶元的驅動?
※本人想從事嵌入式開發,求指點該怎麼一步一步打基礎?
※lvs 性能,轉發數據的理論極限?