linux基線

1.物理防禦web

  BIOS設置密碼apache

  引導grub.conf添加密碼vim

  

2.系統安裝時採用最小化原則,只安裝base services安全


3.應用數據分區與系統隔離bash


4.禁用開機不須要啓動的服務服務器


5.隱藏系統信息網絡


6.服務器和互聯網時間同步app


7.sudo對普通用戶權限精細控制less


8.密碼策略:有效期90天 複雜度16位ssh


8.ssh安全加固


9.優化Linux內核,增長系統文件描述符、堆棧等配置


10.清除無用的默認系統賬戶或組(非必須)


11.文件權限

限制全局默認權限爲0750,文件夾 umask 027

限制敏感文件,使用chattr命令給下列文件加上不可更改的屬性

# chattr +i /etc/passwd

# chattr +i /etc/shadow

# chattr +i /etc/group

# chattr +i /etc/gshadow

# chattr +a .bash_history           避免刪除.bash_history或者重定向到/dev/null

# chattr +i .bash_history 

# chmod 700 /usr/bin                恢復 chmod 555 /usr/bin 

# chmod 700 /bin/ping              恢復 chmod 4755 /bin/ping

# chmod 700 /usr/bin/vim         恢復 chmod 755 /usr/bin/vim

# chmod 700 /bin/netstat          恢復 chmod 755 /bin/netstat

# chmod 700 /usr/bin/tail          恢復 chmod 755 /usr/bin/tail

# chmod 700 /usr/bin/less        恢復 chmod 755 /usr/bin/less

# chmod 700 /usr/bin/head       恢復 chmod 755 /usr/bin/head

# chmod 700 /bin/cat                恢復 chmod 755 /bin/cat

# chmod 700 /bin/uname          恢復 chmod 755 /bin/uname

# chmod 500 /bin/ps                 恢復 chmod 755 /bin/ps

限制非root用戶執行/etc/rc.d/init.d/下的系統命令

 # chmod -R 700 /etc/rc.d/init.d/*

 # chmod -R 777 /etc/rc.d/init.d/*    恢復默認設置

 

12.禁止使用Ctrl+Alt+Del快捷鍵重啓服務器

 # cp /etc/inittab /etc/inittabbak

 # vi /etc/inittab #註釋下面兩行

 #start on control-alt-delete

      #exec /sbin/shutdown -r now "Control-Alt-Delete pressed"

 

13.禁止yum update更新系統時不升級內核,只更新軟件包

   因爲系統與硬件的兼容性問題,有可能升級內核後致使服務器不能正常啓動,沒有特別的須要,建議不要隨意升級內核。


14.調整history大小,刪除MySQL歷史記錄


15.計劃任務


16.實時監控

   查詢系統端口及服務狀態

      web 服務端口 8081

   文件監控

     檢查具備suid、sgid權限的文件

      # find / -perm -4000 -o -perm -2000

      # find 24小時內更改過的文件

     檢測Rootkit

 

17.應用基線

   keepalive 15秒

   錯誤頁面重定向,出於安全方面的考量,爲了不敏感信息的外泄

   上傳文件大小


18.日誌 logstash

 經常使用的日誌文件以下:

      access-log    紀錄HTTP/web的傳輸 

      acct/pacct     紀錄用戶命令 

      aculog     紀錄MODEM的活動 

      btmp        紀錄失敗的紀錄 

      lastlog        紀錄最近幾回成功登陸的事件和最後一次不成功的登陸 

      messages       從syslog中記錄信息(有的連接到syslog文件) 

      sudolog      紀錄使用sudo發出的命令 

      sulog       紀錄使用su命令的使用 

      syslog     從syslog中記錄信息(一般連接到messages文件) 

      utmp       紀錄當前登陸的每一個用戶 

      wtmp       一個用戶每次登陸進入和退出時間的永久紀錄 

      xferlog       紀錄FTP會話


  用戶登入的信息,安全性和驗證性的日誌

  last、lastb、lastlog 


  utmp文件中保存的是當前正在本系統中的用戶的信息。


  wtmp文件中保存的是登陸過本系統的用戶的成功信息。


  btmp文件中保存的是登陸失敗的信息。

  #使用last命令能夠查看btmp文件:例如,」last -f /var/log/btmp | more「


#一、當前登陸用戶的信息記錄在文件utmp中;======who、w命令

#二、登陸和退出記錄在文件wtmp中;========last命令

#三、登陸失敗的記錄在文件btmp中========lastb命令

#四、最後一次登陸能夠用lastlog命令

#五、messages======從syslog中記錄信息


注意:wtmp和utmp文件都是二進制文件。

/var/log/messages                               包括總體系統信息,其中也包含系統啓動期間的日誌。此外,mail,cron,daemon,kern和auth等內容也記錄在var/log/messages日誌中。

/var/log/dmesg                                     包含內核緩衝信息(kernel ring buffer)。在系統啓動時,會在屏幕上顯示許多與硬件有關的信息。能夠用dmesg查看它們。

/var/log/auth.log                                   包含系統受權信息,包括用戶登陸和使用的權限機制等。

/var/log/boot.log                                   包含系統啓動時的日誌。

/var/log/daemon.log                             包含各類系統後臺守護進程日誌信息。

/var/log/dpkg.log                                  包括安裝或dpkg命令清除軟件包的日誌。

/var/log/kern.log                                   包含內核產生的日誌,有助於在定製內核時解決問題。

/var/log/lastlog                                     記錄全部用戶的最近信息。這不是一個ASCII文件,所以須要用lastlog命令查看內容。

/var/log/maillog /var/log/mail.log          包含來着系統運行電子郵件服務器的日誌信息。例如,sendmail日誌信息就所有送到這個文件中。

/var/log/user.log                                   記錄全部等級用戶信息的日誌。

/var/log/Xorg.x.log                                來自X的日誌信息。

/var/log/alternatives.log                       更新替代信息都記錄在這個文件中。

/var/log/btmp                                       記錄全部失敗登陸信息。使用last命令能夠查看btmp文件。例如,」last -f /var/log/btmp | more「。

/var/log/cups                                       涉及全部打印信息的日誌。

/var/log/anaconda.log                         在安裝Linux時,全部安裝信息都儲存在這個文件中。

/var/log/yum.log                                  包含使用yum安裝的軟件包信息。

/var/log/cron                                        每當cron進程開始一個工做時,就會將相關信息記錄在這個文件中。

/var/log/secure                                    包含驗證和受權方面信息。例如,sshd會將全部信息記錄(其中包括失敗登陸)在這裏。

/var/log/wtmp或/var/log/utmp              包含登陸信息。使用wtmp能夠找出誰正在登錄進入系統,誰使用命令顯示這個文件或信息等。

/var/log/faillog                                     包含用戶登陸失敗信息。此外,錯誤登陸命令也會記錄在本文件中。


除了上述Log文件之外,/var/log還基於系統的具體應用包含如下一些子目錄:

/var/log/httpd/或/var/log/apache2       包含服務器access_log和error_log信息。

/var/log/lighttpd/                                  包含light HTTPD的access_log和error_log。

/var/log/mail/                                       這個子目錄包含郵件服務器的額外日誌。

/var/log/prelink/                                   包含.so文件被prelink修改的信息。

/var/log/audit/                                     包含被 Linux audit daemon儲存的信息。

/var/log/samba/                                  包含由samba存儲的信息。

/var/log/sa/                                         包含每日由sysstat軟件包收集的sar文件。

/var/log/sssd/                                     用於守護進程安全服務。

除了手動存檔和清除這些日誌文件之外,還可使用logrotate在文件達到必定大小後自動刪除。能夠嘗試用vi,tail,grep和less等命令查看這些日誌文件。


19.補丁更新


20.定時備份


21.防火牆

  Juniper的Netscreen

  H3C的Secpath

  華爲USG6390


IPTABLES 

     服務器禁ping

     # echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all 


SELINUX

  # 有外網IP的機器要開啓配置防火牆,配置SELINUX  


FACL


TCP_Wrappers應用級防火牆

  # vi /etc/host.conf),加入下面這行:

  # Lookup names via DNS first then fall back to /etc/hosts.

  order bind,hosts

  # We have machines with multiple IP addresses.

  multi on

  # Check for IP address spoofing.

  nospoof on

  第一項設置首先經過DNS解析IP地址,而後經過hosts文件解析。第二項設置檢測是否"/etc/hosts"文件中的主機是否擁有多個IP地址(好比有多個以太口網卡)。第三項設置說明要注意對本機未經許可的電子欺騙。


***檢測 

  IDS

     HIDS: OSSEC 主機***檢測系統

     NIDS: snort 網絡***檢測系統

     Filesystem: tripware

             AIDE(Adevanced Intrusion Detection Environment,高級***檢測環境

  IPS

     IDS + Firewall

相關文章
相關標籤/搜索