亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Solaris > 正文

Solaris安全FAQ

2024-07-26 00:29:27
字體:
來源:轉載
供稿:網友
參考資料:The Solaris Security FAQ by Peter Baer Galvin 

1) (概述--略)

2) 怎樣將Solaris配置得更加強壯? 

2.1) 哪些文件的許可權限需要改變? 

有個叫fix-modes的軟件(ftp://ftp.fwi.uva.nl/pub/solaris/fix-modes.tar.gz)可以在
Solaris 2.4和2.5上運行并改變系統文件及目錄的存取權限,這樣會使非ROOT的用戶更難
于更改系統文件或者取得ROOT權限。

2.2) 如何對ROOT的環境加以配置? 

將umask設為077或者027. 

查看你的環境中路徑設置情況,不要有./

2.3) 我該更改哪些啟動文件? 

通常情況下,你要檢查所有在/etc/rc2.d和/etc/rc3.d以S開頭的文件,所有并非必要的設備
或者服務都可以重命名(不要再以S開頭),然后你可以重新啟動,從/var/adm/messages中來
觀察自啟動的情況,并且從ps -elf的輸出中加以檢查。

2.4) 如何將ROOT的遠程登陸取消? 

在/etc/default/login里加上 "CONSOLE"行,在/etc/ftpusers里加上root。

2.5) 如何取消rlogin/rsh服務? 

移去/etc/hosts.equiv和/.rhosts以及各home目錄下的.rhosts,并且在/etc/inetd.conf中
把r系列服務都殺掉,然后找出inetd的進程號,重啟它。

2.6) 哪些帳號是不必須的? 

移去或者鎖定那些不是必須的帳號,比如sys/uucp/nuucp/listen等等,簡單的辦法是在
/etc/shadow的passWord域中放上NP字符。

2.7) 怎樣保護我的設備? 

在文件/etc/logindevperm中包含了對系統設備的許可權限配置信息,應該檢視里面的各項
設定并且手動賦予你所想要的許可權限。

對于抽取式的BSM設備需要設定只有single user允許進入。

2.8) 我應該將/etc的存取權限改為什么才安全? 

用chmod -R g-w /etc命令來移去組用戶對/etc的寫權限。

2.9) Solaris機器充當路由器? 

默認情況下,如果Solaris機器有超過一塊的網卡的話,它將會在不同網卡間轉發數據包,這一行為可
以在/etc/init.d/inetinit中得到控制。要在Solaris 2.4或者更低版本機器下關閉它,可以將
ndd -set /dev/ip ip_forwarding 0添加于/etc/init.d/inetinit的未尾。在Solaris 2.5
中,只要touch /etc/notrouter. 

2.10) 如何取消automounter? 

Automounter是由/etc/auto_*這些配置文件控制的,要取消它,只要簡單地移去這些文件,
并且/或者將/etc/rc2.d/S74autofs改名。 

2.11) 如何取消NFS服務? 

NFS的共享輸出是由/etc/dfs/dfstab文件管理的.可以刪除它。要將NFS服務器的守護進程關閉
則可以重命名/etc/rc3.d/S15nfs.server。要防止一臺機器成為NFS客戶機,可以重命名文件
/etc/rc2.d/S73nfs.client——當重命名這些自啟動文件時,要注意不要將文件的首字母設為
“S”。 

2.12) 對cron任務我該注意些什么? 

你得查看所有的cron任務——在/var/spool/cron/crontabs文件中你可以找到它們。還必須在
/etc/default/cron里設置了"CRONLOG=yes" 來記錄corn的動作。 

2.13) 使用動態路由有什么風險嗎? 

使用動態路由守護進程的機器用in.routed及in.rdisc來維護路由,這可能會大大增加路由協議的復雜程
度,而且路由更新會消耗相當大比便的可用帶寬,因此在可能的情況下,還是建議你使用靜態路由。

2.14) 何時及如何運用靜態ARP? 

ARP是聯系IP地址和以太網的協議(地址轉換協議) 。默認地,Solaris機器動態地確定ARP地址,arp命令
可以用來靜態地設定ARP表并且刷新它,如果你的系統里僅有少量無需更改的機器,那么這是一個很好的工具。
為了防止ARP欺騙,最好將受托機器的硬件地址作為永久條目保存在ARP的高速緩存中。

2.15) 運行rpcbind是不安全的嗎? 

rpcbind是允許rpc請求和rpc服務之間相互連接的程序,但標準的rpc是不安全的:(,它使用的是"AUTH_UNIX"
驗證, 也就是說它依靠的是遠程系統的IP地址和遠程用戶的UID來驗證。一般的系統可能需要某些rpc存在,但
對各種服務器如Web servers, ftp servers, mail servers, etc)最好將rpc服務關閉,你也可以通過
一些安全工具來確定rpc服務是否會影響到你系統的安全性??梢酝ㄟ^將/etc/rc2.d/S71RPC改名來禁止rpc。

2.16) /etc/utmp的權限應該如何設定? 

# chmod 644 /etc/utmp  

2.17) 哪些程序可以去掉SUID位? 

許多setgid和setuid程序都只是由root運行的,或者是由某些特定用戶或組運行,那就可以將其setuid位
移去,下面是一個Solaris 2.6上setuid程序的列表,你應該根據自己的情況進行增減。

# find / -perm -4000 -PRint
/usr/lib/lp/bin/netpr
/usr/lib/fs/ufs/quota
/usr/lib/fs/ufs/ufsdump
/usr/lib/fs/ufs/ufsrestore
/usr/lib/fs/vxfs/vxdump
/usr/lib/fs/vxfs/vxquota
/usr/lib/fs/vxfs/vxrestore
/usr/lib/exrecover
/usr/lib/pt_chmod
/usr/lib/sendmail
/usr/lib/utmp_update
/usr/lib/acct/accton
/usr/lib/uucp/remote.unknown
/usr/lib/uucp/uucico
/usr/lib/uucp/uusched
/usr/lib/uucp/uuxqt
/usr/lib/sendmail.orig
/usr/openwin/lib/mkcookie
/usr/openwin/bin/xlock
/usr/openwin/bin/ff.core
/usr/openwin/bin/kcms_configure
/usr/openwin/bin/kcms_calibrate
/usr/openwin/bin/sys-suspend
/usr/dt/bin/dtaction
/usr/dt/bin/dtappgather
/usr/dt/bin/sdtcm_convert
/usr/dt/bin/dtprintinfo
/usr/dt/bin/dtsession
/usr/bin/at
/usr/bin/atq
/usr/bin/atrm
/usr/bin/crontab
/usr/bin/eject
/usr/bin/fdformat
/usr/bin/login
/usr/bin/newgrp
/usr/bin/passwd
/usr/bin/ps
/usr/bin/rcp
/usr/bin/rdist
/usr/bin/rlogin
/usr/bin/rsh
/usr/bin/su
/usr/bin/tip
/usr/bin/uptime
/usr/bin/w
/usr/bin/yppasswd
/usr/bin/admintool
/usr/bin/ct
/usr/bin/cu
/usr/bin/uucp
/usr/bin/uuglist
/usr/bin/uuname
/usr/bin/uustat
/usr/bin/uux
/usr/bin/chkey
/usr/bin/nispasswd
/usr/bin/cancel
/usr/bin/lp
/usr/bin/lpset
/usr/bin/lpstat
/usr/bin/volcheck
/usr/bin/volrmmount
/usr/bin/pppconn
/usr/bin/pppdisc
/usr/bin/pPPTool
/usr/sbin/allocate
/usr/sbin/mkdevalloc
/usr/sbin/mkdevmaps
/usr/sbin/ping
/usr/sbin/sacadm
/usr/sbin/whodo
/usr/sbin/deallocate
/usr/sbin/list_devices
/usr/sbin/m64config
/usr/sbin/lpmove
/usr/sbin/pmconfig
/usr/sbin/static/rcp
/usr/sbin/vxprint
/usr/sbin/vxmkcdev
/usr/ucb/ps
/usr/vmsys/bin/chkperm
/etc/lp/alerts/printer

而且還應該建立一個setuid/setgid程序的列表,日后可以對比是否有新的setuid程序出現--這可能是
入侵者光臨過的征兆。

2.18) 哪些系統工具我可以去掉它? 

所有的網絡工具你都應該檢查并且確定它在你的系統環境里是否是必需的,如果答案為否的話,就
干掉它,下面這些工具有些可以在開始文件中找到它,有些則上在/etc/inetd.conf中被啟動的,注
釋掉那些不必要的服務,并且kill -HUP inetd守護進程——類似的東西有:

tftp         systat        rexd    ypupdated    netstat
rstatd         rusersd        sprayd    walld           exec
comsat         rquotad        name    uucp

最好把常規的inetd.conf替換掉——改成只開telnet和ftp服務——如果你真的需要它們的話(建議再
用防火墻建立阻塞)。

2.19) 我應該運行in.fingerd嗎? 

in.fingerd在過去有一些安全問題,如果你想提供finger工具,用nobody來運行它。

2.20) 如何讓syslog有更大作用?

默認情況下,syslog僅提供最精簡的記錄,你可以通過編輯/etc/syslog.conf文件來讓syslog記
錄更多的信息,然后你需要重啟syslog以使它讀取配置文件。

你還可以通過

touch /var/adm/loginlog
chmod 600 /var/adm/loginlog
chgrp sys /var/adm/loginlog

來建立login的記錄。

2.21) 對EEPROM如何做才能更安全? 

將EEPROM設于安全的模式:通過設定對"ok setenv security-mode=command"的密碼保護來實現。
當然這并不能真正地防止入侵,如果某人可以物理接觸某控制臺的話,它就能打開機器并替換掉EEPROM,
更改hostid........

2.22) 我的機器是處于“混雜模式”下嗎? 

在Solaris下,你只能通過安裝某些工具來判斷是否機器是處于混雜模式下,可以參見第三部分。只有當你
運行諸如snoop或者某些網絡監聽軟件時機器才會處在混雜模式下,如果你并沒有監聽整個網絡,那極大的可
能性就是黑客已經侵入到你的系統中并且開始以監聽來接收數據了。

2.23) 如果我必須運行NFS,如何使它更安全? 

在/etc/dfs/dfstab中的所有文件將被所有人共享,默認情況下,NFS客戶會以"-o rw"或者"-o ro"選項
共享。 
必須使用"nosuid"參數來使setuid程序失效。
不要通過rpcbind來運行nfs mount。而是用更安全的rpcbind替代程序或者安裝SUN最新的rpcbind補丁。
在可能的情況下,盡量使用secure-RPC。否則的話,你運行的是"AUTH_UNIX"認證,它僅僅依靠客戶的IP地
址來進行驗證,很容易有IP欺騙的情況發生。
在可能的情況下,不要使用NFS,因為它的信息傳遞是通過明文的(甚至你用了"AUTH_DES"或者"AUTH_KERB"來
進行認證)所以傳輸的任何文件對嗅探來說是及危險的。
有程序可以猜度ROOT所mountr的文件名柄,并且獲得NFS server上的文件。 

2.24) 如何讓sendmail更安全? 

sendmail總是不斷地有新漏洞被發現,怎樣才能使它更安全呢?

使用最新版本的Berkeley sendmail (see section 3) 
使用smrsh (section 3) 
從/etc/aliases里刪除decode 
將/etc/aliases的權限設為644 
可以考慮使用代理防火墻來過濾SMTP中不必要的命令。

2.25) NIS是安全的嗎,如何使其更強壯? 

NIS從來就不是一個安全的服務,如果配置得當的話NIS+會更好些,就象暴力破解密碼一樣,NIS域名
如果被猜出來,就會給入侵者提供相當豐富的信息,要關閉這個漏洞,可以將信任主機的地址放在
/var/yp/securenets中。并且考慮使用NIS+或者secure RPC。

2.26) 匿名FTP要怎樣才會安全可靠? 

Solaris 2.5 ftpd(1M)包含了一個很好的FTP配置說明

cp /etc/nsswitch.conf ~ftp/etc 
確保包含~ftp的文件系統在被安裝是沒有用nosuid選項
在~ftp下任何文件的屬主都不是"ftp" 
更詳細的信息參見它的配置說明及FAQ

2.27) 如何將X配置得更安全? 

使用SUN-DES-1選項來調用Secure RPC來通過X鑒別,可以使用xhost +user@host來通過訪問請求。

2.28) 如何打開SUN-DES-1的鑒別機制? 

set DisplayManager*authorize: true 
set DisplayManager._0.authName: SUN-DES-1 
rm ~/.Xauthority 
增加對localhost的許可權限:通過xauth local/unix:0 SUN-DES-1 unix.local@nisdomain
                           xauth local:0 SUN-DES-1 unix.local@nisdomain 
Start X via xinit -- -auth ~/.Xauthority 
把你自己加入,并移去其他所有人:xhost +user@ +unix.local@nisdomain -local -localhost 
賦予用戶foo進入主機"node"的權限: 

允許foo進入node:           xhost +foo@ 
建立適當的foo的xauthority: xauth add node:0 SUN-DES-1 unix.node@nisdomain 
foo現在就能連上"node"了:    xload -display node:0 

2.29) 我需要安裝哪些補丁? 

用showrev -p命令來察看補丁在系統里的安裝情況,在你想保護的主機以及大眾都可以訪問的主機
上,你應該到SUN公司的主頁上去查找相關的補丁包來安裝,并且應該常常查看最新的補丁發布情況。

2.30) 如何防止在堆棧中執行代碼? 

入侵者常常使用的一種利用系統漏洞的方式是堆棧溢出,他們在堆棧里巧妙地插入一段代碼,利用
它們的溢出來執行,以獲得對系統的某種權限。

要讓你的系統在堆棧緩沖溢出攻擊中更不易受侵害,你可以在/etc/system里加上如下語句:

set noexec_user_stack=1
set noexec_user_stack_log =1

第一句可以防止在堆棧中執行插入的代碼,第二句則是在入侵者想運行exploit的時候會做記錄:)

3) 應該增加或者替代哪些程序? 

3.1) inetd 
   
inetd可以用xinetd代替,以增加日志功能。 
xinetd: 
ftp://qiclab.scn.rain.com/pub/security/xinetd* 
或 ftp://ftp.dlut.edu.cn/pub/unix/sun-source/xinetd-2.1.tar.Z(不知是否為最新版本). 

3.2) ifstatus 

ifstatus可以確定你的網卡是否工作于混雜模式(有人進行網絡監聽?) 
url: 
ftp://coast.cs.purdue.edu/pub/tools/unix/ifstatus/ 

3.3) xntp 

xntp是有個更安全的網絡時間協議(Network Time Protocol). 
URL: 
ftp://ftp.udel.edu/pub/ntp/xntp3-5.93.tar.gz (1907KB)      
3.4) sendmail 

用Berkeley Sendmail(http://www.sendmail.org/)替代Solaris自帶的sendmail. 

3.5) rpcbind 

可以用如下URL中的rpcbind替換Solaris自帶的rpcbind, 這個rpcbind包含了類似 
于tcpwrapper的功能并關閉了通過rpcbind訪問NFS. 
  
ftp://ftp.win.tue.nl/pub/security/rcpbind_1.1.tar.Z 

3.6) 口令檢查程序 

很不幸,Solaris 上還未發布passwd+及npasswd, 這兩個程序可以用于檢查在UNIX 
上那些愚蠢的口令。 

3.7) crack 

crack可以找出/etc/shadow中那些容易猜測的口令,雖然運行crack將會使CPU的 
負載加重,但它在第一次運行時就可以給出10%系統帳號的口令。 

URL: (我想國內很多站點已有此程序了。) 
ftp://sable.ox.ac.uk/pub/comp/security/software/crackers/ 

3.8) ftp 

不用多說,使用wu-ftpd, 國內站點上有的是,如果找不到,試試:     
URL: 
ftp://ftp.dlut.edu.cn/pub/unix/ftp/wu-ftpd/ 
OR: 
ftp://wuarchive.wustl.edu/packages/wuarchive-ftpd 

3.9) fix-modes 

用于糾正Solaris 2.2 ~ 2.6系統中敏感文件及目錄的屬性,以適應安全性需要。 
URL: 
ftp://ftp.dlut.edu.cn/pub/unix/security/fix-modes.tar.gz 
OR: 
http://www.fwi.uva.nl./pub/comp/solaris/fix-modes.tar.gz 

3.10) noshell 

可用于不希望登陸系統的用戶的shell, 能夠記錄發生的事件并防止用戶login. 
    
3.11) bind

標準的Solaris里帶的bind有著眾所周知的安全問題(參見CERT第4部份),現在的發行版已經做
了修補。

3.12) netcat

NetCat對系統管理員和入侵者來說都是很實用的工具,它可以在兩個系統間建立靈活我TCP連接。



5) 如何使我的Solaris Web server更安全? 

下面的方法可以令你的以Solaris為基礎的系統十分安全,你同時還可以配以利用防火墻及過濾路由
器來組成一個完整而強大的網絡拓撲,但是,沒有任何系統是完美的,所以你除了關注安全動態,給機
器作好防范之外,也不應該在機器上裝載其他無關的第三方的軟件--webserver需要的是安全,而不是
對管理員的方便。

5.0) Web server安全檢查

用下面的安全檢查列表來察看你的系統是否是安全地安裝的,當然如果你有特殊的安全需求則不一定以此為準:

在完成一切安全設置前將系統與互聯網斷開
僅僅安裝系統的核心部分以及需要的軟件包
安裝推薦的安全補丁
修改系統的開始文件來進行
在/etc/init.d/inetinit中關閉IP轉發
改變/tmp的存取權限(可以在系統的開始文件中加入腳本
用ps檢查進程情況
Invoke sendmail from cron to process queued mail occasionally. 
安裝配置tcp_wrappers, S/Key, wu-ftp及tripwire于你的系統環境。
編輯/etc/hosts.allow來確定可進入的機器,并且編輯/etc/inetd.conf注釋掉所有不需要的服務
用syslog記錄下所有的telnet連接通信
Mount上的文件系統要是只讀而且是no-suid的
確定/noshell是除了root之外所有不希望進入的帳號的默認shell
刪除/etc/auto_*, /etc/dfs/dfstab, p/var/spool/cron/crontabs/* (except root). 
使用靜態路由
測試你的系統,包括允許及拒絕訪問的配置及記帳系統
考慮使用更安全版本的sendmail, syslog, bind以及crontab來替代現有的 
安裝xntp來有更精確的時間戳
考慮更詳細地系統記帳
保持監聽和測試Web server的習慣 

在你完成上面的配置之后,你的系統已經會比安裝一個標準的UNIX系統,并配以標準配置更安全了。

5.1) 硬件上......

在系統完全安裝好并且配置得更安全之前,不要將它放到互聯網上——從理論上說,一些入侵者喜歡
在你把系統弄得完美之前溜進去放幾個后門——而且最好從CD-ROM安裝你的系統并且將二進制文件
加載在磁帶機或者軟盤上物理寫保護.......

5.2) 安裝系統

從最新的,可靠的Solaris2.x版本安裝,每一版本的Solaris都會比前一版更安全一些的。

Solaris是非常靈活并且包含了大量工具可供使用的。但不幸的是,這些外帶的功能軟件包可能也會
導致一些潛在的危險,所以要建立一個安全的系統,最好的辦法是,只安裝基本的OS部份,其余的軟件
包則以必要為原則,非必需的包就可以不裝——這樣還可以使機器更快和更穩定:)

在Solaris的安裝程序里,你可以選擇Core SPARC installation cluster來安裝,事實上,就連
這個選項都還有些東西是不必要的確良:(,但它的確是一個安全的系統基礎,另一個好處是,它需要的空
間很少,看看下面你就知道了:

s0:    /         256 megabytes
s1:    swap        256 megabytes
s2:    overlap
s3:
s4:    
s5:    
s6:    /local        ??? megabytes (rest of the drive)
s7:

/var要足夠大以放置審核記錄文件,而swap分區則與你的硬件(內存)相適應就行了,當然大的swap
分區可以在應付DoS攻擊時更強有力。

現在可以用另外的機器,ftp到sunsolve.sun.com:/pub/patches并且下載最新的推薦補丁,將它放
在磁帶機中轉到你的“安全主機”上,然后安裝這些補丁,當然有些補丁可能安裝不上,因為它所
要補的那個軟件你沒有安裝:)

5.3) 系統里的Strip 

在Solaris下,你可以通過對/etc/rc[S0-3].d文件來修改啟動時自引導的動作:

考慮移去/etc/rc2.d中在你系統中用不到的服務,我還建議你移除/etc/init.d里除下以下列表中
文件外的所有東西:

K15rrcd         S05RMTMPFILES   K15solved       S20sysetup
S72inetsvc      S99audit        S21perf         
S99dtlogin      K25snmpd        S30sysid.net    S99netconfig
K50pop3         S74syslog       S75cron         S92rtvc-config 
K60nfs.server   K65nfs.client   S69inet                     
K92volmgt       README          S95SUNWmd.sync
S01MOUNTFSYS    S71sysid.sys    S88utmpd        S95rrcd

這些文件可能會與你的不同--這取決于你機器里的圖形卡/是否使用Solaris DiskSuits等等。
移除/etc/rc3.d里的文件........

舉例來說,在Solaris 2.4中,你應該編輯/etc/init.d/inetinit在文件的尾部增加以下行:

ndd -set /dev/ip ip_forward_directed_broadcasts 0
ndd -set /dev/ip ip_forward_src_routed 0
ndd -set /dev/ip ip_forwarding 0

并且通過設定ndd -set /dev/ip ip_strict_dst_multihoming 1來關閉"ip_strict_dst_multihoming" 
核心變量。solaris機器就不會在兩塊網卡間轉發IP包,這可以防止host spoof。

* 在Solaris 2.5下,只要建立一個叫/etc/notrouter的文件就能阻止IP轉發,要重新打開它,只要移除
/etc/notrouter并重啟動系統就行了。It's important to note that there is a small time 
window between when this file is created and when routing is disabled, 
theoretically allowing some routing to take place. 

在Solaris 2.4下,添加一個新的腳本名為/etc/init.d/tmpfix: 


#!/bin/sh
#ident  "@(#)tmpfix 1.0    95/08/14"

if [ -d /tmp ]
then
    /usr/bin/chmod 1777 /tmp
    /usr/bin/chgrp sys /tmp
    /usr/bin/chown root /tmp

并且連接/etc/init.d/tmpfix到/etc/rc2.d/S79tmpfix,這樣這個腳本就會在系統啟動時執行了。
這可以使入侵者更難在系統里奪取root權限。在Solaris 2.5則不必如此。

另外還有一些好的建議,就是在啟動時為用戶設定安全的umask,下面的script就是做這事兒的:

     umask 022  # make sure umask.sh gets created with the proper mode
     echo "umask 022" > /etc/init.d/umask.sh
     for d in /etc/rc?.d
     do
         ln /etc/init.d/umask.sh $d/S00umask.sh
     done

Note: 腳本名稱中的".sh"是必需的,這樣腳本才會在本shell而不是它的子shell中執行。

刪除/etc/auto_*文件,刪除/etc/init.d/autofs可以防止automounter在啟動時就運行。

刪除/etc/dfs/dfstab,清除/etc/init.d以防止機器成為NFS服務器。

刪除crontab文件,你可以將/var/spool/cron/crontabs中屬主root以外的文件全部刪除。

使用靜態路由,建立/etc/defaultrouter來維護之,以避免spoof。如果你必須通過不同的網關,考慮增
加/usr/bin/route命令于/etc/init.d/inetinit以取代運行routed。 

當地切完成時,重啟機器,徹底地查看進程,ps -ef的輸出應該是這樣的:

     UID   PID  PPID  C    STIME TTY      TIME COMD
    root     0     0 55   Mar 04 ?        0:01 sched
    root     1     0 80   Mar 04 ?       22:44 /etc/init -
    root     2     0 80   Mar 04 ?        0:01 pageout
    root     3     0 80   Mar 04 ?       33:18 fsflush
    root  9104     1 17   Mar 13 console  0:00 /usr/lib/saf/ttymon -g -h -p myhost console 
     login:  -T sun -d /dev/console -l co
    root    92     1 80   Mar 04 ?        5:15 /usr/sbin/inetd -s
    root   104     1 80   Mar 04 ?       21:53 /usr/sbin/syslogd
    root   114     1 80   Mar 04 ?        0:11 /usr/sbin/cron
    root   134     1 80   Mar 04 ?        0:01 /usr/lib/utmpd
    root   198     1 25   Mar 04 ?        0:00 /usr/lib/saf/sac -t 300
    root   201   198 33   Mar 04 ?        0:00 /usr/lib/saf/ttymon
    root  6915  6844  8 13:03:32 console  0:00 ps -ef
    root  6844  6842 39 13:02:04 console  0:00 -sh

/usr/lib/sendmail守護程序并沒有打開,因為你不必總在25端口監聽mail的列表請求,你可以在root的
crontab文件中增加:

0 * * * * /usr/lib/sendmail -q > /var/adm/sendmail.log 2>&1

這條命令要以每小時調用sendmail進程處理排隊中的郵件。 

5.4) 安裝第三方軟件

你需要的第一個軟件是TCP Wrappers軟件包——由Wietse Venema寫的,它提供了一個小的二
進制文件叫tcpd,能夠用它來控制對系統服務的進出——比如telnet及ftp,它在/etc/inetd.conf
中啟動,訪問控制可以由IP地址、域名或者其它參數來限制,并且tcpd可以提升syslog的記錄
級別,在系統遇到未經認證的連接時,發送email或者警告給管理員。 

然后安裝S/Key來控制遠程連接的安全性,可以在Q5.6中看到詳細的配置方法。

如果你打算打開ftp服務(不管是匿名ftp或者是出了管理目的),你需要取得一份WU-Archive ftp,
最好要拿到它的最新版本,否則會有一些安全漏洞存在,如果你認為需要管理員的遠程登陸服務的
話,可能得修改S/Key來支持ftp daemon。在Crimelabs S/Key的發行版本中,你可以在找到
S/Key/misc/ftpd.c,這個C程序示范了如何讓S/Key支持WU-Archive ftp,你可以對新版的WU-FTP
做類似的改動,當然你可能要閱讀wu-ftp FAQ以增加了解。

編譯并且安裝了這些二進制文件后(tcpd, wu-ftpd及keyinit, keysu,keysh),它們會被安裝在
/usr/local/bin中,當編譯wu-ftpd時你需要指定一個配置文件及日志的存放目錄,我們推薦你將
配置文件放在/etc下,將日志文件放在/var下,Q5.7更詳細地說明了wu-ftp的配置。

用/noshell來阻止那些不想讓他們進入的帳號,讓/noshell成為那些人的shell。這些帳號不允許登陸
并且會記錄下登陸的企圖,入侵者無法通過這種帳號入侵。

5.5) 限制通過網絡進入系統 


telnet和ftp守護進程是從inetd進程啟動的,inetd的配置文件是/etc/inetd.conf,還包含了其它
的各種服務,所以你可以干脆移去這個文件,新建一個只包括以下兩行的文件:

ftp stream tcp nowait root /usr/local/bin/tcpd /usr/local/bin/wu-ftpd
telnet stream tcp nowait root /usr/local/bin/tcpd /usr/sbin/in.telnetd

當然這是基于你需要telnet及ftp的基礎上的,如果你連這兩個服務都不用的話,你就可以將它注釋
掉或者刪除,這樣在系統啟動的時候inetd甚至就起不來了:)

tcpd的訪問控制是由/etc/hosts.allow和/etc/hosts.deny文件控制的,tcpd先查找/etc/hosts.allow
,如果你在這里面允許了某幾臺主機的telnet或ftp訪問的話,那么deny訪問就是對其它所有機器的了。
這是“默認拒絕”的訪問控制策略,下面是一個hosts.allow文件的樣本:

ALL: 172.16.3.0/255.255.255.0

這將允許172.16.3.0網絡的主機上任何用戶訪問你的telnet及ftp服務,記住在這里要放置IP地址,因
為域名比較容易受到欺騙攻擊…… 

現在我們準備拒絕其余所有人的連接了,將下面的語句放在/etc/hosts.deny中: 

ALL: ALL: /usr/bin/mailx -s "%d: connection attempt from %c" root@mydomain.com

這條指令不僅拒絕了其它所有的連接,而且能夠讓tcpd發送email給root——一旦有不允許的連接嘗試
發生時。

現在你可能希望用syslog記錄下所有的訪問記錄,那么在/etc/syslog.conf放進如下語句:

auth.auth.notice;auth.info           /var/log/authlog

注意兩段語句間的空白是tab鍵,否則syslog可能會不能正常工作。

Sendmail將用以cron來調用sendmail來替代。

5.6) 配置S/Key 

S/Key是一個用于實現安全的一次性口令方案的軟件,它根據一系列信息(包括一個秘密口令)通過MD4
處理而形成的初始鑰匙,該初始鑰匙再交給MD4進行處理,資助將128位的數字簽名縮成64位,該64位信息
再次傳給MD4函數,這個過程一直持續直到達到期望值……

開始使用S/Key時,要建立一個以/usr/local/bin/keysh為shell的帳號:
在/etc/passwd中加入

access:x:100:100:Access Account:/tmp:/usr/local/bin/keysh

并且在/etc/shadow中加入

access:NP:6445::::::

然后使用passwd access命令來設定用戶的訪問密碼。

由于/usr/local/bin/keysh不是一個標準的shell,所以你的/etc/shells文件中內容如下:

/sbin/sh
/usr/local/bin/keysh

只有使用這兩種login shell的用戶才允許接入。

然后建立一個文件/etc/skeykeys并賦予一定的許可權限:

touch /etc/skeykeys
chmod 600 /etc/skeykeys
chown root /etc/skeykeys
chgrp root /etc/skeykeys

使用keyinit access命令來初始化S/Key秘密口令。

現在你可以配置允許用戶通過keysu命令來成為超級用戶,首先改變/etc/group:

root::0:root,access

只有在這里列出來的用戶才允許通過keysu成為超級用戶?,F在你可以使用不著keyinit root命令來初
始化超級用戶的S/Key秘密口令,我建議該口令要與user的有所區別。

本來你可以將/bin/su刪掉以確定用戶只能使用keysu……,但不幸的是,許多腳本使用/bin/su來開啟
進程,所以你只需用chmod 500 /bin/su來改變它的權限就行了。


5.7) 配置wu-ftp 

配置wu-ftp需要經驗:),當你編譯wu-ftpd時,你需要指定一個存放配置文件的地方,這個文件夾里將
包含一個pid文件夾和三個文件,一個ftp conversions文件可以是空的,但不能沒有,還有ftpusers文
件包含了所有在password文件中存在但不允許登陸系統ftp的用戶名稱,也就是如uucp、bin之類的系統
帳號都將應該被限制。root最好是永遠都被扔在這里面:)。

最后一個文件是ftpaccess:

class users real 172.16.3.*

log commands real
log transfers real inbound,outbound

這將允許從172.16.3.0的任何用戶ftp而拒絕所有其它的,所有的文件與命令將被記錄下來,并且存放
在你指定的記錄文件目錄。

至于建立匿名FTP,你要小心,因為很容易配置錯誤。

建立一個特殊帳戶如:

ftp:*:400:400:Anonymous FTP:/var/spool/ftp:/bon/false

因為使用了chroot()功能,必須建立一個小的文件系統,包含了bin/etc/pub目錄:

這里面要注意的有:

確保bin及etc下的所有文件屬主都是root,且任何人不可寫,只有執行權限,最好另外拷貝
一份passwd到ftp的etc中,即使被入侵者得到了,也不會泄露太多信息。

詳細配置情況還需要看關于wu-ftp的faq。

5.8) 限制對文件及文件系統的存取權限

下載并使用fix-modes,這個程序會將系統里不安全的文件存取權限(文件/目錄)找出來。

使用nosuid參數來配置/etc/vfstab,以防止setuid程序從UFS文件系統執行

/proc               -       /proc      proc    -   no   -
fd                  -       /dev/fd    fd      -   no   -
swap                -       /tmp       tmpfs   -   yes  -
/dev/dsk/c0t3d0s1       -       -          swap    -   no   -

/dev/dsk/c0t3d0s0 /dev/rdsk/c0t3d0s0  /       ufs  1   no   remount,nosuid
/dev/dsk/c0t3d0s4 /dev/rdsk/c0t3d0s4  /usr    ufs  1   no   ro
/dev/dsk/c0t3d0s5 /dev/rdsk/c0t3d0s5  /var    ufs  1   no   nosuid
/dev/dsk/c0t3d0s6 /dev/rdsk/c0t3d0s6  /local  ufs  2   yes  nosuid

5.9) 測試配置

重啟你的機器,確定下面這些東西:

你可以從你配置為允許tcpd連接的機器telnet及ftp到你的server。

嘗試從其它未被允許的機器進入,應該會拒絕并email告知當事人。

你只能以user的身份遠程telnet或者ftp上站,不能以root登陸。 

用戶可以通過/usr/local/bin/keysu成為超級用戶。

ps -ef只有少量的進程顯示,最好不要有sendmail和各種NFS進程。

touch /usr/FOO會得到錯誤提示,因為文件系統是ro的。

成為超級用戶,將ps命令復制到/,要保持它的setuid位,然后刪除它的二進制文件。

好了,祝賀你,你已經建立了一個比較安全的系統了:)

5.10) 最后:一些建議

使用XNTP來確定精確的時間。

在你把機器放到網上前,用tripwire和md5做一個校驗,如果系統被入侵,你可以通過保存的校驗和
來判斷哪些程序被替換掉了。

考慮使用進程記錄來記來系統里占用資源的情況。

定期改變你的S/Key secrets并且選擇一個好的密碼,在各地方的密碼最好不要一樣……

-------------------------------------------------
對Solaris及網絡安全我都沒多少經驗,不懂
的地方都是妄自猜度,錯誤想必不少,請指點!
mailto:quack@antionline.org

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日本sm极度另类视频| 精品偷拍各种wc美女嘘嘘| 日韩av电影在线免费播放| 在线看国产精品| 欧美视频第一页| 一区二区欧美久久| 亚洲bt欧美bt日本bt| 欧美日韩视频在线| 国产精品成人一区| 精品中文视频在线| 最好看的2019年中文视频| 国产精品老女人精品视频| 在线观看精品国产视频| 日韩欧美999| 精品久久久久久久久久久| 亚洲午夜激情免费视频| 亚洲欧美一区二区三区在线| 欧美激情精品久久久久久久变态| 亚洲精品资源美女情侣酒店| 国产女精品视频网站免费| 久久久精品2019中文字幕神马| 亚洲国语精品自产拍在线观看| 久久久久久免费精品| 欧美日在线观看| 一区二区日韩精品| 日韩av片电影专区| 亚洲aaaaaa| 中文字幕亚洲综合| 狠狠躁夜夜躁人人躁婷婷91| 国产精品久久电影观看| 亚洲美女性生活视频| 欧美在线日韩在线| 中文字幕视频在线免费欧美日韩综合在线看| 欧美日韩中国免费专区在线看| 91中文精品字幕在线视频| 永久免费看mv网站入口亚洲| 超碰精品一区二区三区乱码| 中文字幕综合一区| 97精品国产91久久久久久| 欧亚精品在线观看| 欧美成年人视频| 亚洲精品国产综合久久| 欧美性受xxx| 亚洲国产天堂网精品网站| 亚洲夜晚福利在线观看| 日韩欧美亚洲国产一区| 国产精品丝袜久久久久久高清| 日韩久久免费电影| 欧美激情久久久久久| 午夜精品久久久久久久白皮肤| 亚洲福利视频专区| 色偷偷噜噜噜亚洲男人的天堂| 亚洲丝袜av一区| 欧美在线视频在线播放完整版免费观看| 久久精品国产99国产精品澳门| 最新91在线视频| 91久久久亚洲精品| 欧美日韩久久久久| 日韩av在线免费看| 久久夜色撩人精品| 国产精品一区二区三区在线播放| 91精品久久久久久久久青青| 国产精品成人aaaaa网站| 国产精品久久久久久久电影| 久久色精品视频| 午夜精品久久久久久久99热| 亚洲国产高潮在线观看| 久久精品一偷一偷国产| 成人免费网视频| 亚洲午夜国产成人av电影男同| 91在线高清免费观看| 国产欧美日韩91| 国产日韩中文在线| 国产一区二区三区在线观看视频| 欧美电影免费观看高清完整| 色吧影院999| 亚洲国产私拍精品国模在线观看| 久久韩剧网电视剧| 国内精品视频在线| 久热在线中文字幕色999舞| 日韩在线观看免费全集电视剧网站| 久久久久久国产精品美女| 亚洲电影第1页| 日韩国产欧美精品一区二区三区| 国产精品高潮视频| 岛国精品视频在线播放| 日韩h在线观看| 最近日韩中文字幕中文| 国产精品7m视频| 国产精品久久久久av| 国产精品揄拍一区二区| 日韩精品在线视频美女| 欧美伊久线香蕉线新在线| 青草热久免费精品视频| 夜夜嗨av色综合久久久综合网| 欧美午夜片欧美片在线观看| 日韩在线观看你懂的| 夜夜躁日日躁狠狠久久88av| 黄色一区二区在线观看| 亚洲精选中文字幕| 亚洲无线码在线一区观看| 日韩av中文字幕在线免费观看| 麻豆一区二区在线观看| 色偷偷亚洲男人天堂| 亚洲日本aⅴ片在线观看香蕉| 国产精品免费视频久久久| 成人av色在线观看| 精品日本美女福利在线观看| 欧美日韩一区二区在线| 中文字幕亚洲图片| 欧美成人精品在线观看| 色777狠狠综合秋免鲁丝| 中文字幕亚洲欧美一区二区三区| 成人黄色在线免费| 日产精品99久久久久久| 精品福利在线观看| 亚洲福利在线播放| xvideos成人免费中文版| 欧美一级大片视频| 91香蕉亚洲精品| 日本a级片电影一区二区| 久久精视频免费在线久久完整在线看| 日韩中文字幕不卡视频| 国产有码在线一区二区视频| 亚洲午夜精品久久久久久性色| 日韩在线观看av| 中文字幕九色91在线| 91免费在线视频网站| 日韩亚洲成人av在线| 欧美国产精品人人做人人爱| 久久夜色精品亚洲噜噜国产mv| 亚洲欧美第一页| 欧美国产乱视频| 日日摸夜夜添一区| 成人激情综合网| 九色91av视频| 91九色国产社区在线观看| 欧美精品成人在线| 亚洲码在线观看| 亚洲一区二区在线播放| 亚洲偷熟乱区亚洲香蕉av| 自拍偷拍免费精品| 不卡在线观看电视剧完整版| 最新日韩中文字幕| 亚洲午夜未满十八勿入免费观看全集| 欧美高清视频一区二区| 国产精品美女主播在线观看纯欲| 欧美www视频在线观看| 欧美黑人一区二区三区| 成人福利在线视频| 日韩风俗一区 二区| 久久手机精品视频| 亚洲精品欧美一区二区三区| 福利一区视频在线观看| 国产成人福利夜色影视| 久久久久久久久电影| 欧美乱大交xxxxx| 亚洲国产精品久久久久| 亚洲精品免费网站| 欧美在线观看日本一区| 精品久久中文字幕久久av| 欧美激情精品久久久久久大尺度| 亚洲午夜女主播在线直播| 成人国产精品久久久久久亚洲|