歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> Unix教程

UNIX 操作系統安全


  備注:
  
  
  本小節的要點包括:
  ●常用網絡服務安全
  ■DNS
  ■WWW
  ■WEB
  ■FTP
  
  ●LINUX帳戶安全
  ■LINUX系統帳戶文件
  ■LINUX系統帳戶安全
  
  ●LINUX文件系統安全
  ■文件權限分類
  ■文件和目錄的訪問對象
  ■UMASK值
  ■不可改變位
  ■SUID/SGID文件
  ■文件完整性
  ■文件加密
  ■備份策略
  
  1 常用網絡服務安全
  
  1.1 域名(dns)服務
  
  1.1.1 DNS基本原理
  
  1、DNS術語、特性:
  ●互連網上主機信息的分布式數據庫
  ●域名服務器
  ●解析器即客戶機
  ●域名查詢采用UDP協議,而區域傳輸采用TCP協議
  ●域名解析過程分為兩種方式:遞歸模式和交互模式
  
  2、域名解析過程
  典型的域名解析過程如圖1所示。
   
  圖1  域名解析過程
  
  3、BIND主要配置文件
  BIND的主要配置文件包括:
  ●named配置文件:/etc/named.boot、etc/named.conf
  ●DNS數據文件
  ●反向解析順序文件/etc/resolv.conf
  
  1.1.2 DNS服務器的常見攻擊方法
  
  DNS服務器的常見攻擊方法包括:
  ●地址欺騙
  ●遠程漏洞入侵
  ●拒絕服務
  
  1、地址欺騙
  如圖2所示。
   
  圖2  地址欺騙
  
  2、緩沖區溢出漏洞
  解決辦法:
  ●安裝最新BIND
  ■http://www.isc.org/products/BIND/bind9.html
  
  3、DNS服務器的拒絕服務攻擊
  ●針對DNS服務器軟件本身
  ●利用DNS服務器作為中間的"攻擊放大器",去攻擊其它intetnet上的主機
  
  1.1.3 Bind服務器安全配置
  ●基本安全配置
  ■隱藏版本信息
  ■named進程啟動選項:
  -r:關閉域名服務器的遞歸查詢功能(缺省為打開)。
  -u 和-g :定義域名服務器運行時所使用的UID和GID。
  -t :指定當服務器進程處理完命令行參數後所要chroot()的目錄。
  ●Bind服務器的訪問控制
  ■限制查詢
  ■限制區域傳輸
  ■關閉遞歸查詢
  ■Bind服務器安全配置
  /etc/named.conf
  options  {
  directory  "/var/named";
  allow-query  202.96.44.0/24;
  allow-transfer  {
  192.168.100.1;
  202.96.44.0/24;
  recursion no;
  };
  };
  ●設置chroot運行環境
  ■chroot 是 "change root" 的縮寫
  ■chroot重定義了一個程序的運行環境。重定義了一個程序的"ROOT"目錄或"/"。也就是說,對於chroot了的程序或shell來說,chroot環境之外的目錄是不存在的。
  ■Chroot方法步驟:
  
  建立"監獄式"目錄
  
  拷貝本身服務軟件和其他要求的文件
  
  拷貝所需要系統庫文件
  
  變換啟動腳本,使系統啟動正確環境
  
  ●及時更新安裝bind的最新版本
  
  1.2  WWW服務
  
  1.2.1 常見安全威脅
  
  對於WWW服務,常見安全威脅包括:
  ■HTTP拒絕服務:攻擊者通過某些手段使服務器拒絕對HTTP應答
  ■緩沖區溢出
  
  1.2.2 Web服務器(apache)配置文件
  
  控制著服務器各個方面的特性的三個配置文件:
  ■httpd.conf主配置文件,是對守護程序httpd如何運行的技術描述
  ■srm.conf是服務器的資源映射文件,告訴服務器各種文件的MIME類型,以及如何支持這些文件
  ■access.conf用於配置服務器的訪問權限,控制不同用戶和計算機的訪問限制
  
  1、Apache的基本安全配置
  ■及時更新安裝Apache的最新版本
  ■設置chroot運行環境
  ■隱藏版本信息
  
  2、Apache服務器訪問控制
  ■文件的訪問控制
  ■目錄的訪問控制
  ■主機的訪問控制
  ■access.conf文件包含一些指令控制允許某個用戶、某個域、IP地址或者IP段的訪問訪問Apache目錄。
  ■order deny,allow
  ■deny from all
  ■allow from sans.org
  ■使用.htaccess文件,可以把某個目錄的訪問權限賦予某個用戶
  
  1.3  mail服務
  
  1.3.1 Sendmail的主要安全問題
  ■郵件轉發與垃圾郵件
  ■避免未授權的用戶濫用noexpn,novrfy
  ■限制可以審核郵件隊列內容的人員
  ■(/etc/sendmail.cf: PrivacyOptions=authwarnings,noexpn,novrfy,restrictmailq)
  ■關閉relay選項
  ■及時更新安裝最新版本的Sendmail
  ■文件系統安全
  ■拒絕服務攻擊
  
  1、關閉relay選項
  
  sendmail提供了許多在編譯期間選擇的功能特性
  
  在/etc/sendmail.mc中與安全相關的特性有:
  ■FEATURE(*)
  ■promiscuous_relay
  ■accept_unqualified_senders
  ■loose_relay_check
  ■accept_unresolvable_domains
  ■blacklist_recipients
  ■relay_entire_domain
  
  2、郵件轉發與垃圾郵件
  設置smtp身份驗證。
  
  3、文件系統安全
  重要的文件設置不可更改位
  ■[root@deep]# chattr +i /etc/sendmail.cf
  ■[root@deep]# chattr +i /etc/sendmail.cw
  ■[root@deep]# chattr +i /etc/sendmail.mc
  ■[root@deep]# chattr +i /etc/aliases
  ■[root@deep]# chattr +i /etc/mail/access
  
  4、Sendmail配置抵御DOS
  ■/etc/sendmail.cf üMinFreeBlocks--配置最少的自由塊數
  ■MaxMessageSize--最大郵件大小
  ■AutoRebuildAliases--自動重建別名
  ■QueueLA--隊列平均負荷
  ■RefuseLA--平均負荷拒絕臨界點
  ■MaxDaemonChildren--最大的守護進程的子進程數
  ■MaxHeadersLength --最大的報頭長度
  ■MaxMimeHeaderLength --最大MIME編碼報文長度
  ■MaxRecipientsPerMessage --每封郵件的最多接收者
  
  1.4 FTP
  
  了解那些FTP有安全問題:
  ■wu-ftpd -(wu-ftpd 2.6.0 輸入驗證漏洞、site newer 內存耗盡問題)
  ■proftpd
  
  1.4.1 Ftp安全要點
  ■使用最新版本 -http://www.wu-ftpd.org/ 2.6.2 -http://www.proftpd.org/ 1.2.9
  ■使用ftpuser限制ftp用戶
  ■使用ftpaccess控制用戶行為,流量等等
  ■設置chroot運行環境 o使用ssh或sftp代替ftp
  
  2 UNIX系統帳號安全
  
  2.1 UNIX系統帳號文件
  
  2.1.1 Passwd文件剖析
  ■name:coded-passwd:UID:GID:user-info:home-directory:shell
  passwd文件字段含義:
  ■7個域中的每一個由冒號隔開。
  ■name-給用戶分配的用戶名。
  ■Coded-passwd-經過加密的用戶口令。如果一個系統管理員需要阻止一個用戶登錄,則經常用一個星號( : * :)代替。該域通常不手工編輯。
  ■UID-用戶的唯一標識號。習慣上,小於100的UID是為系統帳號保留的。
  ■UNIX系統帳號安全
  ■GID-用戶所屬的基本分組。通常它將決定用戶創建文件的分組擁有權。
  ■User_info-習慣上它包括用戶的全名。郵件系統和finger這樣的工具習慣使用該域中的信息。
  ■home-directory-該域指明用戶的起始目錄,它是用戶登錄進入後的初始工作目錄。
  ■shell-該域指明用戶登錄進入後執行的命令解釋器所在的路徑。注意可以為用戶在該域中賦一個/bin/false值,這將阻止用戶登錄。
  
  2.1.2 shadow文件
  shadow文件內容如圖3所示。
   
  圖3  shadow文件
  
  其內容中各字段含義:
  ■上一次修改口令的日期,以從1970年1月1日開始的天數表示。
  ■口令在兩次修改間的最小天數。口令在建立後必須更改的天數。
  ■口令更改之前向用戶發出警告的天數。
  ■口令終止後帳號被禁用的天數。
  ■自從1970年1月1日起帳號被禁用的天數。
  ■保留域。
  
  2.2 UNIX系統帳號安全
  
  2.2.1 禁用的口令
  ■不要選擇簡單字母序列組成的口令(例如"qwerty"或"abcdef")。
  ■不要選擇任何指明個人信息的口令(例如生日、姓名、配偶姓名、孩子姓名、電話號碼、社會保障號碼、汽車牌號、汽車執照號、居住的街道名稱等)。
  ■不要選擇一個與要替換的口令相似的新口令。
  ■不要選擇一個包含用戶名或相似內容的口令。
  ■不要選擇一個短於6個字符或僅包含字母或數字的口令。
  ■不要選擇一個所有字母都是小寫或大寫字母的口令。
  ■不要選擇一個被作為口令范例公布的口令。
  
  2.2.2 好的口令
  ■選擇一個至少有10個字符長度的口令
Copyright © Linux教程網 All Rights Reserved