麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 系統(tǒng) > Solaris > 正文

Solaris安全FAQ

2024-07-26 00:29:27
字體:
供稿:網(wǎng)友
參考資料:The Solaris Security FAQ by Peter Baer Galvin 

1) (概述--略)

2) 怎樣將Solaris配置得更加強(qiáng)壯? 

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

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

2.2) 如何對ROOT的環(huán)境加以配置? 

將umask設(shè)為077或者027. 

查看你的環(huán)境中路徑設(shè)置情況,不要有./

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

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

2.4) 如何將ROOT的遠(yuǎn)程登陸取消? 

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

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

移去/etc/hosts.equiv和/.rhosts以及各home目錄下的.rhosts,并且在/etc/inetd.conf中
把r系列服務(wù)都?xì)⒌?,然后找出inetd的進(jìn)程號,重啟它。

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

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

2.7) 怎樣保護(hù)我的設(shè)備? 

在文件/etc/logindevperm中包含了對系統(tǒng)設(shè)備的許可權(quán)限配置信息,應(yīng)該檢視里面的各項
設(shè)定并且手動賦予你所想要的許可權(quán)限。

對于抽取式的BSM設(shè)備需要設(shè)定只有single user允許進(jìn)入。

2.8) 我應(yīng)該將/etc的存取權(quán)限改為什么才安全? 

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

2.9) Solaris機(jī)器充當(dāng)路由器? 

默認(rèn)情況下,如果Solaris機(jī)器有超過一塊的網(wǎng)卡的話,它將會在不同網(wǎng)卡間轉(zhuǎn)發(fā)數(shù)據(jù)包,這一行為可
以在/etc/init.d/inetinit中得到控制。要在Solaris 2.4或者更低版本機(jī)器下關(guān)閉它,可以將
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服務(wù)? 

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

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

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

2.13) 使用動態(tài)路由有什么風(fēng)險嗎? 

使用動態(tài)路由守護(hù)進(jìn)程的機(jī)器用in.routed及in.rdisc來維護(hù)路由,這可能會大大增加路由協(xié)議的復(fù)雜程
度,而且路由更新會消耗相當(dāng)大比便的可用帶寬,因此在可能的情況下,還是建議你使用靜態(tài)路由。

2.14) 何時及如何運(yùn)用靜態(tài)ARP? 

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

2.15) 運(yùn)行rpcbind是不安全的嗎? 

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

2.16) /etc/utmp的權(quán)限應(yīng)該如何設(shè)定? 

# chmod 644 /etc/utmp  

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

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

# 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

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

2.18) 哪些系統(tǒng)工具我可以去掉它? 

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

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

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

2.19) 我應(yīng)該運(yùn)行in.fingerd嗎? 

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

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

默認(rèn)情況下,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設(shè)于安全的模式:通過設(shè)定對"ok setenv security-mode=command"的密碼保護(hù)來實(shí)現(xiàn)。
當(dāng)然這并不能真正地防止入侵,如果某人可以物理接觸某控制臺的話,它就能打開機(jī)器并替換掉EEPROM,
更改hostid........

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

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

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

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

2.24) 如何讓sendmail更安全? 

sendmail總是不斷地有新漏洞被發(fā)現(xiàn),怎樣才能使它更安全呢?

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

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

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

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

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

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

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

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

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

set DisplayManager*authorize: true 
set DisplayManager._0.authName: SUN-DES-1 
rm ~/.Xauthority 
增加對localhost的許可權(quán)限:通過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進(jìn)入主機(jī)"node"的權(quán)限: 

允許foo進(jìn)入node:           xhost +foo@ 
建立適當(dāng)?shù)膄oo的xauthority: xauth add node:0 SUN-DES-1 unix.node@nisdomain 
foo現(xiàn)在就能連上"node"了:    xload -display node:0 

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

用showrev -p命令來察看補(bǔ)丁在系統(tǒng)里的安裝情況,在你想保護(hù)的主機(jī)以及大眾都可以訪問的主機(jī)
上,你應(yīng)該到SUN公司的主頁上去查找相關(guān)的補(bǔ)丁包來安裝,并且應(yīng)該常常查看最新的補(bǔ)丁發(fā)布情況。

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

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

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

set noexec_user_stack=1
set noexec_user_stack_log =1

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

3) 應(yīng)該增加或者替代哪些程序? 

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可以確定你的網(wǎng)卡是否工作于混雜模式(有人進(jìn)行網(wǎng)絡(luò)監(jiān)聽?) 
url: 
ftp://coast.cs.purdue.edu/pub/tools/unix/ifstatus/ 

3.3) xntp 

xntp是有個更安全的網(wǎng)絡(luò)時間協(xié)議(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的功能并關(guān)閉了通過rpcbind訪問NFS. 
  
ftp://ftp.win.tue.nl/pub/security/rcpbind_1.1.tar.Z 

3.6) 口令檢查程序 

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

3.7) crack 

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

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

3.8) ftp 

不用多說,使用wu-ftpd, 國內(nèi)站點(diǎn)上有的是,如果找不到,試試:     
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系統(tǒng)中敏感文件及目錄的屬性,以適應(yīng)安全性需要。 
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 

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

標(biāo)準(zhǔn)的Solaris里帶的bind有著眾所周知的安全問題(參見CERT第4部份),現(xiàn)在的發(fā)行版已經(jīng)做
了修補(bǔ)。

3.12) netcat

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



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

下面的方法可以令你的以Solaris為基礎(chǔ)的系統(tǒng)十分安全,你同時還可以配以利用防火墻及過濾路由
器來組成一個完整而強(qiáng)大的網(wǎng)絡(luò)拓?fù)洌?,沒有任何系統(tǒng)是完美的,所以你除了關(guān)注安全動態(tài),給機(jī)
器作好防范之外,也不應(yīng)該在機(jī)器上裝載其他無關(guān)的第三方的軟件--webserver需要的是安全,而不是
對管理員的方便。

5.0) Web server安全檢查

用下面的安全檢查列表來察看你的系統(tǒng)是否是安全地安裝的,當(dāng)然如果你有特殊的安全需求則不一定以此為準(zhǔn):

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

在你完成上面的配置之后,你的系統(tǒng)已經(jīng)會比安裝一個標(biāo)準(zhǔn)的UNIX系統(tǒng),并配以標(biāo)準(zhǔn)配置更安全了。

5.1) 硬件上......

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

5.2) 安裝系統(tǒng)

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

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

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

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

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

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

5.3) 系統(tǒng)里的Strip 

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

考慮移去/etc/rc2.d中在你系統(tǒng)中用不到的服務(wù),我還建議你移除/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

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

舉例來說,在Solaris 2.4中,你應(yīng)該編輯/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

并且通過設(shè)定ndd -set /dev/ip ip_strict_dst_multihoming 1來關(guān)閉"ip_strict_dst_multihoming" 
核心變量。solaris機(jī)器就不會在兩塊網(wǎng)卡間轉(zhuǎn)發(fā)IP包,這可以防止host spoof。

* 在Solaris 2.5下,只要建立一個叫/etc/notrouter的文件就能阻止IP轉(zhuǎn)發(fā),要重新打開它,只要移除
/etc/notrouter并重啟動系統(tǒng)就行了。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,這樣這個腳本就會在系統(tǒng)啟動時執(zhí)行了。
這可以使入侵者更難在系統(tǒng)里奪取root權(quán)限。在Solaris 2.5則不必如此。

另外還有一些好的建議,就是在啟動時為用戶設(shè)定安全的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中執(zhí)行。

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

刪除/etc/dfs/dfstab,清除/etc/init.d以防止機(jī)器成為NFS服務(wù)器。

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

使用靜態(tài)路由,建立/etc/defaultrouter來維護(hù)之,以避免spoof。如果你必須通過不同的網(wǎng)關(guān),考慮增
加/usr/bin/route命令于/etc/init.d/inetinit以取代運(yùn)行routed。 

當(dāng)?shù)厍型瓿蓵r,重啟機(jī)器,徹底地查看進(jìn)程,ps -ef的輸出應(yīng)該是這樣的:

     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守護(hù)程序并沒有打開,因為你不必總在25端口監(jiān)聽mail的列表請求,你可以在root的
crontab文件中增加:

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

這條命令要以每小時調(diào)用sendmail進(jìn)程處理排隊中的郵件。 

5.4) 安裝第三方軟件

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

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

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

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

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

5.5) 限制通過網(wǎng)絡(luò)進(jìn)入系統(tǒng) 


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

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

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

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

ALL: 172.16.3.0/255.255.255.0

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

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

ALL: ALL: /usr/bin/mailx -s "%d: connection attempt from %c" [email protected]

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

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

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

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

Sendmail將用以cron來調(diào)用sendmail來替代。

5.6) 配置S/Key 

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

開始使用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命令來設(shè)定用戶的訪問密碼。

由于/usr/local/bin/keysh不是一個標(biāo)準(zhǔn)的shell,所以你的/etc/shells文件中內(nèi)容如下:

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

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

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

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

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

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

root::0:root,access

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

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


5.7) 配置wu-ftp 

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

最后一個文件是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()功能,必須建立一個小的文件系統(tǒng),包含了bin/etc/pub目錄:

這里面要注意的有:

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

詳細(xì)配置情況還需要看關(guān)于wu-ftp的faq。

5.8) 限制對文件及文件系統(tǒng)的存取權(quán)限

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

使用nosuid參數(shù)來配置/etc/vfstab,以防止setuid程序從UFS文件系統(tǒng)執(zhí)行

/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) 測試配置

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

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

嘗試從其它未被允許的機(jī)器進(jìn)入,應(yīng)該會拒絕并email告知當(dāng)事人。

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

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

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

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

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

好了,祝賀你,你已經(jīng)建立了一個比較安全的系統(tǒng)了:)

5.10) 最后:一些建議

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

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

考慮使用進(jìn)程記錄來記來系統(tǒng)里占用資源的情況。

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

-------------------------------------------------
對Solaris及網(wǎng)絡(luò)安全我都沒多少經(jīng)驗,不懂
的地方都是妄自猜度,錯誤想必不少,請指點(diǎn)!
mailto:[email protected]

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 黄色毛片前黄 | 亚洲自拍第二页 | 精品一区二区三区不卡 | 毛片免费视频播放 | 国产亚洲欧美日韩在线观看不卡 | 特级a欧美做爰片毛片 | 草碰人人 | 视频在线中文字幕 | 在线成人免费观看www | av电影手机在线看 | 天天色综合2 | 免费视频a| 毛片免费看的 | 婷婷一区二区三区四区 | 久久久久国产一区二区三区不卡 | 久久久久一区二区三区 | 狠狠色成色综合网 | 姑娘第四集免费看视频 | 国产亚洲精品久久久闺蜜 | 国产精品亚洲欧美 | 泰剧19禁啪啪无遮挡大尺度 | 成人h视频在线 | av中文字幕免费在线观看 | 久久羞羞| 史上最强炼体老祖动漫在线观看 | 202z中文字幕第一页 | 刘亦菲一区二区三区免费看 | 免费试看av | 羞羞视频一区二区 | 黄色大片在线免费观看 | 成人国产免费观看 | 777午夜精品视频在线播放 | 在线成人亚洲 | 黄色小视频免费在线观看 | 草久网 | 在线观看免费av网 | 毛片天天看 | 91黄瓜视频 | 在线中文字幕不卡 | 国产午夜精品视频免费不卡69堂 | 久久精品亚洲一区二区三区观看模式 |