An toàn và bảo mật trên hệ điều hành linux
- 36 trang
- file .pdf
Luận văn: An toàn và bảo mật
trên hệ điều hành Linux
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 1
Gi
ớit
hiệu
Ngày nay,t rên mạng I nternetkỳ di ệu,ngườit a đang t hực hiện
hàngt ỷđôl agiaodị ch mỗingày(t r
ên dưới2 ngàn t ỷUSD mỗinăm) .
Mộtkhốil ượnghànghoávàt i
ềnbạckhổngl ồđangđượct ỷt ỷcácđi ện
tửt íhon chuyển đivànót hựcsự l àmi ếng mồibéobởchonhững t ay
ăn t rộm hay khủng bố có có “t rithức” . Sự phátt ri
ển nhanh chóng
củamạngmáyt ínhl àđi ềut ấtyếu.Hàngngàycókhôngbi ếtbaonhi êu
ngườit ham gi a vào hệ t hống t hông tint oàn cầu mà chúng t a gọilà
Internet .Những công t ylớn,các doanh nghi ệp,các t rường đạihọc
cùng như cáct rường phổ t hông ngày càng t ăng và hơn cả thế có rất
rấtnhi ều ngườiđang nốimạng t rựctuyến suốt24/ 24 giờ mỗingày,
bảyngàyt rongt uần.Tr ongbốicảnhmộtl i
ênmạngt oàncầuvớihàng
chụct r
iệungườisử dụngnhư I nternett hìvấnđềant oànt hôngt intrở
nên phứct ạp vàcấp t hiếthơn.Dođómộtcâu hỏikhông mấydễchị u
đặtr al à:liệumạngmáyt í
nhcủachúngt asẽphảibịt ấncôngbấtcứ
lúc nào?
Sự bảovệcủabấtkỳmạngmáyt ínhnàođầut i
êncũngl àfi
rewall
và phần mền nguồn mở như Li nux.Và câu chuyện về an t oàn mạng
không cóhồikếtt húc.Vi ệcgi ữ an toàn mộthệt hống kéot heochúng
taphảicónhưngki ếnt hứct ốtvềhệđi ềuhành,mạngTCP/ I
Pcơsởvà
quản t rịdịch vụ.Cùng vớisự gợiý của gi á vi
ên hướng dẫn và t ầm
quan t rọng của việcan t oàn thông t i
nl iên mạng,ở đây chúng t ôichỉ
trì
nhbàymộtcácht ổngquannhữngvùngnơiLi nuxcót hểvàcầnphải
đượcgi ữ an toàn,những t hêm vào đó l àcácl ệnh cơ bản,những ki nh
ngiệm t rongnguyênt ắcant oànvàbảovệhệt hốngmạng.
Nhóm si nhvi ênt hựchi ện:
- NguyễnHuyChương
- LêThịHuyềnTr ang
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 2
I. An t
oàn chocácgi
aodị
ch t
rên mạng
Có rấtnhi ều dịch vụ mạng t ruyền t hống gi ao t
iếp thông qua gi ao thứcvăn bản
không mã hoá,như TELNET,FTP,RLOGI N,HTTP,POP3.Tr ong các gi ao dịch giữa
ngườidùng vớimáy chủ,t ấtcả cáct hông t i
n dạng góiđượct r
uyền qua mạng dưới
hìnht hứcvănbảnkhôngđượcmãhoá.Cácgóit i
nnàycót hểdễdàngbịchặnvàsao
chépởmộtđi ểm nàođót r
ênđườngđi .Việcgi ảimãcácgóit innàyr ấtdễdàng,cho
phép l ấy đượccáct hông ti
n như t ên ngườidùng,mậtkhẩu và cáct hông t i
n quan
trọng khác.Vi ệcsử dụng cácgi ao dịch mạng đượcmã hoá khi ến cho vi ệcgiảimã
thông t i
nt rởnên khóhơn vàgi úp bạn gi ữ an toàn cácthông t i
n quan t rọng.Cáckỹ
thuậtt hôngdụnghi ệnnayl àIPSec,SSL,TLS,SASLvàPKI .
Quản t r
ịt ừ xa l
à mộtt ính năng hấp dẫn của cáchệ t hống UNI X.Ngườiquản t r
ị
mạngcót hểdễdàngt ruynhậpvàohệt hốngt ừ bấtkỳnơinàot r ênmạngt hôngqua
cácgi ao thứct hông dụng như telnet ,r l
ogin.Mộtsố công cụ quản t rịtừ xa đượcsử
dụng r ộng rãinhư l i
nuxconf ,webmi n cũng dùng gi ao thứckhông mãhoá.Vi ệct hay
thết ấtcảcácdị chvụmạngdùnggi aot hứckhôngmãhoábằnggi aot hứccómãhoá
làrấtkhó.Tuynhi ên,bạn nên cung cấp vi ệctruycập cácdị ch vụ t ruyền thống như
HTTP/ POP3t hôngquaSSL,cũngnhưt hayt hếcácdị chvụt el
net,r l
ogi nbằngSSH.
Nguyên t
ắcbảovệhệt
hống mạng
1. Hoạchđị nhhệt hốngbảovệmạng
Trong môit rường mạng,phảicó sự đảm bảo r ằng những dữ l i
ệu có t
ính bí
mậtphảiđượccấtgi ữr i
êng,saochochỉcóngườicót hẫm quyềnmớiđượcphépt ruy
cậpchúng.Bảomậtt hôngt i
nlàviệclàm quant r
ọng,vàvi ệcbảovệhoạtđộngmạng
cũngcót ầm quant rongkhôngkém.
Mạng máy t ính cần đượcbảo vệ an t oàn,t ránh khỏinhững hi ểm hoạ do vô
tì
nh hay cố ý.Tuy nhi ên mộtnhà quản t rịmạng cần phảibi ếtbấtcứ cáigìcũng có
mức độ,không nên t háiquá.Mạng không nhaat st hiếtphảiđược bảo vệ quá cẩn
mật ,đếnmứcngườidùngl uôngặpkhókhănkhit ruynhậpmạngđểt hựchiệnnhi ệm
vụ của mình.Không nên để họ t hấtvọng khicố gắng t ruy cập cá tập ti
n của chính
mình.Bốnhi ểm hoạchí nhđốivớisựanni nhcủamạngl à:
o Tr uynhậpmạngbấthợppháp
o Sựcant hiệpbằngphươngt i
ệnđi ệnt ử
o Kẻt rộm
o Taihoạvôt ì
nhhoặccóchủý
x Mức độ bảo mật: Tuỳ thuộc vào dạng môit rường trong đó
mạngđanghoạtđộng
x Chí nh sách bảo mật: Hệ t hống mạng đòihỏimộtt ập hợp
nguyên tắc,điều luậtvà chí nh sách nhằm loạitrừ mọir ủir o.Gi úp hướng dẫn vược
qua các thay đổivà những t ì
nh huống không dự ki ến trong quá t rì
nh phátt riển
mạng.
Sựđềphòng:đềphòngnhữngt ruycậpbấthợppháp
Sự chứng t hực:t r
ước khit r
uy nhập mạng,bạn gõ đúng t ên đăng nhập và
passwordhợpl ệ.
x Đàot ạo:Ngườidùngmạngđượcđàot ạochu đáosẽcóí tkhả
năngvôýpháhuỷmộtt àinguyên
x Ant oànchot hiếtbị:Tuỳt huộcở:quymôcôngt y,độbímật
dữ li
ệu,cáct àinguyênkhảdụng.Tr ongmôit r
ườngmạngnganghàng,cót hểkhông
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 3
có chí
nh sách bảo vệ phàn cứng có t
ổ chứcnào.Ngườidùng chị
utr
ách nhi
ệm đảm
bảoant oànchomáyt ínhvàdữl i
ệucủar i
êngmình.
2. Môhì nhbảomật
Haimôhì nhbảomậtkhácnhauđãphátt riển,gi
úpbảovệant oàndữ l i
ệuvà
tàinguyênphầncứng:
x Bảo vệt àinguyên dùng chung bằng mậtmã:gắn mậtmã cho
từngtàinguyêndùngchung
x Truycập khiđượcsự chophép :l àchỉđị
nh mộtsốquyền nhất
định t
rên cơ sở ngườidùng,ki ểm tratr
uy nhập tàinguyên dùng chung căn cứ vào
CSDL user-access trên máy server
3. Nângcaomứcđộbảomật
x Kiểm toán:Theodõihoạtđộngt r
ênmạnht hôngquat àikhoản
ngườidùng,ghil ạinhiều dạng bi ến cố chọn lọcvào sổ nhậtký bảo mậtcủa máy
server.Giúp nhận bi
ếtcáchoạtđộng bấthợp l ệhoặckhông chủ đị nh.Cung cấp các
thôngt invềcáchdùngt rongt ì
nhhuốngcóphòngbannàođót hunphísử dụngmột
sốt àinguyên nhấtđịnh,vàcần quyếtđị nh phícủanhững t àinguyên nàyt heocách
thứcnàođó.
x Máyt ính không đĩ a:Không có ổ đĩa cứng và ổ mềm.Có t hểthi
hànhmọivi ệnhư máyt í
nht hôngt hường,ngoạit rừ việcl ưut rữ dữliệut r
ênđĩ acứng
hayđĩ amềm cụcbộ.Không cần đĩ akhởiđộng.Cókhả năng gi aot iếp vớiser vervà
đăng nhập nhờ vào mộtcon chi p ROM khởiđộng đặcbi ệtđượccàit r
ên card mạng.
Khibậtmáy t í
nh không đĩa,chi p ROM khởiđộng phátt ín hiệu cho serverbi ếtrằng
nó muốn khởiđộng.Ser vert rảl ờibằng cácn t ảiphần mềm khởiđộng vào RAM của
máyt í
nh không đĩavàt ự đọng hi ển thịmàn hì nh đăngnhập .Khiđómáyt ính được
kếtnốivớimạng.
x Mãhoádữ l iệu: Ngườit amãhoát hôngt insangdạngmậtmã
bằng mộtphương pháp nào đó sao cho đảm bảo t hông t i
n đó không t hể nhận bi ết
đượcnếu nơinhận không bi ếtcách gi ảimã.Mộtngườisử dụng haymộthostcót hể
sửdụngt hôngtinmàkhôngsợảnhhưởngđếnngườisửdụnghaymộthostkhác.
x Chốngvi rus:
- Ngănkhôngchovi r
ushoạtđộng
- Sữachữahưhạiởmộtmứcđộnàođó
- Chặnđứngvi russaukhinóbộcphát
Ngăn chặn tì
nh trạng t ruy cập bấthợp pháp l à mộtt rong những gi ảipháp
hiệu nhiệm nhấtđểt ránh vi
r us.Dobi ện phápchủ yếu l àphòngngừa,nên nhàquản
trịmạngphảibảođảm saochomọiyếut ốcầnt hi
ếtđềuđãsẵnsàng:
- Mậtmãđểgi ảm khảnăngt ruycậpbấthợppháp
- Chỉđị nhcácđặcquyềnt híchhợpchomọingườidùng
- Cácpr ofile để tổ chứcmôit rường mạng cho ngườidùng có
thểl ậpcấu hì nh vàduyt rìmôit rường đăngnhập,baogồm
các kếtnốimạng và những khoản mục chương t rình khi
ngườidùngđăngnhập.
- Mộtchí nhsáchquyếtđị nhcót hểt ảiphầnmềm nào.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 4
Ki
ến t
rúcbảo mậtcủahệt
hống mạng
1) Cácmứcant
oànt
hôngt
int
rênmạng
Không có đi ều gìgọil à hoàn hảo t r
ong việc an t
oàn hệ thống mạng như
Linux.Nóđượct hi
ếtkếđểl àmộthệđi ều hành nốimạng vàsự phátt riển mạnh mẽ
củanóchỉđểt ậpt rungvàosự ant oàn.Hệđi ềuhànhmãnguồnmởl àcáigìmàcho
phép ngườiquản t rịmạng và những ngườiphátt ri
ển,những ngườidùng tr i
ền miên
theo dõivà ki ểm t oán những gìdễ bịt ấn công.Ở đấy không có gìhuyền bìvề an
toàn thông tin.Thậtl àtốtnếu như cáct àinguyên đượcbảomậtvàđượcbảovệt ốt
trướcbấtkỳsựxâm phạm vôt ìnhhaycốý.
Ant oànhaybảomậtkhôngphảil àmộtsảnphẩm,nócũngkhôngphảil àmột
phầnmền.Nól àmộtcáchnghĩ .Sự ant oàncót hểđượckhởiđộngvàdừngnhư một
dịch vụ.Bảo mậtl à cách an t oàn.Tàiliệu bảo mậtl àtưliệu mà những thành viên
củat ổchứcmuốnbảovệ.Tr áchnhi ệm củavi ệcbảomậtl àngườiquảnt r
ịmạng.
Sự ant oànmạngcóvait r
òquant rọngtốicao.Ant oànphảiđượcđảm bảot ừ
những nhân t ố bên ngoàiker nel,tạiphần cốtl õicủa Li
nux ser
ver.Cơ chế bảo mật
cần phảibaogồm cấu hì nh mạngcủaSer ver,chu viứng dụng củatổchứcmạng và
thậm chícủa những cl i
entt ruy nhập mạng t ừ xa.Có vàicách mà ta cần phảixem
xét:
o Sựant oànvậtl ý
o Ant oànhệt hống
o Ant oànmạng
o Ant oàncácứngdụng
o Sựt ruynhậpt ừxavàvi ệcchầpnhận
1. Sựant oànvậtlý
Điều nàyl àcơbản vàgi ám sátđượct ốtkhí
acạnh an toàn củahệđiều hành
Linux.Sự an toàn vậtl ý bắtđầu vớimôit r
ường xung quanh vídụ như đốivớicác
nhà cung cầp dịch vụ hãm hại?Có nên khoá cáckhốidữ li
ệu lại
?Những ngườinào
đượcchấp nhận đượcvàot rung t
âm dữ li
ệu.Việcbảovệt hích hợplàphảithựchiện
lạikhimuốnxâydựngmộtcàiđặtmớihaydichuyểndữl i
ệuđếnmộtvịt rímới.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 5
2. Ant oànhệt hống
Sự an t oàn hệt hống baoquanh vi ệcchọn phân phốihệđi ều hành Linux,xây
dưngker nel,tớisự ant oànt àikhoảnngườidùng,chophépt r
uycậpt hư mụct ậpt i
n,
mãhoásysl og vàf il
esyst em.Cáct ácvụ nàyđượchoàn t hành trướckhidị ch vụ nối
vào I nternet .Vi ệc chọn mộtphân phốinào t hìt uỳ thuộc vào những nhu cầunhư
chính sách đượcpháct hảo t r
ong cơ chế an t oàn.Có mộtt iêu chuẩn để chọn một
phân phốinhưngnókhôngt huộcphạm vicủabàinày. Việcxâydựngmộtker nelsẵn
cócóhail ợit hế:
o Nhữngopt i
onant oàncủanhânđượcxácđị nhbởingườiquảnt rịmạng
và ngườiquản t rịmạng bi ếtcáigìđượcxácđị nh vào t r
ong ker nelvà t ừ đây có t hể
đồng t hờinhận r a nếu đi ều đó nếu có.Phần nềm nguồn mở nóichung và hệ đi ều
hànhLi nuxnóir iêng,đặcbi ệtcónhữngcảit iếnđểdễdàngchongườisử dụngvàcó
nhữngt iệní chdễứngdụng.Chỉcầnupdat etrongRedHat .
o Sựant oàncáct àikhoảngngườidùngcóvait ròt olớn.Cónhữngvùng
đượcvôhi ệuhoá,nhữngt àikhoảngkhônghoạtđộng,vôhi ệuhoávi ệct r
uycậpđến
NFS lên gốc,hạn chếnhữngđăngnhậpvàot rongmôit rườngđi ều kiển hệt hống. Mã
hoá file hệ t hông sử dụng kỹ t huậtmã hoá mà t hường l à phòng thủ cuốicùng cho
mạng.
Có haicách t iếp cận chung:Hệ t hống f il
e mã hoá ( CFS) và Practical Privacy
DiskDr iver(PPDD) .Hệ t hống có t hểđượct heo dõivà t rong Li nux,hệ thống l oggi ng
đượcl ogged t rong tiện ích syslog.Công cụ t heo dõibao gồm swat ch và logcheck.
Swat ch có công cụ t hông báo t hờigian t
hực,t rong khil ogcheckcung cấp mộtcông
cụ mà phátsi nh những báo cáo đị nh kỳ.Kiểm t oán Passwor d cũng có vait rò sống
còn trong vi ệcan t oàn,bảomậthệt hống trong khimốil i
ên kếtyếu nhấtt rong vi ệc
ant oànmạngl àngườisửdụngvàvi ệclựachọncácmậtkhẩupasswor d.
3. An toàn mạng
Ở đây l i
ên quan đến vi ệ kếtnốit ừ Linux ser vervào mạng.Cấu hì nh dị ch vụ
mạngvớisự ant oàn ngàycàngkhókhăn chonhữngnhàquảnt r
ịmạng. The xinetd
daemon cầnphảiđượcđị nhhì nht ổchứcbảomật .Lệnhnetstat Làmộtt iệní chmạnh
cho phép ngườiquản t r
ịkiểm t ratình trạng cấu hì nh mạng.Ki ểm tra mạng l à điều
cần thiếtcủavi ệcan t oàn.Đi ều nàyđảm bảor ằng cơchếan t oàn đãđượct hựchi ện
có hiêu quả t rong việc hoàn t hành những yêu cầu bảo mật .Đi ều đó đạtđượcbởi
quyền t hựchi ện đến mạng của bạn.Cách t iếp cận vi ệc ki
ểm đị nh mạng hi ệu quả
nhấtsẽt rongvait ròcủangườil àm phi ền.Cónhữngcôngcụki ểm địnhcơsởvàhost
cơsở.
SATAN(Security Administrator's Tool for Analysing Networks), SAINT( Security
Administrator's Integrated Network Tool), SARA (Security Auditor's Research
Assistant)là những công cụ t ốtđể ki ểm đị nh cơ bản.SATAN được đầu t i
ên công
nhậnnăm 1995,nóđượccôngnhậnđôngđảobởimãnguồnmở.
SAI NT mạnh hơn SANAN,t rong khiSARA l à mộtmodulackage,t ương t ácvới
Nmap và Samba.Những cảit i
ến gần đây nhấtl à công cụ Nessus.Nessusl à mi ễn
phí,nguồn mở, đầy đủ nổibật ,công cụ ki ểm t oàn vẫn đượchỗ t rợ cảitiến cảitiến
tí
ch cực. Nessusđivào2 t hành phần :- Cl i
ent (
nessus)vàser ver(nesssus) .Công cụ
Nmap cho ngườiquản t r
ịgi àu kinh nghi ệm.MặtkhácNmap có sứcmạnh,công cụ
quétchongườicóki nhnghi ệm.Nóđượcsửdụngt ốttrongmạngLAN.
TARA( TigerAudi torsResear ch Assistant)làmộtvídụ chocông cụ ki ểm t oán cơ
sởhost .Theodõimạng dướimộtsự t ấn công.Công cụ đểt heodõiđól àPor tSentry
và Ether eal
.Por tSent ry quétt rong chế độ ngầm đị nh.Bảo mậtmạng như mộtt rò
chơigi ữamèovàchuột ,củat r
ítuệvàmáyđếm t rítuệ.Trongkhimạngki ểm t oánlà
mộtphầncủamạngbì nht hường,mạngt heodõicầnphảiđượcưut i
êncaohơn.Vi ệc
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 6
bảomậtbaogồm vi ệcki
ểm t oánchínhxácvàcảvi ệccónênđểnhư thếhaykhông.
Port
Sentr
yl à mộtvídụ của công cụ t
heo dõit
hờigian t
hựcđượct
hiếtkế để quét
pháthi
ệnr ahệthống,vàcókhảchobạnnhữnghồiđáp.
4. Cácứngdụngant oàn
Mộtvàideamonschuẩnt rongviệcphânphốiLi nuxhi ệnthờil
ànhữngứngdụng
đầy đủ mà nó có cấu tr
úcf il
e phứctạp.Web,f il
e,mai lserversử dụng những giao
thứcphứct ạp.An toàn cót hểđượct hựchiện bởicácđặct í
nh bảomậtcủavi ệccác
đạilýchophép( MTA‟s)nhưSendmai l
,Qmai lvàPostfix.
WebSer vercót hểcũngđượcgi ữ antoànbởicácmodulchophép:mod_aut h,
mod_aut h_dbm,mod_aut h_db,….Vi
ệcchophép Open SS hỗt r
ợchoApachesẽcũng
công tácvớiweb server.Samba có t hểlàm an toàn bởiviệcđọccáct hông số đang
chạy.Bướcđầu t i
ên sẽ đượcbảo vệbởicông cụ quản t r
ịweb Samba ( SAT)vớiSLL
nêncácl ệnhquảnl ýSambađượcbảovệ.
5. Chu vi an toàn
Cấpsốt ự nhi êncủacácht iếpcậnđượcsắpt ừngl ớpđếnsự ant oànmáyt ính
rakhỏil ớpt ừlớpmạngđếnl ớpứngdụng,vàt ừđóđềnl ớpchuvi .Đâyl àvùngđược
quan tâm.Fi r
ewal lsl àthành phần chí nh của mi ền chu vian t oàn,l à phần mền mà
chứcnăngbắtbuộct ổchứcbảomậtant oànbởibộl ọc,bảomật ,đẩymạnh,hayyêu
cầu nằm t rong Linux ser verđể kếtnốiđến cả mạng chí nh và I nter net.Fir ewar e có
thểđượct hựchi ệnnhi ềucáchdựat rêncácl ớpcủamôhì nhOSI :l ớpmạng,l ớpgi ao
vận vàứng dụng.Cóđi ểm t ích cựcvàt i
êu cựct rong vi ệct r
iển khaif i
rewar et ạicác
lớp của mạng. Fir
ewal lmạng được bi ếtnhư các packet-f il
tering gat eway,nơimà
chúngki ểm t ranhữggóit inI Pvàogi aodi ệnf irewar evàhoạtđộngphùhợpđượcgi ữ
lại.hoạtđộng bao gồm dr op,cho phép/hoặc l og.Sự bấtl ợil à ki ểu Firewal lnày
khôngkhôn khéo.Fi rwallgiaovận l àm vi ệcbởikhảosátTCPhoặcUDP.Fi rewal lyêu
cầu sự can thiệp ngườidùng sửađổinhững t hủ t ục.Fi rewal lứng dụng l àm chocác
quyếtđị nh truynhập ở t ầng ứng dụng. Nó cho phép ngườiquản t rịmayf i
rewal lcho
yêucầucủamỗil oạiứngdụng.Cacibấtt iệnt rongf irewalll àngườiquảnt rịcầnđị nh
hình tr
iển khait heodõi ,vàbảot rìquát r
ình f irewal lchomỗiứng dụng màcần t ruy
nhậpđi ềukhi ển.
Nól uônl àt ôtđẻt hựchi ệnbảomậtbởivi ệcsử dụngkếthợpmột f i
r ewal lt ại
tấtcả ba t ầng để t r
ánh sự t ổn thương.Fi rewal lkhông chỉcản t rở những ngườil àm
phiền khônghợpphápvàomạngnhưngphảichophépngườisử dụngt ruynhậpbên
ngoàivàonguồnt àinguyên,t rongkhiđóchấpnhậnphêchuẩnnhấtđị nhnhữngkết
nốisau cho ngườidùng.Đây l à nhận t hức dễ nhưng đó l à mộtt hách t hức khi thi
hành.
o Fi rewal lmạng
Có vàil ợit hế trong vi ệc sử dụng Li nux như nền t ảng f ir
ewar e.Sự quản l ý
đồng bộ,phần cứng,số ngườidùng,ki ểm t ranền t ảng,vi ệct hựchi ện,gi ági ữacác
lýdo tạisao.Sự l ocgóil àl ợiích hiệu quả và cách bảo vẩpt ong phậm vi tránh xâm
nhập.Ngườisử dụng không cần xácnhận để sử dụng t i
n cậy những dị ch vụ vùng
bên ngoài.
Những gi ảipháp cho vi ệcl ọcgóit rong Li nux bao gồm i pchai nsvà i pf wadm.
tiệníchcủavi ệcl ọcgóit i
nđượcsửdụngt r ongnhânt ừphi ênbản1. 2.1vềt rước.
Phiênbảncuốicùngcủai pfwadm vàot háng7/ 1996,sauđói pchai nst hayt hế
nó.Những đị a chỉI pchainsl ànhững gi ớihạn t hiếu sótcủai pfwadrnhư đếm 32 bi t,
không có khả năng gi ảiquyếtcấu t hành đị a chỉI P, .
.v.v.I pchai nschi ến t hắng các
giớihạn đó bởivi ệct ận dụng l ợiích của ba kênh r iêng biệthay những quy t ắcnối
tiếpđểl ọc.Bakênhđól à:I NPUT,OUTPUT,vàFORWARD.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 7
Tiệní chIpchainst heocúpháp:
ipchains command chain rule-specification [options] -j action
Tạiđây có thể mộtt rong số kênh INPUT,OUTPUT hoặcFORWARD.Như nhân
2.4 về trước,t í
nh hoạtđộng mộtl ần của Ipchains được thay t
hế bởiNet fi
ltervà
khoảng quyt ắcIptables.Net f
il
terđượchỗ t r
ợ bởicông nghệ Wat chguard.Ipctables
đượcphátt ri
ển từtiện ích củaI pchainsvànóchỉchạyt rên những phiên bản 2.3 về
trước.
Mộtvídụvềl ệnhI ptables:
iptables -A INPUT -p tcp –-dport smtp -j ACCEPT.
Hiện nay có những t hiếtkế fi
rewallbắtđượchầu hếtcáccấu t r
úcmạng phổ
biến,báohi ệuđơngi ảnt heoyêucầukếtnốit ớinhữngnơir ấtphứct ạpkéot heokhu
vựcđượcphiquânsựhoá( DMZ) .
II. BảomậtLi
nuxServer
Những ki nh nghiệm bảo mật
Hiện nay Li
nux đang dần trởt hành mộthệ đi ều hành khá phổ biến bởit í
nh
kinh tế,khảnăng bảo mậtvà sự uyển chuyển cao.Thếnhưng,mọihệt hống dù an
toàn đến đâu cũng dễdàng bịxâm nhập nếu ngườidùng( vànhấtl àngườiquản t rị-
root)không đặtsự bảo mậtl ên hàng đầu.Sâu đây l à mộtsó kinh nghiệm về bảo
mậtt rênhệđi ềuhànhRedHatLi nuxmàchúngt ôimuốnchi asẽcùngcácbạn:
1. Không cho phép sử dụng t àikhoảng r oottừ console:Sau khicàiđặt ,
tàikhoảng r ootsẽ không có quyền kếtnốit elnetvào dịch vụ t
elnettrên hệ thống,
trong khi đó t ài khoản bình thường l ại có t hể kết nối, do nội dung t ập t i
n
/etc/
secur i
ty chỉquyđị nh những consol eđượcphép t ruycập bởir ootvà chỉliệtkê
những consol etruyxuấtkhingồit r
ựct iếp tạimáychủ.Đểt ăng cường bảomậthơn
nữa,hãy soạn t hảo tập t
in / et
c/security và bỏ đinhững consol e bạn không muốn
roottruycập.
2. Xoábớttàikhoảngvànhóm đặcbi ệt:Ngườiquản tr
ịnên xoábỏt ấtcả
cáctàikhoảng và nhóm đượctạo sẵn t
rong hệ t
hống nhưng không có nhu cầu sử
dụng.(vídụ:lp,syne,shutdown,halt
,news,uucp,oper ator
,game,gophẻ…) .Thực
hiệnviệcxoábỏtàikhoảngbằngl ệnhusedelvàxoábỏnhóm vớil ệnhgroupdel
3. Tắtcácdị ch vụ khôngsử dụng:Mộtđi ều khánguyhi ểm làsau khicài
đặt,hệt hống tự động chạykhá nhi ều dịch vụ,tr
ong đó đa số l
à cácdịch vụ không
mong muốn,dẫn đến t iêu tốn tàinguyên và sinh r
a nhiều nguy cơ về bảo mật.Vì
vậy ngườiquản t rịnên tắtcácdị ch vụ không dùng tới
(ntsysv)hoặcxoá bỏ cácgói
dịchvụkhôngsửdụngbằngl ệnhr pm
4. Không cho “ SU”( Substit
ute)lên r oot:Lệnh su cho phép ngườidùng
chuyểnsangt àikhoảngkhác.Nếukhôngmuốnngườidùng“ su”thànhr ootthìthêm
hai dòng sau vàot ậpt in/ etc/
pam. d/
su:
Auth sufficient/lib/security/pam_root ok so debug
Auth required/lib/security/pam_wheel.so group= tên_nhóm_root
5. Chedấut ậptinmậtkhẩu:Gi aiđoạnđầu,mậtkhẩut oànbột àikhoảng
đượcl
ưu trongtậptin /
etc/password,tậpt
inmàmọingườidùngđềucóquyền đọc.
Đâylàkẻhởl ớntrongbảomậtdùmậtkhẩuđượcmãhoánhưngvi ệcgiảimãkhông
phảil
à không t
hể thựchiện được.Do đó,hiện nay cácnhà phátt
riển Li
nux đã đặt
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 8
ri
êng mậtkhẩu mã hoá vào t
ập t
in /ect/
shadow chỉcó r
ootmớiđọcđược,nhưng
yêucầuphảichọnEnabletheshadow passwordkhicàiRedHat.
6. Luôn nângcấpchonhân (ker
nel)Linux: Li
nuxkhônghẵn đượct hiếtkế
vớití
nh năng bảo mậtchặtchẽ,khá nhi
ều lỗ hỏng có thể bịl
ợidụng bởiti
nt ặc.Vì
vậyviệcsử dụngmộthệđi ềuhànhvớinhânđượcnângcấpl àrấtquant r
ọngvìmột
khinhân,phầncốtl õinhấtcủahệđi
ềuhànhđượct hi ếtkếtốtthìnguycơbịpháhoại
sẽgiảm đirấtnhiều.
7. Tự động thoátkhỏiShell:Ngườiquản trịhệ t
hống và kể cả ngườisử
dụng bình thường r
ấthayquên thoátradấu nhắcshel lkhikếtthúccông việc.Thât
nguy hiểm nếu có mộtkẻ nào sẽ có t
oàn quyền t
ruy suấthệ thống mà chăng tốn
chútcôngsứcnàocả.Dovậyngườiquảnt r
ịnêncàiđặttínhnăngt ựđộngt hoátkhỏi
shellkhikhôngcósự t r
uyxuấtt r
ongkhoảngt hờigianđịnhtrướcbằngcáchsử dụng
biếnmôit rường vàgánmộtgi átrịquyđịnhSốgiâyhệt hốngduytr ìdấunhắc,
bạnnênvàot âpt
in / ect
/profi
leđểluônt ácdụngtrongmọiphi ênlàm việc.
8. Khôngchophépt ruynhậpt ậpti
nkị chbảnkhởiđộngcủaLi nux:Khihệ
điều hành Linux khởiđộng,các t ập tin kị
ch bản ( scr
ipt) được đặt t
ạit hư mục
/etc/r
c.d/i
nit.
dsẽđượcgọit hựct hi.Vìt hế,đểt r
ánhnhữngsự t òmòkhôngcầnt hi
ết
từ phíangườidùng,vớit ư cách ngườiquản t rị,bạn nên hạn chếquyền tr uyxuấttới
cáctậpt i
nnàyvàchỉchophépt àikhoảngr ootxửl ýbằngl ệnhsau:
#chmod –R 700/etc/rc.d/init.d*
9. Giớihạn việct ự ý ghinhận t hông ti
nt ừ shell
:Theo mặcđị nh,t ấtcả
l
ệnh được t hực thitạidấu nhắc shel lcủa tàikhoảng đều được ghivào t ập t i
n
.bash_histor y(nếu sd bashshell)trong thư mụccá nhân của t ừng tàikhoảng.Đi ều
nàygâynênvôsốnguyhi ểm ti
ềm ẩn,đặcbi ệtđốivớinhữngứngdụngđòihỏingười
dùng phảigõ t hông tin mậtkhẩu.Do đó ngườiquản t rịnên gi
ớihạn việct ự ý ghi
nhậnt hôngt intừshelldựavàohaibi ếnmôit rườngHI STFILESIZEvàHI STSI ZE:
- Biến môit rường HI STFILESI ZE quy định số l
ệnh gõ tạidấu nhắc shellsẽ
đượcl ưul ạichol ầntruycậpsau.
- Bi ến môit rường HISTSI ZE quy định số l
ệnh sẽ đượcghinhớ t r
ong phi ên
l
àm vi ệchi ệnhành.
Vìvậy,t asẽphảigi ảm giát r
ịcủaHI STSIZEvàchogi átrịHISTFILESIZEbằng
0 đểgi ảm t hiểu t
ốiđanhữngnguyhi ểm.Bạn t hựchi ện vi
ệcnàybằngcách t hayđổi
giátrịhaibi ếnnêut r
ênt rongtậpt in/ et
c/profi
lenhưsau:
HISTFILESIZE = 0
HISTSIZE = xx
Trongđóxxl àsốl ệnhmàshel lsẽghinhớ,đồngt hờikhôngghilạibấtkỳmột
l
ệnhnàodongườidùngđãgõkhingườidùngt hoátkhỏishel l
.
10. Tắccáct i
ến trì
nh SUI D/SGID :Bình thường,cáct iến t
rình đượct hực
hiện dướiquyền củat àikhoản gọit hựct hiứngdụngđó.Đól àdướiwi ndows,nhưng
Unix/ Li
nux lạisử dụng mộtkỹ t huậtđặc bi ệtcho phép mộtsố chương t rình được
thựchi ện dướiquyền củangườiquản l ýchương tr
ình chứ không phảingườigọit hực
thichương t rình.Vàđâychí nh l
àlýdot ạisaotấtcảmọingườidùngt rong hệt hống
đềucót hểđổimậtkhẩucủamì nht rongkhikhônghềcóquyênt ruyxuấtl ênt ậpt i
n
/etc/shadow,đól àvìl ệnh passwd đãđượcgán t huộct í
nh SUI D vàđượcquản l ýbởi
root,màr ootl ạil
àngườidùngduynhấtcóquyềnt ruyxuất/ etc/
shadow.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 9
Tuyt hế,khảnăngt iênt i
ếnnàycót hểgâynên nhữngnguycơkháphứct ạpvì
nếumộtchươngt rì
nhcókhảnăngt hựct hiđượcquảnl ýbởiroot ,dot hiếtkếtồihoặc
do đượccàiđặtcố t ì
nh bởinhững kẻ phá hoạimà l ạiđượcđặtt huộct í
nh SUIDt hì
mọiđi ều “khủng khiếp”đều có t hểxảyr a.Thựct ếcho thấycó khá nhi ều kỹt huật
xâm phạm hệt hốngmàkhôngcóquyềnr ootđượct hựchiệnbằngcáckỹt huậtnày:
kẻ phá hoạibằng cách nào đó t ạo mộtshel lđược quản lý bởir oot,có thuộc t í
nh
SUI D,kếđếnmọit ruyxuấtpháhoạisẽđượct hựchiệnquashel lvừat ạovìmọil ệnh
thựchiệnt rongshellsẽđượct hựchiệngi ốngnhưdướiquyềnr oot.
Thuộct ínhSGI D cũngt ươngt ự như SUID:cácchươngt rìnhđượct hựchiệnvới
quyền nhóm quản l ý chương trình chứ không phảinhóm của ngườichạy chương
trì
nh.Như vậy ngườiquản t rịsẽ phảit hường xuyên ki
ểm t rat rong hệ thống có
những ứng dụng nào có t huộct í
nh SUI D hoặcSGI D mà không đượcsự quản l ýcủa
rootkhông,nếu pháthi ện đượct ậptin cóthuộct í
nhSUI D/SGI D “ngoàil uồng”,bạn
cót hểloạibỏcáct huộct ì
nhnàybằngl ệnh:
#chmod a-s
III. Linux Firewall
An t oàn hệt hống l uôn luôn làmộtvấn đềsốngcòn củamạngmáyt í
nh vàf i
rewal llà
mộtt hànhphầncốtyếuchovi ệcđảm bảoanni nh.
Mộtf i
rewal llà mộtt ập hợp cácquit ắc,ứng dụng và chí nh sách đảm bảo cho người
dùngt ruycậpcácdị chvụmạngt r
ongkhimạngbênt rongvẫnant oànđốivớicáckẻt ấn
công t ừI nternet hay t ừ các mạng khác. Có hail oạiki ến trúc fi
rewallcơ bản l à:
Proxy/ Applicationf i
rewal lvàf il
teri
nggat ewayf ir
ewal l
.Hầuhếtcáchệt hốngf i
rewal lhiện
đạil àloạilai( hybr i
d)củacảhail oạit
r ên.
Nhiều công t y và nhà cung cấp dị ch vụ I nternetsử dụng máy chủ Li nux như một
Internetgat eway.Những máychủ nàyt hường phụcvụ như máychủ mai l
,web,f tp,hay
dialup.Hơn nữa,chúng cũngt hường hoạtđộngnhư cácf i
rewal l
,thihành cácchí nh sách
kiểm soátgi ữaI nternetvàmạngcủacôngt y.Khảnănguyểnchuyểnkhi ếnchoLi nuxt hu
hútnhưl àmộtt hayt hếchonhữnghệđi ềuhànht hươngmại .
Tínhnăngf irewallchuẩn đượccungcấpsẵnt rongker nelcủaLi nuxđượcxâydựngt ừ
hait hànhphần:i pchainsvàI PMasquer ading.
Linux I P Firewalling Chai ns l
à mộtcơ chế l ọc góit inI P.Những t í
nh năng của I P
Chai nschophépcấuhì nhmáychủLi nuxnhư mộtf i
lt
er i
nggat eway/fi
rewalldễdàng.Một
thành phần quan t rọng khác của nó t rong ker nellàI P Masquer ading,mộtt í
nh năng
chuyển đổiđị a chỉmạng ( networkaddr esst r
ansl at
ion- NAT)mà có t hểchegi ấu cácđị a
chỉI Pt hựccủamạngbên t rong.Đểsử dụng i pchains,bạn cần t hi
ếtlậpmộtt ập cácl uật
màquiđị nhcáckếtnốiđượcchophéphaybịcấm.
Cácnguyênt ắcIpchainsThựchi ệncácchứcnăngsau:
± Accept: The packet is okay; allow it to pass to the appropriate chain
Chophépchuyểngóit inquachai nt hí
chhợp
± Deny: The packet is not okay; silently drop it in the bit bucket. Không
đồngý,bịr ớt
.
± Reject: The packet is not okay; but inform the sender of this fact via
anICMPpacket .Khôngđồngý,nhưngsựvi ệccủangườigởi quagóiI CMP
± Masq: Used f or IP masquer ading (networ k addr ess t ransl
ation).Sử
dụngchoIPmasquer ading(việcdị chđịachỉmạng)
± hi
Redirect: Send t spackett osomeoneel sef orpr ocessi ng.Gởigóit i
n
nàyđếnmộtngườikhácđểsửl ý
± Return: Terminate the rule list. Hoàn thành danhsáchcácquyt ắc.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 10
Chú ý:Các góiI pf w( ipfi
lt
er s/i
ptabl
e)dướihệ đi ều hành BSD cung cấp hoạtđộng
tươngt ựI pchai ns.
Vídụ:
# Chophépcáckếtnốiwebt ớiWebSer vercủabạn
/sbin/ipchains -A your_chains_rules -s 0.0.0.0/0 www -d 192.16.0.100 1024: -j ACCEPT
# Chophépcáckếtnốit ừbênt r
ongtớicácWebSer verbênngoài
/sbin/ipchains -A your_chains_rules -s 192.168.0.0/24 1024: -d 0.0.0.0/0 www -j
ACCEPT
# Từchốit ruycậpt ấtcảcácdị chvukhác
/sbin/ipchains -P your_chains_rules input DENY
Ngoàir a,bạn cót hểdùngcácsản phẩm f irewallthươngmạinhư CheckPoi ntFi reWall
-
1,Phoeni x Adapt ive Fi rewall,Gat eway Guardian,XSentry Fir
ewal l
,Rapt or,. ..hay rất
nhiềucácphi ênbảnmi ễnphí ,mãnguồnmởchoLi nuxnhưT. RexFi r
ewall,Dant e,SINUS,
TIS Firewall Toolkit, ...
1.DÙNG CÔNG CỤ DÕ TÌM ĐỂKHẢO SÁTHỆ THỐNG
Thâm nhập vào mộthệ t hống bấtkỳ nào cũng cần có sự chuẩn bị .Hackerphảixác
định ramáyđí ch vàt ì
m xem những por tnàođang mởt rướckhihệt hống cót hểbịxâm
phạm.Quá t rình này t hường đượct hựchi ện bởicáccông cụ dò t ìm ( scanning tool)
,kỹ
thuậtchí nh để t ì
m r a máy đích và cácpor tđang mở trên đó.Dò t ìm l à bướcđầu t iên
hackersẽ sử dụng t rướckhit hựchi ện tấn công.Bằng cách sử dụng cáccông cụ dò t ì
m
như Nmap,hackercó t hể rà khắp cácmạng để t ìm ra cácmáy đí ch có t hể bịtấn công.
Mộtkhixácđị nhđượccácmáynày,kẻxâm nhậpcót hểdòt ìm cácpor tđangl ắngnghe.
Nmap cũng sử dụng mộtsố kỹ t huậtcho phép xác đị nh khá chính xác l oạimáy đang
kiểm tra.
Bằng cách sử dụngnhữngcông cụ củachí nh cáchackert hườngdùng,ngườiquản t r
ị
hệt hốngcót hểnhì nvàohệt hốngcủamì nht ừgócđộcủacáchackervàgi úptăngcường
tính an toàn của hệ t hống.Có r ấtnhi ều công cụ dò t ì
m có t hể sử dụng như:Nmap,
strobe, sscan, SATAN, ...
Nmap
Làchữ vi ếtt ắtcủa" Net workexploration toolandsecur i
tyscanner ".Đâyl àchươngt rình
quéthàngđầuvớit ốcđộcựcnhanhvàcựcmạnh.Nócót hểquétt rênmạngdi ệnr ộngvà
đặcbi ệtt ốtđốivớimạng đơn l ẻ.NMAPgi úp bạn xem những dị ch vụ nàođang chạyt rên
server( services/ ports:webserver,
ftpserver ,pop3,.
..),serverđang dùng hệ đi ều hành gì,
loạitườngl ửamàser versửdụng,. ..vàr ấtnhi ềut í
nhnăngkhác.NóichungNMAPhỗt rợ
hầuhếtcáckỹt huậtquétnhư :I CMP( pingaweep) ,IPpr otocol
,Null scan, TCP SYN (half
open) ,...NMAP đượcđánh gi álà công cụ hàng đầu của cácHackercũng như cácnhà
quảnt rịmạngt r
ênt hếgi ới
.
Quétan t oàn Nmap l àmộtt rong sốcông cụ quétan t oàn đượcsử dụng r ộng
rãinhấtsẵncó.Nmapl àmộtcổngquétmàchốngl ạicácnhânt ố,cáccáchkháct àn
pháđến mạng củabạn.Nócót hểphátsi nh r
anhiều kiểu góimàt hăm dòcácngăn
xếpTCP/ IPtrênnhữnghệt hốngcủabạn.
Nmapcót hểphátsi nh ramộtdanh sách củanhữngcổngmởdị ch vụ trên hệ
thống của bạn, t
hâm nhập f irewal
ls,và cung cấp những tin quấy r ầy,không tin cậy
đangchạyt r
ênhostcủabạn.Nmapsecur itycósẵnt ại:http://www.insecure.org
.Dướiđâyl àmộtvídụsửdụngNmap:
# nmap -sS -O 192.168.1.200
Starting nmap V. 2.54 by Fyodor ([email protected], www.insecure.org/nmap/)
Interesting ports on comet (192.168.1.200):
Port State Protocol Service
7 open tcp echo
19 open tcp chargen
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 11
21 open tcp ftp
...
TCP Sequence Prediction: Class=random positive increments
Difficulty=17818 (Worthy challenge)
Remote operating system guess: Linux 2.2.13
Nmap run completed -- 1 IP address (1 host up) scanned in 5 seconds
Tuy nhi ên,sử dụng cáccông cụ này không t hể thay thế cho mộtngườiquản trịcó kiến
thức.Bởivìvi ệcdò t ì
m thường dự báo mộtcuộct ấn công,cácsi t
enên ưu t
iên cho vi
ệc
theodõichúng.Vớicáccôngcụdòt ì
m,cácnhàquảnt rịhệt hốngmạngcót hểpháthi ện
ranhữnggìmàcáchackercót hểthấykhidòt r
ênhệt hốngcủamì nh.
2.PHÁTHIỆN SỰ XÂM NHẬP QUA MẠNG
Nếuhệt hốngcủabạn cókếtnốivàoi nt er
net,bạncót hểt rởt hànhmộtmụct i
êubịdò
tì
m cácl ỗhổngvềbảomật .Mặcdùhệt hốngcủabạncóghinhậnđi ềunàyhaykhôngt hì
vẫnkhôngđủđểxácđị nhvàpháthi ệnvi ệcdòt ì
m này.Mộtvấnđềcầnquant âm khácl à
cáccuộct ấn công gây ngừng dị ch vụ ( Deni alofSer vices- DoS) ,làm t hế nào để ngăn
ngừa,pháthi ệnvàđốiphóvớichúngnếubạnkhôngmuốnhệt hốngcủabạnngưngt r
ệ.
Hệt hốngpháthi ện xâm nhập quamạng( NetworkI ntrusion Det ection Syst em - NIDS)
theo dõicáct hông tint r
uyền t r
ên mạng và pháthi ện nếu có hackerđang cố xâm nhập
vào hệ t hống (hoặcgây gây r a mộtvụ t ấn công DoS) .Mộtvídụ đi ển hình là hệ thống
theo dõisố l ượng lớn cácyêu cầu kếtnốiTCP đến nhi ều por tt rên mộtmáy nào đó,do
vậycót hểpháthi ện ranếu cóaiđó đang t hử mộtt ácvụ dòt ìm TCPpor t.MộtNI DS có
thể chạy t rên máy cần t heo dõihoặct r ên mộtmáy độcl ập theo dõit oàn bộ t hông ti
n
trênmạng.
Cáccông cụ có t hểđượckếthợp đểt ạomộthệt hống pháthi ện xâm nhập quamạng.
Chẳng hạn dùng t cpwr apperđể đi ều khi ển,ghinhận cácdị ch vụ đã đượcđăng ký.Các
chươngt rì
nhphânt í
chnhậtkýhệt hống,như swat ch,cót hểdùngđểxácđị nhcáct ácvụ
dòt ì
mt rên hệt hống.Vàđi ều quan t rọngnhấtl àcáccôngcụ cót hểphân t í
ch cáct hông
ti
nt rên mạng để pháthi ện các tấn công DoS hoặc đánh cắp t hông tin như t cpdump,
ethereal, ngrep, NFR (Network Flight Recorder), PortSentry, Sentinel, Snort, ...
Khihiện t hựcmộthệ t hống pháthi ện xâm nhập qua mạng bạn cần phảil ưu t âm đến
hiệusuấtcủahệt hốngcũngnhưcácchí nhsáchbảođảm sựr i
êngt ư.
3.KIỂM TRA KHẢ NĂNG BỊXÂM NHẬP
Kiểm trakhảnăng bịxâm nhập l i
ên quan đến vi ệcxácđị nh vàsắpxếp cácl ỗhổngan
ninh trong hệ thống bằng cách dùng mộtsố công cụ ki ểm t ra.Nhi ều công cụ kiểm tra
cũng cókhảnăng khait hácmộtsốl ỗ hổng t ì
mt hấyđểl àm rõ quát r
ình thâm nhập t rái
phépsẽđượct hựchi ệnnhưt hếnào.Vídụ,mộtl ỗitrànbộđệm củachươngt rì
nhphụcvụ
dịch vụ FTP có thể dẫn đến vi ệc thâm nhập vào hệ t hống vớiquyền „ r
oot‟.Nếu người
quảnt rịmạngcóki ếnt hứcvềki ểm t r
akhảnăngbịxâm nhậpt r
ướckhinóxảyr a,họcó
thểt i
ếnhànhcáct ácvụđểnângcaomứcđộanni nhcủahệt hốngmạng.
Cór ấtnhiềucáccôngcụ mạngmàbạncót hểsử dụngt r
ongvi ệckiểm t r
akhảnăngbị
xâm nhập.Hầu hếtcácquá t rì
nh kiểm t r a đều dùng ítnhấtmộtcông cụ t ự động phân
tí
chcácl ỗhổnganni nh.Cáccôngcụnàyt hăm dòhệt hốngđểxácđị nhcácdị chvụhi ện
có.Thôngt i
nl ấyt ừcácdị chvụnàysẽđượcsosánhvớicơsởdữ l i
ệucácl ỗhổnganni nh
đãđượct ìmthấyt rướcđó.
Cáccông cụ t hường đượcsử dụng để t hựchi ện cácki ểm tral oạinày làI SS Scanner ,
Cybercop, Retina, Nessus, cgiscan, CIS, ...
Kiểm tra khả năng bịxâm nhập cần đượct hựchi ện bởinhững ngườicó t rách nhi
ệm
mộtcách cẩn t hận.Sự t hi ếu ki
ến thứcvà sử dụng saicách có t hể sẽ dẫn đến hậu quả
nghiêm t r
ọngkhôngt hểl ườngt rướcđược.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 12
4.ĐỐIPHÓ KHIHỆTHỐNG CỦA BẠN BỊTẤN CÔNG
Gần đây,mộtl oạtcác vụ t ấn công nhắm vào các si t
e của những công t ylớn như
Yahoo!, Buy.com, E-Bay,Amazon và CNN I nt
eracti
ve gây ra những thiệthạivô cùng
nghiêm t r
ọng.Những t ấn công này là dạng tấn công gây ngừng dịch vụ " Deni
al-Of-
Service"mà được t hiếtkế để làm ngưng hoạtđộng của mộtmạng máy t ính hay một
website bằng cách gửiliên t
ụcvớisố lượng lớn cácdữ liệu t
ớimụct i
êu tấn công khi
ến
cho hệ thống bịtấn công bịngừng hoạtđộng,đi ều này tương t
ự như hàng t r
ăm người
cùnggọikhôngngừngt ới1sốđi ệnthoạikhiếnnól i
ênt ụcbịbận.
Trong khikhông t hể nào tr
ánh đượcmọinguy hi ểm từ cáccuộct ấn công,chúng t ôi
khuyênbạnmộtsốbướcmàbạnnênt heokhibạnpháthi ệnr arằnghệt hốngcủabạnbị
tấn công.Chúngt ôicũng đưar amộtsốcách đểgi úp bạn bảođảm t í
nh hiệu qủacủahệ
thống an ninh và những bướcbạn nên l àm để giảm rủiro và có t
hể đốiphó vớinhững
cuộct ấncông.
Nếu pháthi
ện r
arằng hệ thống của bạn đang bịt
ấn công,hãy bì
nh t
ĩnh.Sau
đâyl
ànhững bướcbạn nên l
àm:
x Tậphợp1nhóm đểđốiphóvớisựt ấncông:
o Nhóm này phảibao gồm những nhân vi ên kinh nghi ệm,những ngườimà
cót hểgiúphì nht hànhmộtkếhoạchhànhđộngđốiphóvớisựt ấncông.
x Dựa t heo chính sách và cácquyt rình t
hựchi ện vềan ni nh củacông t y,sử dụng
cácbướct hí
chhợpkhit hôngbáochomọingườihayt ổchứcvềcuộct ấncông.
x Tì m sự giúpđỡt ừ nhàcungcấpdị chvụI nternetvàcơquanphụt ráchvềanni nh
máy tính:
o Liên hệ nhà cung cấp dị ch vụ Inter
netcủa bạn để t hông báo về cuộct ấn
công.Cót hểnhàcungcấpdị chvụI nter netcủabạnsẽchặnđứngđượccuộct ấncông.
o Liên hệcơ quan phụ t rách vềan ni nh máyt ính đểt hông báo vềcuộct ấn
công
x Tạm t hờidùng phương t hứct ruyền t hông khác( chẳng hạn như qua đi ện t
hoại )
khit r
aođổit hôngt inđểđảm bor ằngkẻxâm nhậpkhôngt hểchặnvàl ấyđượct hôngt i
n.
x Ghil ạit ấtcảcáchoạtđộng củabạn ( chẳng hạn như gọiđi ện t hoại,t
hayđổif i
le,
...)
x Theodõicáchệt hốngquant r
ọngt r
ongqúat rì
nhbịt ấncôngbằngcácphầnmềm
hay dị ch vụ pháthi ện sự xâm nhập ( int r
usion detecti
on software/ser vices).Điều này có
thểgi úp l
àm giảm nhẹsự t ấn công cũng như pháthi ện những dấu hi ệu củasự t ấn công
thựcsựhaychỉl àsự quấyr ốinhằm đánhl ạchướngsự chúýcủabạn( chẳnghạnmộtt ấn
côngDoS vớidụngýl àm saol ãngsựchúýcủabạnt rongkhit hựcsựđâyl àmộtcuộct ấn
công nhằm xâm nhập vào hệ t hống của bạn) .Sao chép l ạitấtcả cácf i
lesmà kẻ xâm
nhậpđểl ạihayt hayđổi( nhưnhữngđoạnmãchươngt rì
nh,logf i
le,. .
.)
x Li ênhệnhàchứct ráchđểbáocáovềvụt ấncông.
Những bướcbạn nên l
àm để gi
ảm rủiro và đốiphó vớisự tấn công t
rong t
ương
lai :
o Xâydựngvàt r
aoquyềnchonhóm đốiphóvớisựt ấncông
o Thihànhkiểm traanni
nhvàđánhgiámứcđộr ủirocủahệt hống
o Càiđặtcácphầnmềm ant oànhệthốngphùhợpđểgi ảm bớtrủiro
o Nângcaokhảnăngcủamì nhvềantoànmáyt í
nh
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 13
Cácbướcki ểm trađểgi úp bạn bảo đảm t ính hi ệu quảcủahệt hống an ni
nh
o Ki ểm trahệt hống an ninh mớicàiđặt:chắcchắn t ính đúng đắn củachính sách
anninhhiệncóvàcấuhì nhchuẩncủahệt hống.
o Ki ểm tratự độngt hườngxuyên:đểkhám phásự “ viếngthăm”củanhữnghacker
haynhữnghànhđộngsait r
áicủanhânvi ênt r ongcôngt y.
o Ki ểm tra ngẫu nhiên:để kiểm tra chính sách an ninh và những ti
êu chuẩn,hoặc
kiểm t
ra sự hi
ện hữu của những lỗ hổng đã đượcpháthi ện ( chẳng hạn những l
ỗiđược
thôngbáot ừnhàcungcấpphầnmềm)
o Ki ểm trahằngđêm nhữngf il
equant r
ọng:đểđánhgi ásự toànvẹncủanhữngf il
e
vàcơsởdữl i
ệuquant rọng
o Ki ểm tra cáctàikhoản ngườidùng:để pháthi ện cáct àikhoản không sử dụng,
khôngtồnt ại
,...
o Ki ểm trađịnhkỳđểxácđị nht rạngt háihiệnt ạicủahệt hốnganni nhcủabạn
Thi
ếtl
ập t
ường l
ửaIpt
abl
eschoLi
nux
Cấu hì nh Tabl es
ViệccàiđặtI ptableslàmộtphần t rongvi ệccàiđặtRedHatban đầu.Nguyên
bản khởit ạo t ì
m ki ếm sự t ồn tạicủa f ileI pt abl es,r ules/etc/sysconfig/iptables, Và
nếu chúng đã t ồn tạiiptableskhởiđộng vớicầu hì nh đã đượcchỉr õ.Mộtkhiser ver
nàyl à gởimai lvà nhận mai l,cấu hình I ptabl esnên cho phép những kếtnốit ừ đầu
vào sendmai lđếnbấtkỳnơiđâu.Ngườiquảnt rịhệt hốngsẽchỉsử dụngshht ừ bên
trongcácmáy,đặcbi ệtl àMI S.Iptablesr ulessẽcàiđặtđểchophépcáckếtnốishh
từ 2 MI S.Pi ng I CMPsẽchophép bấtkỳđâu.Không cócông nàokhácchophép kết
nốiđếnngườiphụcvụnày.Đâyl àmứcbổsungchovi ệcphòngt hủcủaser vert rong
trường hợp Fi rewal lđược t hoã hiệp.Thêm vào đó l à vi ệc bảo vệ cho ssh sẽ được
cungcấpbởicấuhì nhcácgóit cpbêndưới .
Nhữngquyt ắcđểt hựchiệncấuhì nhI pt abl esnhưsau:
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT(1)
/sbin/iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT(2)
/sbin/iptables -A INPUT -p tcp --dport 25 -j ACCEPT(3)
/sbin/iptables -A INPUT -p tcp --dport 22 -s 10.100.200.0/24 -j ACCEPT(4)
/sbin/iptables -A INPUT -p tcp --dport 22 -s 10.100.201.0/24 -j ACCEPT(5)
/sbin/iptables -A INPUT -p udp --sport 53 -s 10.100.50.50 -j ACCEPT(6)
/sbin/iptables -A INPUT -p udp -sport 53 -s 10.100.42.42 -j ACCEPT(7)
/sbin/iptables -A INPUT -j LOG(8)
/sbin/iptables -P INPUT DROP(9)
(1)Chophépnhữngkếtnốil iênquanvàđãt hi ếtl ậpđếnser ver
(2)Chophépcáchostkhácpi ngđếnser versendmai d
(3)ChophépkếtnốiSMTPđếnser ver
(4),( 5)Chophépkếtnốissht ừ2MÍ( subnet s)
(6),( 7)Cho phép ngườiphụcvụ t ên DNS cho box sendmai d để cung cấp gi ảipháp
DNS.Nếubạncóhơnmộtdomai n–DNS,t hìt hêm mộtdòngchomỗiDNS.
(8)l ogbấtkỳkếtnốinàocốgắngmànókhôngđặcbi ệtchophép
(9)Càidặtchí nhsáchmặcđị nhchobảngI NPUTt oDROP
Tấtcả cáckếtnốiđặcbi ệtkhông chophép sẽbịr ớt
.Chương t r
ình losent r
ysẽđược
cấu hì nh đểđị nh r ằng bấtkỳdòng nào l og cũng như sự xâm phạm an t oàn.Đểgi ữ
đượccấuhì nhquar eboot ,taphảichạyI ptabl es- Save.Chạyl ệnhnhưsau:
/sbin/iptables-save > /etc/sysconfig/iptables
Khihệt hốngkhởiđộngl ên,fileIptablessẽđượcđọcvàcấuhì nhhi ệudụng.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 14
Iptabl
esl à mộtt ường lửa ứng dụng lọcgóidữ l i
ệu rấtmạnh,mi ễn phívà có sẵn trên
Linux..Netfi
lter
/Iptabl
es gồm 2 phần l à Netfi
lt
erở t rong nhân Linux và Ipt
ables nằm
ngoài nhân.I pt
ableschị utrách nhiệm giao t
iếp giữa ngườidùng và Netfi
lt
erđể đẩy các
l
uậtcủa ngườidùng vào cho Net f
il
erxử lí.Netfil
terti
ến hành lọccácgóidữ l i
ệu ở mức
IP.Netfi
lterlàm việctr
ựct i
ếpt rongnhân,nhanhvàkhôngl àm giảm tốcđộcủahệt hống.
Cáchđổiđị
achỉI
Pđộng(
dynami
cNAT)
Trướckhiđivàophầnchính,mìnhcầngiớithi
ệuvớicácbạnvềcôngnghệđổiđị achỉNAT
độngvàđónggi ảI
PMasquerade.Haitừ nàyđượcdùngrấtnhi ều tr
ongI pt
ablesnênbạn
phảibiết
.Nếubạnđãbi ếtNATđộngvàMasquer ade,bạncót hểbỏquaphầnnày.
NAT động l à mộttr
ong những kĩt
huậtchuyển đổiđịa chỉI P NAT (
Net work Addr
ess
Transl
ati
on).CácđịachỉI
PnộibộđượcchuyểnsangI PNATnhưsau:
NAT Rout er đảm nhận vi ệc chuyển dãy I P nộibộ 169. 168.0.x sang dãy IP mới
203.162.2.x.Khicó góil i
ệu vớiIP nguồn là 192.168.0.
200 đến router,r out
ersẽ đổiI P
nguồnt hành203. 162. 2.200sauđómớigởir angoài.Quát rì
nhnàygọil àSNAT( Source-
NAT,NATnguồn) .Rout erlưudữliệut rongmộtbảnggọil àbảngNATđộng.Ngượcl ại
,khi
cómộtgóit ừliệu từ gởitừ ngoàivàovớiI Pđích l
à203. 162.2.
200,r outersẽcăn cứ vào
bảng NAT động hi ện t ạiđể đổiđị a chỉđích 203.162.2.200 thành địa chỉđích mớil à
192.168.0.200.Quá t rì
nh này gọil à DNAT ( Desti
nati
on-NAT,NAT đí ch) .Liên l
ạc giữa
192.168.0.200 và 203.162.2.200 là hoàn toàn tr
ong suốt( t
ransparent)qua NAT r outer
.
NAT r outer ti
ến hành chuyển t i
ếp ( f
orwar d) gói dữ liệu từ 192. 168.0.200 đến
203.162.2.200vàngượcl ại.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 15
Cách đóng gi
ảđịachỉIP (masquer
ade)
Đâylàmộtkĩthuậtkháctr
ongNAT.
NAT Routerchuyển dãy I P nộibộ 192. 168.0.x sang mộtI P duy nhấtlà 203. 162.2.4
bằngcáchdùngcácsốhi ệucổng( port-number )khácnhau.Chẳnghạnkhicógóidữ l iệu
IP vớinguồn 192. 168.0.168: 1204, đích 211. 200.51. 15:
80 đến router,r outer sẽ đổi
nguồn thành 203. 162.2.4:26314 và l ưu dữ l iệu này vào một bảng gọi l à bảng
masquerade động.Khicó mộtgóidữ l iệu từ ngoàivào vớinguồn là 221.200. 51.15:80,
đí
ch203. 162.2.
4:26314đếnr outer,r
out ersẽcăncứvàobảngmasquer adeđộnghi ệnt ại
để đổiđích từ 203.162.2.4:26314 thành 192. 168.0.164:1204.Li
ên l ạc giữa các máy
tr
ongmạngLAN vớimáykhácbênngoàihoànt oànt rongsuốtquarout er
Cấu trúccủaIpt ables
Iptabl
es được chialàm 4 bảng (table):bảng fil
terdùng để lọc góidữ li
ệu,bảng nat
dùngđểt haotácvớicácgóidữ l i
ệuđượcNATnguồnhayNATđí ch,bảngmangl edùngđể
thay đổicácthông số trong góiIP và bảng conntr
ack dùng để theo dõicáckếtnối.Mỗi
tablegồm nhiềumắcxí ch(chain)
.Chai ngồm nhi ềuluật(rul
e)đểt haotácvớicácgóidữ
l
iệu.Rul ecóthểl àACCEPT( chấpnhậngóidữ l iệu),DROP( t
hảgói ),REJ ECT(l
oạibỏgói)
hoặct ham chi
ếu( refer
ence)đếnmộtchai nkhác.
Quát rì
nh chuyển góidữ l iệu quaNet filter
Góidữ li
ệu (packet)chạy t rên chạy trên cáp,sau đó đivào car d mạng ( chẳng hạn như
eth0).Đầut i
ênpacketsẽquachai nPREROUTI NG (trướckhiđị nhtuyến).Tạiđây,packet
cóthểbịt hayđổit hôngsố( mangl e)hoặcbịđổiđị achỉI Pđí ch(DNAT) .Đốivớipacketđi
vàomáy,nósẽquachai nI NPUT.Tạichai nI NPUT,packetcót hểđượcchấpnhậnhoặcbị
hủy bỏ.Tiếp theo packetsẽ đượcchuyển l ên cho cácứng dụng ( cli
ent/server)xử lívà
ti
ếp theo l
à đượcchuyển r a chain OUTPUT.Tạichai n OUTPUT,packetcó t hể bịthay đổi
các t
hông số và bịl ọc chấp nhận r a hay bịhủy bỏ.Đốivớipacketf orwar d qua máy,
packetsau khir ờichain PREROUTI NG sẽ qua chai n FORWARD.Tạichai n FORWARD,nó
cũng bịl
ọcACCEPT hoặcDENY.Packetsau khiquachai n FORWARD hoặcchai n OUTPUT
sẽđếnchai nPOSTROUTI NG (saukhiđị nht uyến) .TạichainPOSTROUTI NG,packetcót hể
đượcđổiđị a chỉIP nguồn ( SNAT)hoặcMASQUERADE.Packetsau khir a car d mạng sẽ
đượcchuyểnl êncápđểđiđếnmáyt í
nhkháct r
ênmạng.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 16
Cáct ham sốdòngl ệnht hườnggặpcủaI ptabl es
1.Gọit r ợ giúp
Đểgọit rợgi úpvềI pt ables,bạngõl ệnh$ man iptables hoặc$ iptables --help.Chẳnghạn
nếubạncầnbi ếtvềcáct ùychọncủa match limit,bạngõl ệnh$ iptables -m limit --help.
2.Cáct ùychọn đểchỉđị nh thông số
- chỉđịnht ênt able:-t,vídụ-t filter, -t nat,.
.nếukhôngchỉđị nhtabl e,giá
trịmặcđị nhl àf i
lter
- chỉđinhl oạigi aot hức:-p,vídụ-p tcp, -p udp hoặc-p ! udp đểchỉ
địnhcácgi aot hứckhôngphảil àudp
- chỉđịnhcar dmạngvào:-i,vídụ:-i eth0, -i lo
- chỉđịnhcar dmạngr a:-o,vídụ:-o eth0, -o pp0
- chỉđịnhđị achỉI Pnguồn:-s<đị a_chỉ_ip_nguồn>,vídụ:-s 192.168.0.0/24 ( mạng
192. 168. 0với24bí tmạng) ,-s 192.168.0.1-192.168.0.3 (các IP 192.168.0.1,
192.168.0.2, 192.168.0.3).
- chỉđịnhđị achỉI Pđí ch:-d<đị a_chỉ_ip_đích>,t ươngt ựnhư-s
- chỉđịnhcổngnguồn:--spor t,vídụ:--sport 21 ( cổng21) ,--sport 22:88
(cáccổng22. .88) ,--sport :80 ( cáccổng<=80) ,--sport 22: (
cáccổng>=22)
- chỉđịnhcổngđí ch:--dpor t,t ươngt ựnhư--sport
3.Cáct ùychọn đểt haot ácvớichai n
-t ạochai nmới :ipt abl es-N
- xóahếtcácl uậtđãt ạot r
ongchai n:i ptabl
es-X
- đặtchí nhsáchchocácchai n`bui lt
-in` (INPUT, OUTPUT & FORWARD): iptables -P
,vídụ:iptables -P INPUT
ACCEPT đểchấpnhậncácpacket vào chain INPUT
-l i
ệtkêcácl uậtcót r ongchai n:i ptables-L
- xóacácl uậtcót rongchai n(flushchai n):ipt
ables-F
-r esetbộđếm packetvề0:i pt ables-Z
4.Cáct ùychọn đểt haot ácvớil uật
-t hêm luật :-A (append)
- xóal uật:-D (delete)
-t hayt hếl uật:-R (replace)
- chènt hêm l uật :-I (insert)
Mì nhsẽchovídụmi nhhọavềcáct ùychọnnàyởphầnsau.
Phânbi
ệtgi
ữaACCEPT,DROPvàREJECTpacket
- ACCEPT:chấpnhậnpacket
- DROP:t hảpacket( khônghồiâm choclient)
- REJECT:l oạibỏpacket( hồiâm chocl i
entbằngmộtpacketkhác)
Vídụ:
# iptables -A INPUT -i eth0 --dport 80 -j ACCEPT chấpnhậncácpacketvàocổng80t
rên
cardmạnget h0
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 17
# iptables -A INPUT -i eth0 -p tcp --dport 23 -j DROP t hảcácpacketđếncổng23dùng
giaot hứcTCPt rêncar dmạnget h0
# iptables -A INPUT -i eth1 -s ! 10.0.0.1-10.0.0.5 --dport 22 -j REJECT --reject-with tcp-
reset gởigóiTCPvớicờRST=1chocáckếtnốikhôngđếnt ừdãyđị achỉI P10. 0.0.1..
5
trêncổng22,car dmạnget h1
# iptables -A INPUT -p udp --dport 139 -j REJECT --reject-with icmp-port-unreachable
gởigóiI CMP`por t
-unr eachabl e`chocáckếtnốiđếncổng139,dùnggi aot hứcUDP
Phân biệtgi ữaNEW ,ESTABLISHED vàRELATED
- NEW:mởkếtnốimới
- ESTABLI SHED:đãt hiếtlậpkếtnối
- RELATED:mởmộtkếtnốimớit rongkếtnốihi ệntại
Vídụ:
# iptables -P INPUT DROP đặtchí nhsáchchochai nINPUTl àDROP
# iptables -A INPUT -p tcp --syn -m state --state NEW -j ACCEPT chỉchấpnhậncácgói
TCPmởkếtnốiđãsetcờSYN=1
# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT khôngđóngcác
kếtnốiđangđượct hi ếtlập, đồngt hờicũngchophépmởcáckếtnốimớit rongkếtnối
đượct hiếtlập
# iptables -A INPUT -p tcp -j DROP cácgóiTCPcònl ạiđềubịDROP
Tùychọn --limit, --limit-burst
--limit-burst:mứcđỉ nh,t í
nhbằngsốpacket
--limit:t ốcđộkhichạm mứcđỉ nh,t í
nhbằngsốpacket /s(
gi ây),m( phút ),d(giờ)hoặc
h(ngày)
Mì nhl ấyvídụcụt hểđểbạndễhi ểu:
# iptables -N test
# iptables -A test -m limit --limit-burst 5 --limit 2/m -j RETURN
# iptables -A test -j DROP
# iptables -A INPUT -i lo -p icmp --icmp-type echo-request -j test
Đầu t i
ên lệnh iptables -N test để t ạo mộtchai n mớit ên làt est(table mặc đị nh là
fi
lter).Tùy chọn -A test ( append)để t hêm l uậtmớivào chai nt est.Đốivớichai ntest,
mì nh gi ớihạn l imi t-bur stở mức 5 gói ,l i
mi tlà 2 gói /phút ,nếu t hỏa luậtsẽ t rở về
(RETURN)còn không sẽbịDROP.Sau đó mì nh nốit hêm chai nt estvào chai nINPUT với
tùychọncar dmạngvàol àl o,gi aot hứci cmp,l oạii
cmpl à echo-request .Luậtnàysẽgi ới
hạn cácgóiPI NG t ớil ol à2 gói /phútsau khiđãđạtt ới5 gói .
Bạn t hử ping đến localhost
xem sao?
$ ping -c 10 localhost
Chỉ5 góiđầu t rong phútđầu t i
ên đượcchấp nhận,t hỏal uậtRETURN đó.Bâygi ờđãđạt
đến mứcđỉ nh là5 gói,l ậpt ứcI pt abl essẽgi ớihạn PI NG t ớilol à2 góit rên mỗiphútbất
chấpcóbaonhi êugóiđượcPI NG t ớil ođinữa.Nếut r ongphútt ớikhôngcógóinàoPI NG
tới,Ipt ablessẽgi ảm l imitđi2góit ứcl àt ốcđộđangl à2gói /
phútsẽt ăngl ên4gói /phút.
Nếu t rong phútnữa không có góiđến,l imitsẽ giảm đi2 nữa l àt rở về lạitrạng tháicũ
chưađạtđếnmứcđỉ nh5 gói .Quát rìnhcứ t i
ếpt ụcnhư vậy.Bạnchỉcầnnhớđơngi ảnl à
khiđã đạtt ớimứcđỉ nh,t ốcđộ sẽ bịgi ớihạn bởit ham số--l imit
.Nếu t rong mộtđơn vị
thờigi an tớikhôngcógóiđến,t ốcđộsẽt ănglên đúngbằng --l i
mi tđến khit rởlạit r
ạng
tháichưađạtmức--limit-burst thì thôi.
Đểxem cácl uậtt rongI ptabl esbạn gõl ệnh $ iptabl
es-L -nv (-Lt ấtcảcácl uậttrongt ất
cảcácchai n,tablemặcđị nh là filter, -nl iệtkêởdạngsố,vđểxem chit iết)
# iptables -L -nv
Chain INPUT (policy ACCEPT 10 packets, 840 bytes)
pkts bytes target prot opt in out source destination
10 840 test icmp -- lo * 0.0.0.0/0 0.0.0.0/0 icmp type 8
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 18
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 15 packets, 1260 bytes)
pkts bytes target prot opt in out source destination
Chain test (1 references)
pkts bytes target prot opt in out source destination
5 420 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 2/min burst 5
5 420 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
# iptables -Z reset counter
# iptables -F fl
ushl uật
# iptables -X xóachai nđãt ạo
Redi rectcổng
Iptableshổt rợt ùychọn-j REDIRECT chophépbạnđổihướngcổngmộtcáchdễdàng.Ví
dụ như SQUI D đang l i
sten t r
ên cổng 3128/ tcp.Để redirectcổng 80 đến cổng 3128 này
bạnl àm nhưsau:
# iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128
Lưuý:t ùychọn-j REDIRECT cho có trong chain PREROUTING
SNAT & MASQUERADE
Để tạo kếtnối`t r
ansparent
` giữa mạng LAN 192. 168. 0.1 vớiInternetbạn l ập cấu hình
chot ườngl ửaI ptablesnhưsau:
# echo 1 > /proc/sys/net/ipv4/ip_forward chophépf orwardcácpacketquamáychủ đặt
Iptables
# iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 210.40.2.71 đổiI Pnguồn
chocácpacketr acar dmạnget h0 là210. 40. 2.
71.Khinhậnđượcpacketvàot ừI nt
ernet,
Iptablessẽt ự động đổiI Pđích 210.40.2.
71 t hành I
Pđí ch tương ứng củamáyt ính tr
ong
mạngLAN 192. 168. 0/24.
Hoặcbạncót hểdùngMASQUERADEt haychoSNATnhưsau:
# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
(MASQUERADEt hườngđượcdùngkhikếtnốiđếnI nternetlàpp0vàdùngđị achỉI P
động)
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 19
DNAT
GiảsửbạnđặtcácmáychủPr oxy,Mai lvàDNS t rongmạngDMZ.Đểt ạokếtnốitrong
suốtt ừI nternetvàocácmáychủnàybạnl ànhưsau:
# echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination
192.168.1.2
# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 25 -j DNAT --to-destination
192.168.1.3
# iptables -t nat -A PREROUTING -i eth0 -p udp --dport 53 -j DNAT --to-destination
192.168.1.4
Lập cấu hì
nh Ipt
abl
escho máychủ phụcvụ W eb
Phầnnàymì nhs ẽt r
ìnhbàyquav ídục ụt hểvàc hỉhướngdẫnc ácbạnl ọcpac ketvào. Các packet
`for war d`và' output'bạnt ựl àm nha.Gi ảs ửnhưmáyc hủphụcv ụWebk ếtnốimạngt rựctiếpvào
Int ernetquac ardmạnget h0,đị ac hỉIPlà1. 2.3.
4.Bạnc ầnl ậpcấuhì nht ườnglửac hoIptablesđáp
ứngc ácy êuc ầus au:
-c ổngTCP80( chạyapac he)mởc homọingườit ruycậpweb
-c ổng21( chạypr oftpd)c hỉmởc howebmas ter(dùngđểupl oadfil
elênpubl i
c_ht
ml )
-c ổng22( chạyopens sh)c hỉmởc hoadmi n( c ungcấps hell`root`choadmi nđểnângc ấp&pat chlỗi
chos er verkhic ần)
-c ổngUDP53( chạyt i
ny dns )đểphụcv ụtênmi ền(đâyc hỉl àvídụ)
-c hỉchấpnhậnI CMPPI NGt ớivớicode=0x 08,c ácloạipack etcònlạiđềubịt ừchối.
Bước1:t hi
ếtl ậpcáct ham sốchonhân
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
echo 10 > /proc/sys/net/ipv4/tcp_fin_timeout
echo 1800 > /proc/sys/net/ipv4/tcp_keepalive_time
echo 0 > /proc/sys/net/ipv4/tcp_window_scaling
echo 0 > /proc/sys/net/ipv4/tcp_sack
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo 0 > /proc/sys/net/ipv4/conf/eth0/accept_source_route
tcp_syncooki es=1bậtchứcnăngchốngDoS SYN quasyncooki ecủaLi nux
tcp_f in_timeout =10đặtt hờigiant imeoutchoquát r ì
nhđóngkếtnốiTCPl à10gi ây
tcp_keepal ive_t ime=1800đặtt hờigi angi ữkếtnốiTCPl à1800gi ây
...
Cáct ham sốkhácbạncót hểxem chit iếtt r
ongt àil iệuđikèm củanhânLi nux.
Bước2: nạpcácmôđuncầnt hiếtchoI pt abl
es
ĐểsửdụngI ptables,bạncầnphảinạpt rướccácmôđuncầnt hiết
.Vídụnếubạnmuốn
dùngchứcnăngLOG t r ongI ptabl es,bạnphảinạpmôđuni pt_LOG vàot rướcbằngl ệnh#
modprobe ipt_LOG.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
trên hệ điều hành Linux
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 1
Gi
ớit
hiệu
Ngày nay,t rên mạng I nternetkỳ di ệu,ngườit a đang t hực hiện
hàngt ỷđôl agiaodị ch mỗingày(t r
ên dưới2 ngàn t ỷUSD mỗinăm) .
Mộtkhốil ượnghànghoávàt i
ềnbạckhổngl ồđangđượct ỷt ỷcácđi ện
tửt íhon chuyển đivànót hựcsự l àmi ếng mồibéobởchonhững t ay
ăn t rộm hay khủng bố có có “t rithức” . Sự phátt ri
ển nhanh chóng
củamạngmáyt ínhl àđi ềut ấtyếu.Hàngngàycókhôngbi ếtbaonhi êu
ngườit ham gi a vào hệ t hống t hông tint oàn cầu mà chúng t a gọilà
Internet .Những công t ylớn,các doanh nghi ệp,các t rường đạihọc
cùng như cáct rường phổ t hông ngày càng t ăng và hơn cả thế có rất
rấtnhi ều ngườiđang nốimạng t rựctuyến suốt24/ 24 giờ mỗingày,
bảyngàyt rongt uần.Tr ongbốicảnhmộtl i
ênmạngt oàncầuvớihàng
chụct r
iệungườisử dụngnhư I nternett hìvấnđềant oànt hôngt intrở
nên phứct ạp vàcấp t hiếthơn.Dođómộtcâu hỏikhông mấydễchị u
đặtr al à:liệumạngmáyt í
nhcủachúngt asẽphảibịt ấncôngbấtcứ
lúc nào?
Sự bảovệcủabấtkỳmạngmáyt ínhnàođầut i
êncũngl àfi
rewall
và phần mền nguồn mở như Li nux.Và câu chuyện về an t oàn mạng
không cóhồikếtt húc.Vi ệcgi ữ an toàn mộthệt hống kéot heochúng
taphảicónhưngki ếnt hứct ốtvềhệđi ềuhành,mạngTCP/ I
Pcơsởvà
quản t rịdịch vụ.Cùng vớisự gợiý của gi á vi
ên hướng dẫn và t ầm
quan t rọng của việcan t oàn thông t i
nl iên mạng,ở đây chúng t ôichỉ
trì
nhbàymộtcácht ổngquannhữngvùngnơiLi nuxcót hểvàcầnphải
đượcgi ữ an toàn,những t hêm vào đó l àcácl ệnh cơ bản,những ki nh
ngiệm t rongnguyênt ắcant oànvàbảovệhệt hốngmạng.
Nhóm si nhvi ênt hựchi ện:
- NguyễnHuyChương
- LêThịHuyềnTr ang
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 2
I. An t
oàn chocácgi
aodị
ch t
rên mạng
Có rấtnhi ều dịch vụ mạng t ruyền t hống gi ao t
iếp thông qua gi ao thứcvăn bản
không mã hoá,như TELNET,FTP,RLOGI N,HTTP,POP3.Tr ong các gi ao dịch giữa
ngườidùng vớimáy chủ,t ấtcả cáct hông t i
n dạng góiđượct r
uyền qua mạng dưới
hìnht hứcvănbảnkhôngđượcmãhoá.Cácgóit i
nnàycót hểdễdàngbịchặnvàsao
chépởmộtđi ểm nàođót r
ênđườngđi .Việcgi ảimãcácgóit innàyr ấtdễdàng,cho
phép l ấy đượccáct hông ti
n như t ên ngườidùng,mậtkhẩu và cáct hông t i
n quan
trọng khác.Vi ệcsử dụng cácgi ao dịch mạng đượcmã hoá khi ến cho vi ệcgiảimã
thông t i
nt rởnên khóhơn vàgi úp bạn gi ữ an toàn cácthông t i
n quan t rọng.Cáckỹ
thuậtt hôngdụnghi ệnnayl àIPSec,SSL,TLS,SASLvàPKI .
Quản t r
ịt ừ xa l
à mộtt ính năng hấp dẫn của cáchệ t hống UNI X.Ngườiquản t r
ị
mạngcót hểdễdàngt ruynhậpvàohệt hốngt ừ bấtkỳnơinàot r ênmạngt hôngqua
cácgi ao thứct hông dụng như telnet ,r l
ogin.Mộtsố công cụ quản t rịtừ xa đượcsử
dụng r ộng rãinhư l i
nuxconf ,webmi n cũng dùng gi ao thứckhông mãhoá.Vi ệct hay
thết ấtcảcácdị chvụmạngdùnggi aot hứckhôngmãhoábằnggi aot hứccómãhoá
làrấtkhó.Tuynhi ên,bạn nên cung cấp vi ệctruycập cácdị ch vụ t ruyền thống như
HTTP/ POP3t hôngquaSSL,cũngnhưt hayt hếcácdị chvụt el
net,r l
ogi nbằngSSH.
Nguyên t
ắcbảovệhệt
hống mạng
1. Hoạchđị nhhệt hốngbảovệmạng
Trong môit rường mạng,phảicó sự đảm bảo r ằng những dữ l i
ệu có t
ính bí
mậtphảiđượccấtgi ữr i
êng,saochochỉcóngườicót hẫm quyềnmớiđượcphépt ruy
cậpchúng.Bảomậtt hôngt i
nlàviệclàm quant r
ọng,vàvi ệcbảovệhoạtđộngmạng
cũngcót ầm quant rongkhôngkém.
Mạng máy t ính cần đượcbảo vệ an t oàn,t ránh khỏinhững hi ểm hoạ do vô
tì
nh hay cố ý.Tuy nhi ên mộtnhà quản t rịmạng cần phảibi ếtbấtcứ cáigìcũng có
mức độ,không nên t háiquá.Mạng không nhaat st hiếtphảiđược bảo vệ quá cẩn
mật ,đếnmứcngườidùngl uôngặpkhókhănkhit ruynhậpmạngđểt hựchiệnnhi ệm
vụ của mình.Không nên để họ t hấtvọng khicố gắng t ruy cập cá tập ti
n của chính
mình.Bốnhi ểm hoạchí nhđốivớisựanni nhcủamạngl à:
o Tr uynhậpmạngbấthợppháp
o Sựcant hiệpbằngphươngt i
ệnđi ệnt ử
o Kẻt rộm
o Taihoạvôt ì
nhhoặccóchủý
x Mức độ bảo mật: Tuỳ thuộc vào dạng môit rường trong đó
mạngđanghoạtđộng
x Chí nh sách bảo mật: Hệ t hống mạng đòihỏimộtt ập hợp
nguyên tắc,điều luậtvà chí nh sách nhằm loạitrừ mọir ủir o.Gi úp hướng dẫn vược
qua các thay đổivà những t ì
nh huống không dự ki ến trong quá t rì
nh phátt riển
mạng.
Sựđềphòng:đềphòngnhữngt ruycậpbấthợppháp
Sự chứng t hực:t r
ước khit r
uy nhập mạng,bạn gõ đúng t ên đăng nhập và
passwordhợpl ệ.
x Đàot ạo:Ngườidùngmạngđượcđàot ạochu đáosẽcóí tkhả
năngvôýpháhuỷmộtt àinguyên
x Ant oànchot hiếtbị:Tuỳt huộcở:quymôcôngt y,độbímật
dữ li
ệu,cáct àinguyênkhảdụng.Tr ongmôit r
ườngmạngnganghàng,cót hểkhông
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 3
có chí
nh sách bảo vệ phàn cứng có t
ổ chứcnào.Ngườidùng chị
utr
ách nhi
ệm đảm
bảoant oànchomáyt ínhvàdữl i
ệucủar i
êngmình.
2. Môhì nhbảomật
Haimôhì nhbảomậtkhácnhauđãphátt riển,gi
úpbảovệant oàndữ l i
ệuvà
tàinguyênphầncứng:
x Bảo vệt àinguyên dùng chung bằng mậtmã:gắn mậtmã cho
từngtàinguyêndùngchung
x Truycập khiđượcsự chophép :l àchỉđị
nh mộtsốquyền nhất
định t
rên cơ sở ngườidùng,ki ểm tratr
uy nhập tàinguyên dùng chung căn cứ vào
CSDL user-access trên máy server
3. Nângcaomứcđộbảomật
x Kiểm toán:Theodõihoạtđộngt r
ênmạnht hôngquat àikhoản
ngườidùng,ghil ạinhiều dạng bi ến cố chọn lọcvào sổ nhậtký bảo mậtcủa máy
server.Giúp nhận bi
ếtcáchoạtđộng bấthợp l ệhoặckhông chủ đị nh.Cung cấp các
thôngt invềcáchdùngt rongt ì
nhhuốngcóphòngbannàođót hunphísử dụngmột
sốt àinguyên nhấtđịnh,vàcần quyếtđị nh phícủanhững t àinguyên nàyt heocách
thứcnàođó.
x Máyt ính không đĩ a:Không có ổ đĩa cứng và ổ mềm.Có t hểthi
hànhmọivi ệnhư máyt í
nht hôngt hường,ngoạit rừ việcl ưut rữ dữliệut r
ênđĩ acứng
hayđĩ amềm cụcbộ.Không cần đĩ akhởiđộng.Cókhả năng gi aot iếp vớiser vervà
đăng nhập nhờ vào mộtcon chi p ROM khởiđộng đặcbi ệtđượccàit r
ên card mạng.
Khibậtmáy t í
nh không đĩa,chi p ROM khởiđộng phátt ín hiệu cho serverbi ếtrằng
nó muốn khởiđộng.Ser vert rảl ờibằng cácn t ảiphần mềm khởiđộng vào RAM của
máyt í
nh không đĩavàt ự đọng hi ển thịmàn hì nh đăngnhập .Khiđómáyt ính được
kếtnốivớimạng.
x Mãhoádữ l iệu: Ngườit amãhoát hôngt insangdạngmậtmã
bằng mộtphương pháp nào đó sao cho đảm bảo t hông t i
n đó không t hể nhận bi ết
đượcnếu nơinhận không bi ếtcách gi ảimã.Mộtngườisử dụng haymộthostcót hể
sửdụngt hôngtinmàkhôngsợảnhhưởngđếnngườisửdụnghaymộthostkhác.
x Chốngvi rus:
- Ngănkhôngchovi r
ushoạtđộng
- Sữachữahưhạiởmộtmứcđộnàođó
- Chặnđứngvi russaukhinóbộcphát
Ngăn chặn tì
nh trạng t ruy cập bấthợp pháp l à mộtt rong những gi ảipháp
hiệu nhiệm nhấtđểt ránh vi
r us.Dobi ện phápchủ yếu l àphòngngừa,nên nhàquản
trịmạngphảibảođảm saochomọiyếut ốcầnt hi
ếtđềuđãsẵnsàng:
- Mậtmãđểgi ảm khảnăngt ruycậpbấthợppháp
- Chỉđị nhcácđặcquyềnt híchhợpchomọingườidùng
- Cácpr ofile để tổ chứcmôit rường mạng cho ngườidùng có
thểl ậpcấu hì nh vàduyt rìmôit rường đăngnhập,baogồm
các kếtnốimạng và những khoản mục chương t rình khi
ngườidùngđăngnhập.
- Mộtchí nhsáchquyếtđị nhcót hểt ảiphầnmềm nào.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 4
Ki
ến t
rúcbảo mậtcủahệt
hống mạng
1) Cácmứcant
oànt
hôngt
int
rênmạng
Không có đi ều gìgọil à hoàn hảo t r
ong việc an t
oàn hệ thống mạng như
Linux.Nóđượct hi
ếtkếđểl àmộthệđi ều hành nốimạng vàsự phátt riển mạnh mẽ
củanóchỉđểt ậpt rungvàosự ant oàn.Hệđi ềuhànhmãnguồnmởl àcáigìmàcho
phép ngườiquản t rịmạng và những ngườiphátt ri
ển,những ngườidùng tr i
ền miên
theo dõivà ki ểm t oán những gìdễ bịt ấn công.Ở đấy không có gìhuyền bìvề an
toàn thông tin.Thậtl àtốtnếu như cáct àinguyên đượcbảomậtvàđượcbảovệt ốt
trướcbấtkỳsựxâm phạm vôt ìnhhaycốý.
Ant oànhaybảomậtkhôngphảil àmộtsảnphẩm,nócũngkhôngphảil àmột
phầnmền.Nól àmộtcáchnghĩ .Sự ant oàncót hểđượckhởiđộngvàdừngnhư một
dịch vụ.Bảo mậtl à cách an t oàn.Tàiliệu bảo mậtl àtưliệu mà những thành viên
củat ổchứcmuốnbảovệ.Tr áchnhi ệm củavi ệcbảomậtl àngườiquảnt r
ịmạng.
Sự ant oànmạngcóvait r
òquant rọngtốicao.Ant oànphảiđượcđảm bảot ừ
những nhân t ố bên ngoàiker nel,tạiphần cốtl õicủa Li
nux ser
ver.Cơ chế bảo mật
cần phảibaogồm cấu hì nh mạngcủaSer ver,chu viứng dụng củatổchứcmạng và
thậm chícủa những cl i
entt ruy nhập mạng t ừ xa.Có vàicách mà ta cần phảixem
xét:
o Sựant oànvậtl ý
o Ant oànhệt hống
o Ant oànmạng
o Ant oàncácứngdụng
o Sựt ruynhậpt ừxavàvi ệcchầpnhận
1. Sựant oànvậtlý
Điều nàyl àcơbản vàgi ám sátđượct ốtkhí
acạnh an toàn củahệđiều hành
Linux.Sự an toàn vậtl ý bắtđầu vớimôit r
ường xung quanh vídụ như đốivớicác
nhà cung cầp dịch vụ hãm hại?Có nên khoá cáckhốidữ li
ệu lại
?Những ngườinào
đượcchấp nhận đượcvàot rung t
âm dữ li
ệu.Việcbảovệt hích hợplàphảithựchiện
lạikhimuốnxâydựngmộtcàiđặtmớihaydichuyểndữl i
ệuđếnmộtvịt rímới.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 5
2. Ant oànhệt hống
Sự an t oàn hệt hống baoquanh vi ệcchọn phân phốihệđi ều hành Linux,xây
dưngker nel,tớisự ant oànt àikhoảnngườidùng,chophépt r
uycậpt hư mụct ậpt i
n,
mãhoásysl og vàf il
esyst em.Cáct ácvụ nàyđượchoàn t hành trướckhidị ch vụ nối
vào I nternet .Vi ệc chọn mộtphân phốinào t hìt uỳ thuộc vào những nhu cầunhư
chính sách đượcpháct hảo t r
ong cơ chế an t oàn.Có mộtt iêu chuẩn để chọn một
phân phốinhưngnókhôngt huộcphạm vicủabàinày. Việcxâydựngmộtker nelsẵn
cócóhail ợit hế:
o Nhữngopt i
onant oàncủanhânđượcxácđị nhbởingườiquảnt rịmạng
và ngườiquản t rịmạng bi ếtcáigìđượcxácđị nh vào t r
ong ker nelvà t ừ đây có t hể
đồng t hờinhận r a nếu đi ều đó nếu có.Phần nềm nguồn mở nóichung và hệ đi ều
hànhLi nuxnóir iêng,đặcbi ệtcónhữngcảit iếnđểdễdàngchongườisử dụngvàcó
nhữngt iệní chdễứngdụng.Chỉcầnupdat etrongRedHat .
o Sựant oàncáct àikhoảngngườidùngcóvait ròt olớn.Cónhữngvùng
đượcvôhi ệuhoá,nhữngt àikhoảngkhônghoạtđộng,vôhi ệuhoávi ệct r
uycậpđến
NFS lên gốc,hạn chếnhữngđăngnhậpvàot rongmôit rườngđi ều kiển hệt hống. Mã
hoá file hệ t hông sử dụng kỹ t huậtmã hoá mà t hường l à phòng thủ cuốicùng cho
mạng.
Có haicách t iếp cận chung:Hệ t hống f il
e mã hoá ( CFS) và Practical Privacy
DiskDr iver(PPDD) .Hệ t hống có t hểđượct heo dõivà t rong Li nux,hệ thống l oggi ng
đượcl ogged t rong tiện ích syslog.Công cụ t heo dõibao gồm swat ch và logcheck.
Swat ch có công cụ t hông báo t hờigian t
hực,t rong khil ogcheckcung cấp mộtcông
cụ mà phátsi nh những báo cáo đị nh kỳ.Kiểm t oán Passwor d cũng có vait rò sống
còn trong vi ệcan t oàn,bảomậthệt hống trong khimốil i
ên kếtyếu nhấtt rong vi ệc
ant oànmạngl àngườisửdụngvàvi ệclựachọncácmậtkhẩupasswor d.
3. An toàn mạng
Ở đây l i
ên quan đến vi ệ kếtnốit ừ Linux ser vervào mạng.Cấu hì nh dị ch vụ
mạngvớisự ant oàn ngàycàngkhókhăn chonhữngnhàquảnt r
ịmạng. The xinetd
daemon cầnphảiđượcđị nhhì nht ổchứcbảomật .Lệnhnetstat Làmộtt iệní chmạnh
cho phép ngườiquản t r
ịkiểm t ratình trạng cấu hì nh mạng.Ki ểm tra mạng l à điều
cần thiếtcủavi ệcan t oàn.Đi ều nàyđảm bảor ằng cơchếan t oàn đãđượct hựchi ện
có hiêu quả t rong việc hoàn t hành những yêu cầu bảo mật .Đi ều đó đạtđượcbởi
quyền t hựchi ện đến mạng của bạn.Cách t iếp cận vi ệc ki
ểm đị nh mạng hi ệu quả
nhấtsẽt rongvait ròcủangườil àm phi ền.Cónhữngcôngcụki ểm địnhcơsởvàhost
cơsở.
SATAN(Security Administrator's Tool for Analysing Networks), SAINT( Security
Administrator's Integrated Network Tool), SARA (Security Auditor's Research
Assistant)là những công cụ t ốtđể ki ểm đị nh cơ bản.SATAN được đầu t i
ên công
nhậnnăm 1995,nóđượccôngnhậnđôngđảobởimãnguồnmở.
SAI NT mạnh hơn SANAN,t rong khiSARA l à mộtmodulackage,t ương t ácvới
Nmap và Samba.Những cảit i
ến gần đây nhấtl à công cụ Nessus.Nessusl à mi ễn
phí,nguồn mở, đầy đủ nổibật ,công cụ ki ểm t oàn vẫn đượchỗ t rợ cảitiến cảitiến
tí
ch cực. Nessusđivào2 t hành phần :- Cl i
ent (
nessus)vàser ver(nesssus) .Công cụ
Nmap cho ngườiquản t r
ịgi àu kinh nghi ệm.MặtkhácNmap có sứcmạnh,công cụ
quétchongườicóki nhnghi ệm.Nóđượcsửdụngt ốttrongmạngLAN.
TARA( TigerAudi torsResear ch Assistant)làmộtvídụ chocông cụ ki ểm t oán cơ
sởhost .Theodõimạng dướimộtsự t ấn công.Công cụ đểt heodõiđól àPor tSentry
và Ether eal
.Por tSent ry quétt rong chế độ ngầm đị nh.Bảo mậtmạng như mộtt rò
chơigi ữamèovàchuột ,củat r
ítuệvàmáyđếm t rítuệ.Trongkhimạngki ểm t oánlà
mộtphầncủamạngbì nht hường,mạngt heodõicầnphảiđượcưut i
êncaohơn.Vi ệc
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 6
bảomậtbaogồm vi ệcki
ểm t oánchínhxácvàcảvi ệccónênđểnhư thếhaykhông.
Port
Sentr
yl à mộtvídụ của công cụ t
heo dõit
hờigian t
hựcđượct
hiếtkế để quét
pháthi
ệnr ahệthống,vàcókhảchobạnnhữnghồiđáp.
4. Cácứngdụngant oàn
Mộtvàideamonschuẩnt rongviệcphânphốiLi nuxhi ệnthờil
ànhữngứngdụng
đầy đủ mà nó có cấu tr
úcf il
e phứctạp.Web,f il
e,mai lserversử dụng những giao
thứcphứct ạp.An toàn cót hểđượct hựchiện bởicácđặct í
nh bảomậtcủavi ệccác
đạilýchophép( MTA‟s)nhưSendmai l
,Qmai lvàPostfix.
WebSer vercót hểcũngđượcgi ữ antoànbởicácmodulchophép:mod_aut h,
mod_aut h_dbm,mod_aut h_db,….Vi
ệcchophép Open SS hỗt r
ợchoApachesẽcũng
công tácvớiweb server.Samba có t hểlàm an toàn bởiviệcđọccáct hông số đang
chạy.Bướcđầu t i
ên sẽ đượcbảo vệbởicông cụ quản t r
ịweb Samba ( SAT)vớiSLL
nêncácl ệnhquảnl ýSambađượcbảovệ.
5. Chu vi an toàn
Cấpsốt ự nhi êncủacácht iếpcậnđượcsắpt ừngl ớpđếnsự ant oànmáyt ính
rakhỏil ớpt ừlớpmạngđếnl ớpứngdụng,vàt ừđóđềnl ớpchuvi .Đâyl àvùngđược
quan tâm.Fi r
ewal lsl àthành phần chí nh của mi ền chu vian t oàn,l à phần mền mà
chứcnăngbắtbuộct ổchứcbảomậtant oànbởibộl ọc,bảomật ,đẩymạnh,hayyêu
cầu nằm t rong Linux ser verđể kếtnốiđến cả mạng chí nh và I nter net.Fir ewar e có
thểđượct hựchi ệnnhi ềucáchdựat rêncácl ớpcủamôhì nhOSI :l ớpmạng,l ớpgi ao
vận vàứng dụng.Cóđi ểm t ích cựcvàt i
êu cựct rong vi ệct r
iển khaif i
rewar et ạicác
lớp của mạng. Fir
ewal lmạng được bi ếtnhư các packet-f il
tering gat eway,nơimà
chúngki ểm t ranhữggóit inI Pvàogi aodi ệnf irewar evàhoạtđộngphùhợpđượcgi ữ
lại.hoạtđộng bao gồm dr op,cho phép/hoặc l og.Sự bấtl ợil à ki ểu Firewal lnày
khôngkhôn khéo.Fi rwallgiaovận l àm vi ệcbởikhảosátTCPhoặcUDP.Fi rewal lyêu
cầu sự can thiệp ngườidùng sửađổinhững t hủ t ục.Fi rewal lứng dụng l àm chocác
quyếtđị nh truynhập ở t ầng ứng dụng. Nó cho phép ngườiquản t rịmayf i
rewal lcho
yêucầucủamỗil oạiứngdụng.Cacibấtt iệnt rongf irewalll àngườiquảnt rịcầnđị nh
hình tr
iển khait heodõi ,vàbảot rìquát r
ình f irewal lchomỗiứng dụng màcần t ruy
nhậpđi ềukhi ển.
Nól uônl àt ôtđẻt hựchi ệnbảomậtbởivi ệcsử dụngkếthợpmột f i
r ewal lt ại
tấtcả ba t ầng để t r
ánh sự t ổn thương.Fi rewal lkhông chỉcản t rở những ngườil àm
phiền khônghợpphápvàomạngnhưngphảichophépngườisử dụngt ruynhậpbên
ngoàivàonguồnt àinguyên,t rongkhiđóchấpnhậnphêchuẩnnhấtđị nhnhữngkết
nốisau cho ngườidùng.Đây l à nhận t hức dễ nhưng đó l à mộtt hách t hức khi thi
hành.
o Fi rewal lmạng
Có vàil ợit hế trong vi ệc sử dụng Li nux như nền t ảng f ir
ewar e.Sự quản l ý
đồng bộ,phần cứng,số ngườidùng,ki ểm t ranền t ảng,vi ệct hựchi ện,gi ági ữacác
lýdo tạisao.Sự l ocgóil àl ợiích hiệu quả và cách bảo vẩpt ong phậm vi tránh xâm
nhập.Ngườisử dụng không cần xácnhận để sử dụng t i
n cậy những dị ch vụ vùng
bên ngoài.
Những gi ảipháp cho vi ệcl ọcgóit rong Li nux bao gồm i pchai nsvà i pf wadm.
tiệníchcủavi ệcl ọcgóit i
nđượcsửdụngt r ongnhânt ừphi ênbản1. 2.1vềt rước.
Phiênbảncuốicùngcủai pfwadm vàot háng7/ 1996,sauđói pchai nst hayt hế
nó.Những đị a chỉI pchainsl ànhững gi ớihạn t hiếu sótcủai pfwadrnhư đếm 32 bi t,
không có khả năng gi ảiquyếtcấu t hành đị a chỉI P, .
.v.v.I pchai nschi ến t hắng các
giớihạn đó bởivi ệct ận dụng l ợiích của ba kênh r iêng biệthay những quy t ắcnối
tiếpđểl ọc.Bakênhđól à:I NPUT,OUTPUT,vàFORWARD.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 7
Tiệní chIpchainst heocúpháp:
ipchains command chain rule-specification [options] -j action
Tạiđây có thể mộtt rong số kênh INPUT,OUTPUT hoặcFORWARD.Như nhân
2.4 về trước,t í
nh hoạtđộng mộtl ần của Ipchains được thay t
hế bởiNet fi
ltervà
khoảng quyt ắcIptables.Net f
il
terđượchỗ t r
ợ bởicông nghệ Wat chguard.Ipctables
đượcphátt ri
ển từtiện ích củaI pchainsvànóchỉchạyt rên những phiên bản 2.3 về
trước.
Mộtvídụvềl ệnhI ptables:
iptables -A INPUT -p tcp –-dport smtp -j ACCEPT.
Hiện nay có những t hiếtkế fi
rewallbắtđượchầu hếtcáccấu t r
úcmạng phổ
biến,báohi ệuđơngi ảnt heoyêucầukếtnốit ớinhữngnơir ấtphứct ạpkéot heokhu
vựcđượcphiquânsựhoá( DMZ) .
II. BảomậtLi
nuxServer
Những ki nh nghiệm bảo mật
Hiện nay Li
nux đang dần trởt hành mộthệ đi ều hành khá phổ biến bởit í
nh
kinh tế,khảnăng bảo mậtvà sự uyển chuyển cao.Thếnhưng,mọihệt hống dù an
toàn đến đâu cũng dễdàng bịxâm nhập nếu ngườidùng( vànhấtl àngườiquản t rị-
root)không đặtsự bảo mậtl ên hàng đầu.Sâu đây l à mộtsó kinh nghiệm về bảo
mậtt rênhệđi ềuhànhRedHatLi nuxmàchúngt ôimuốnchi asẽcùngcácbạn:
1. Không cho phép sử dụng t àikhoảng r oottừ console:Sau khicàiđặt ,
tàikhoảng r ootsẽ không có quyền kếtnốit elnetvào dịch vụ t
elnettrên hệ thống,
trong khi đó t ài khoản bình thường l ại có t hể kết nối, do nội dung t ập t i
n
/etc/
secur i
ty chỉquyđị nh những consol eđượcphép t ruycập bởir ootvà chỉliệtkê
những consol etruyxuấtkhingồit r
ựct iếp tạimáychủ.Đểt ăng cường bảomậthơn
nữa,hãy soạn t hảo tập t
in / et
c/security và bỏ đinhững consol e bạn không muốn
roottruycập.
2. Xoábớttàikhoảngvànhóm đặcbi ệt:Ngườiquản tr
ịnên xoábỏt ấtcả
cáctàikhoảng và nhóm đượctạo sẵn t
rong hệ t
hống nhưng không có nhu cầu sử
dụng.(vídụ:lp,syne,shutdown,halt
,news,uucp,oper ator
,game,gophẻ…) .Thực
hiệnviệcxoábỏtàikhoảngbằngl ệnhusedelvàxoábỏnhóm vớil ệnhgroupdel
3. Tắtcácdị ch vụ khôngsử dụng:Mộtđi ều khánguyhi ểm làsau khicài
đặt,hệt hống tự động chạykhá nhi ều dịch vụ,tr
ong đó đa số l
à cácdịch vụ không
mong muốn,dẫn đến t iêu tốn tàinguyên và sinh r
a nhiều nguy cơ về bảo mật.Vì
vậy ngườiquản t rịnên tắtcácdị ch vụ không dùng tới
(ntsysv)hoặcxoá bỏ cácgói
dịchvụkhôngsửdụngbằngl ệnhr pm
4. Không cho “ SU”( Substit
ute)lên r oot:Lệnh su cho phép ngườidùng
chuyểnsangt àikhoảngkhác.Nếukhôngmuốnngườidùng“ su”thànhr ootthìthêm
hai dòng sau vàot ậpt in/ etc/
pam. d/
su:
Auth sufficient/lib/security/pam_root ok so debug
Auth required/lib/security/pam_wheel.so group= tên_nhóm_root
5. Chedấut ậptinmậtkhẩu:Gi aiđoạnđầu,mậtkhẩut oànbột àikhoảng
đượcl
ưu trongtậptin /
etc/password,tậpt
inmàmọingườidùngđềucóquyền đọc.
Đâylàkẻhởl ớntrongbảomậtdùmậtkhẩuđượcmãhoánhưngvi ệcgiảimãkhông
phảil
à không t
hể thựchiện được.Do đó,hiện nay cácnhà phátt
riển Li
nux đã đặt
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 8
ri
êng mậtkhẩu mã hoá vào t
ập t
in /ect/
shadow chỉcó r
ootmớiđọcđược,nhưng
yêucầuphảichọnEnabletheshadow passwordkhicàiRedHat.
6. Luôn nângcấpchonhân (ker
nel)Linux: Li
nuxkhônghẵn đượct hiếtkế
vớití
nh năng bảo mậtchặtchẽ,khá nhi
ều lỗ hỏng có thể bịl
ợidụng bởiti
nt ặc.Vì
vậyviệcsử dụngmộthệđi ềuhànhvớinhânđượcnângcấpl àrấtquant r
ọngvìmột
khinhân,phầncốtl õinhấtcủahệđi
ềuhànhđượct hi ếtkếtốtthìnguycơbịpháhoại
sẽgiảm đirấtnhiều.
7. Tự động thoátkhỏiShell:Ngườiquản trịhệ t
hống và kể cả ngườisử
dụng bình thường r
ấthayquên thoátradấu nhắcshel lkhikếtthúccông việc.Thât
nguy hiểm nếu có mộtkẻ nào sẽ có t
oàn quyền t
ruy suấthệ thống mà chăng tốn
chútcôngsứcnàocả.Dovậyngườiquảnt r
ịnêncàiđặttínhnăngt ựđộngt hoátkhỏi
shellkhikhôngcósự t r
uyxuấtt r
ongkhoảngt hờigianđịnhtrướcbằngcáchsử dụng
biếnmôit rường vàgánmộtgi átrịquyđịnhSốgiâyhệt hốngduytr ìdấunhắc,
bạnnênvàot âpt
in / ect
/profi
leđểluônt ácdụngtrongmọiphi ênlàm việc.
8. Khôngchophépt ruynhậpt ậpti
nkị chbảnkhởiđộngcủaLi nux:Khihệ
điều hành Linux khởiđộng,các t ập tin kị
ch bản ( scr
ipt) được đặt t
ạit hư mục
/etc/r
c.d/i
nit.
dsẽđượcgọit hựct hi.Vìt hế,đểt r
ánhnhữngsự t òmòkhôngcầnt hi
ết
từ phíangườidùng,vớit ư cách ngườiquản t rị,bạn nên hạn chếquyền tr uyxuấttới
cáctậpt i
nnàyvàchỉchophépt àikhoảngr ootxửl ýbằngl ệnhsau:
#chmod –R 700/etc/rc.d/init.d*
9. Giớihạn việct ự ý ghinhận t hông ti
nt ừ shell
:Theo mặcđị nh,t ấtcả
l
ệnh được t hực thitạidấu nhắc shel lcủa tàikhoảng đều được ghivào t ập t i
n
.bash_histor y(nếu sd bashshell)trong thư mụccá nhân của t ừng tàikhoảng.Đi ều
nàygâynênvôsốnguyhi ểm ti
ềm ẩn,đặcbi ệtđốivớinhữngứngdụngđòihỏingười
dùng phảigõ t hông tin mậtkhẩu.Do đó ngườiquản t rịnên gi
ớihạn việct ự ý ghi
nhậnt hôngt intừshelldựavàohaibi ếnmôit rườngHI STFILESIZEvàHI STSI ZE:
- Biến môit rường HI STFILESI ZE quy định số l
ệnh gõ tạidấu nhắc shellsẽ
đượcl ưul ạichol ầntruycậpsau.
- Bi ến môit rường HISTSI ZE quy định số l
ệnh sẽ đượcghinhớ t r
ong phi ên
l
àm vi ệchi ệnhành.
Vìvậy,t asẽphảigi ảm giát r
ịcủaHI STSIZEvàchogi átrịHISTFILESIZEbằng
0 đểgi ảm t hiểu t
ốiđanhữngnguyhi ểm.Bạn t hựchi ện vi
ệcnàybằngcách t hayđổi
giátrịhaibi ếnnêut r
ênt rongtậpt in/ et
c/profi
lenhưsau:
HISTFILESIZE = 0
HISTSIZE = xx
Trongđóxxl àsốl ệnhmàshel lsẽghinhớ,đồngt hờikhôngghilạibấtkỳmột
l
ệnhnàodongườidùngđãgõkhingườidùngt hoátkhỏishel l
.
10. Tắccáct i
ến trì
nh SUI D/SGID :Bình thường,cáct iến t
rình đượct hực
hiện dướiquyền củat àikhoản gọit hựct hiứngdụngđó.Đól àdướiwi ndows,nhưng
Unix/ Li
nux lạisử dụng mộtkỹ t huậtđặc bi ệtcho phép mộtsố chương t rình được
thựchi ện dướiquyền củangườiquản l ýchương tr
ình chứ không phảingườigọit hực
thichương t rình.Vàđâychí nh l
àlýdot ạisaotấtcảmọingườidùngt rong hệt hống
đềucót hểđổimậtkhẩucủamì nht rongkhikhônghềcóquyênt ruyxuấtl ênt ậpt i
n
/etc/shadow,đól àvìl ệnh passwd đãđượcgán t huộct í
nh SUI D vàđượcquản l ýbởi
root,màr ootl ạil
àngườidùngduynhấtcóquyềnt ruyxuất/ etc/
shadow.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 9
Tuyt hế,khảnăngt iênt i
ếnnàycót hểgâynên nhữngnguycơkháphứct ạpvì
nếumộtchươngt rì
nhcókhảnăngt hựct hiđượcquảnl ýbởiroot ,dot hiếtkếtồihoặc
do đượccàiđặtcố t ì
nh bởinhững kẻ phá hoạimà l ạiđượcđặtt huộct í
nh SUIDt hì
mọiđi ều “khủng khiếp”đều có t hểxảyr a.Thựct ếcho thấycó khá nhi ều kỹt huật
xâm phạm hệt hốngmàkhôngcóquyềnr ootđượct hựchiệnbằngcáckỹt huậtnày:
kẻ phá hoạibằng cách nào đó t ạo mộtshel lđược quản lý bởir oot,có thuộc t í
nh
SUI D,kếđếnmọit ruyxuấtpháhoạisẽđượct hựchiệnquashel lvừat ạovìmọil ệnh
thựchiệnt rongshellsẽđượct hựchiệngi ốngnhưdướiquyềnr oot.
Thuộct ínhSGI D cũngt ươngt ự như SUID:cácchươngt rìnhđượct hựchiệnvới
quyền nhóm quản l ý chương trình chứ không phảinhóm của ngườichạy chương
trì
nh.Như vậy ngườiquản t rịsẽ phảit hường xuyên ki
ểm t rat rong hệ thống có
những ứng dụng nào có t huộct í
nh SUI D hoặcSGI D mà không đượcsự quản l ýcủa
rootkhông,nếu pháthi ện đượct ậptin cóthuộct í
nhSUI D/SGI D “ngoàil uồng”,bạn
cót hểloạibỏcáct huộct ì
nhnàybằngl ệnh:
#chmod a-s
III. Linux Firewall
An t oàn hệt hống l uôn luôn làmộtvấn đềsốngcòn củamạngmáyt í
nh vàf i
rewal llà
mộtt hànhphầncốtyếuchovi ệcđảm bảoanni nh.
Mộtf i
rewal llà mộtt ập hợp cácquit ắc,ứng dụng và chí nh sách đảm bảo cho người
dùngt ruycậpcácdị chvụmạngt r
ongkhimạngbênt rongvẫnant oànđốivớicáckẻt ấn
công t ừI nternet hay t ừ các mạng khác. Có hail oạiki ến trúc fi
rewallcơ bản l à:
Proxy/ Applicationf i
rewal lvàf il
teri
nggat ewayf ir
ewal l
.Hầuhếtcáchệt hốngf i
rewal lhiện
đạil àloạilai( hybr i
d)củacảhail oạit
r ên.
Nhiều công t y và nhà cung cấp dị ch vụ I nternetsử dụng máy chủ Li nux như một
Internetgat eway.Những máychủ nàyt hường phụcvụ như máychủ mai l
,web,f tp,hay
dialup.Hơn nữa,chúng cũngt hường hoạtđộngnhư cácf i
rewal l
,thihành cácchí nh sách
kiểm soátgi ữaI nternetvàmạngcủacôngt y.Khảnănguyểnchuyểnkhi ếnchoLi nuxt hu
hútnhưl àmộtt hayt hếchonhữnghệđi ềuhànht hươngmại .
Tínhnăngf irewallchuẩn đượccungcấpsẵnt rongker nelcủaLi nuxđượcxâydựngt ừ
hait hànhphần:i pchainsvàI PMasquer ading.
Linux I P Firewalling Chai ns l
à mộtcơ chế l ọc góit inI P.Những t í
nh năng của I P
Chai nschophépcấuhì nhmáychủLi nuxnhư mộtf i
lt
er i
nggat eway/fi
rewalldễdàng.Một
thành phần quan t rọng khác của nó t rong ker nellàI P Masquer ading,mộtt í
nh năng
chuyển đổiđị a chỉmạng ( networkaddr esst r
ansl at
ion- NAT)mà có t hểchegi ấu cácđị a
chỉI Pt hựccủamạngbên t rong.Đểsử dụng i pchains,bạn cần t hi
ếtlậpmộtt ập cácl uật
màquiđị nhcáckếtnốiđượcchophéphaybịcấm.
Cácnguyênt ắcIpchainsThựchi ệncácchứcnăngsau:
± Accept: The packet is okay; allow it to pass to the appropriate chain
Chophépchuyểngóit inquachai nt hí
chhợp
± Deny: The packet is not okay; silently drop it in the bit bucket. Không
đồngý,bịr ớt
.
± Reject: The packet is not okay; but inform the sender of this fact via
anICMPpacket .Khôngđồngý,nhưngsựvi ệccủangườigởi quagóiI CMP
± Masq: Used f or IP masquer ading (networ k addr ess t ransl
ation).Sử
dụngchoIPmasquer ading(việcdị chđịachỉmạng)
± hi
Redirect: Send t spackett osomeoneel sef orpr ocessi ng.Gởigóit i
n
nàyđếnmộtngườikhácđểsửl ý
± Return: Terminate the rule list. Hoàn thành danhsáchcácquyt ắc.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 10
Chú ý:Các góiI pf w( ipfi
lt
er s/i
ptabl
e)dướihệ đi ều hành BSD cung cấp hoạtđộng
tươngt ựI pchai ns.
Vídụ:
# Chophépcáckếtnốiwebt ớiWebSer vercủabạn
/sbin/ipchains -A your_chains_rules -s 0.0.0.0/0 www -d 192.16.0.100 1024: -j ACCEPT
# Chophépcáckếtnốit ừbênt r
ongtớicácWebSer verbênngoài
/sbin/ipchains -A your_chains_rules -s 192.168.0.0/24 1024: -d 0.0.0.0/0 www -j
ACCEPT
# Từchốit ruycậpt ấtcảcácdị chvukhác
/sbin/ipchains -P your_chains_rules input DENY
Ngoàir a,bạn cót hểdùngcácsản phẩm f irewallthươngmạinhư CheckPoi ntFi reWall
-
1,Phoeni x Adapt ive Fi rewall,Gat eway Guardian,XSentry Fir
ewal l
,Rapt or,. ..hay rất
nhiềucácphi ênbảnmi ễnphí ,mãnguồnmởchoLi nuxnhưT. RexFi r
ewall,Dant e,SINUS,
TIS Firewall Toolkit, ...
1.DÙNG CÔNG CỤ DÕ TÌM ĐỂKHẢO SÁTHỆ THỐNG
Thâm nhập vào mộthệ t hống bấtkỳ nào cũng cần có sự chuẩn bị .Hackerphảixác
định ramáyđí ch vàt ì
m xem những por tnàođang mởt rướckhihệt hống cót hểbịxâm
phạm.Quá t rình này t hường đượct hựchi ện bởicáccông cụ dò t ìm ( scanning tool)
,kỹ
thuậtchí nh để t ì
m r a máy đích và cácpor tđang mở trên đó.Dò t ìm l à bướcđầu t iên
hackersẽ sử dụng t rướckhit hựchi ện tấn công.Bằng cách sử dụng cáccông cụ dò t ì
m
như Nmap,hackercó t hể rà khắp cácmạng để t ìm ra cácmáy đí ch có t hể bịtấn công.
Mộtkhixácđị nhđượccácmáynày,kẻxâm nhậpcót hểdòt ìm cácpor tđangl ắngnghe.
Nmap cũng sử dụng mộtsố kỹ t huậtcho phép xác đị nh khá chính xác l oạimáy đang
kiểm tra.
Bằng cách sử dụngnhữngcông cụ củachí nh cáchackert hườngdùng,ngườiquản t r
ị
hệt hốngcót hểnhì nvàohệt hốngcủamì nht ừgócđộcủacáchackervàgi úptăngcường
tính an toàn của hệ t hống.Có r ấtnhi ều công cụ dò t ì
m có t hể sử dụng như:Nmap,
strobe, sscan, SATAN, ...
Nmap
Làchữ vi ếtt ắtcủa" Net workexploration toolandsecur i
tyscanner ".Đâyl àchươngt rình
quéthàngđầuvớit ốcđộcựcnhanhvàcựcmạnh.Nócót hểquétt rênmạngdi ệnr ộngvà
đặcbi ệtt ốtđốivớimạng đơn l ẻ.NMAPgi úp bạn xem những dị ch vụ nàođang chạyt rên
server( services/ ports:webserver,
ftpserver ,pop3,.
..),serverđang dùng hệ đi ều hành gì,
loạitườngl ửamàser versửdụng,. ..vàr ấtnhi ềut í
nhnăngkhác.NóichungNMAPhỗt rợ
hầuhếtcáckỹt huậtquétnhư :I CMP( pingaweep) ,IPpr otocol
,Null scan, TCP SYN (half
open) ,...NMAP đượcđánh gi álà công cụ hàng đầu của cácHackercũng như cácnhà
quảnt rịmạngt r
ênt hếgi ới
.
Quétan t oàn Nmap l àmộtt rong sốcông cụ quétan t oàn đượcsử dụng r ộng
rãinhấtsẵncó.Nmapl àmộtcổngquétmàchốngl ạicácnhânt ố,cáccáchkháct àn
pháđến mạng củabạn.Nócót hểphátsi nh r
anhiều kiểu góimàt hăm dòcácngăn
xếpTCP/ IPtrênnhữnghệt hốngcủabạn.
Nmapcót hểphátsi nh ramộtdanh sách củanhữngcổngmởdị ch vụ trên hệ
thống của bạn, t
hâm nhập f irewal
ls,và cung cấp những tin quấy r ầy,không tin cậy
đangchạyt r
ênhostcủabạn.Nmapsecur itycósẵnt ại:http://www.insecure.org
.Dướiđâyl àmộtvídụsửdụngNmap:
# nmap -sS -O 192.168.1.200
Starting nmap V. 2.54 by Fyodor ([email protected], www.insecure.org/nmap/)
Interesting ports on comet (192.168.1.200):
Port State Protocol Service
7 open tcp echo
19 open tcp chargen
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 11
21 open tcp ftp
...
TCP Sequence Prediction: Class=random positive increments
Difficulty=17818 (Worthy challenge)
Remote operating system guess: Linux 2.2.13
Nmap run completed -- 1 IP address (1 host up) scanned in 5 seconds
Tuy nhi ên,sử dụng cáccông cụ này không t hể thay thế cho mộtngườiquản trịcó kiến
thức.Bởivìvi ệcdò t ì
m thường dự báo mộtcuộct ấn công,cácsi t
enên ưu t
iên cho vi
ệc
theodõichúng.Vớicáccôngcụdòt ì
m,cácnhàquảnt rịhệt hốngmạngcót hểpháthi ện
ranhữnggìmàcáchackercót hểthấykhidòt r
ênhệt hốngcủamì nh.
2.PHÁTHIỆN SỰ XÂM NHẬP QUA MẠNG
Nếuhệt hốngcủabạn cókếtnốivàoi nt er
net,bạncót hểt rởt hànhmộtmụct i
êubịdò
tì
m cácl ỗhổngvềbảomật .Mặcdùhệt hốngcủabạncóghinhậnđi ềunàyhaykhôngt hì
vẫnkhôngđủđểxácđị nhvàpháthi ệnvi ệcdòt ì
m này.Mộtvấnđềcầnquant âm khácl à
cáccuộct ấn công gây ngừng dị ch vụ ( Deni alofSer vices- DoS) ,làm t hế nào để ngăn
ngừa,pháthi ệnvàđốiphóvớichúngnếubạnkhôngmuốnhệt hốngcủabạnngưngt r
ệ.
Hệt hốngpháthi ện xâm nhập quamạng( NetworkI ntrusion Det ection Syst em - NIDS)
theo dõicáct hông tint r
uyền t r
ên mạng và pháthi ện nếu có hackerđang cố xâm nhập
vào hệ t hống (hoặcgây gây r a mộtvụ t ấn công DoS) .Mộtvídụ đi ển hình là hệ thống
theo dõisố l ượng lớn cácyêu cầu kếtnốiTCP đến nhi ều por tt rên mộtmáy nào đó,do
vậycót hểpháthi ện ranếu cóaiđó đang t hử mộtt ácvụ dòt ìm TCPpor t.MộtNI DS có
thể chạy t rên máy cần t heo dõihoặct r ên mộtmáy độcl ập theo dõit oàn bộ t hông ti
n
trênmạng.
Cáccông cụ có t hểđượckếthợp đểt ạomộthệt hống pháthi ện xâm nhập quamạng.
Chẳng hạn dùng t cpwr apperđể đi ều khi ển,ghinhận cácdị ch vụ đã đượcđăng ký.Các
chươngt rì
nhphânt í
chnhậtkýhệt hống,như swat ch,cót hểdùngđểxácđị nhcáct ácvụ
dòt ì
mt rên hệt hống.Vàđi ều quan t rọngnhấtl àcáccôngcụ cót hểphân t í
ch cáct hông
ti
nt rên mạng để pháthi ện các tấn công DoS hoặc đánh cắp t hông tin như t cpdump,
ethereal, ngrep, NFR (Network Flight Recorder), PortSentry, Sentinel, Snort, ...
Khihiện t hựcmộthệ t hống pháthi ện xâm nhập qua mạng bạn cần phảil ưu t âm đến
hiệusuấtcủahệt hốngcũngnhưcácchí nhsáchbảođảm sựr i
êngt ư.
3.KIỂM TRA KHẢ NĂNG BỊXÂM NHẬP
Kiểm trakhảnăng bịxâm nhập l i
ên quan đến vi ệcxácđị nh vàsắpxếp cácl ỗhổngan
ninh trong hệ thống bằng cách dùng mộtsố công cụ ki ểm t ra.Nhi ều công cụ kiểm tra
cũng cókhảnăng khait hácmộtsốl ỗ hổng t ì
mt hấyđểl àm rõ quát r
ình thâm nhập t rái
phépsẽđượct hựchi ệnnhưt hếnào.Vídụ,mộtl ỗitrànbộđệm củachươngt rì
nhphụcvụ
dịch vụ FTP có thể dẫn đến vi ệc thâm nhập vào hệ t hống vớiquyền „ r
oot‟.Nếu người
quảnt rịmạngcóki ếnt hứcvềki ểm t r
akhảnăngbịxâm nhậpt r
ướckhinóxảyr a,họcó
thểt i
ếnhànhcáct ácvụđểnângcaomứcđộanni nhcủahệt hốngmạng.
Cór ấtnhiềucáccôngcụ mạngmàbạncót hểsử dụngt r
ongvi ệckiểm t r
akhảnăngbị
xâm nhập.Hầu hếtcácquá t rì
nh kiểm t r a đều dùng ítnhấtmộtcông cụ t ự động phân
tí
chcácl ỗhổnganni nh.Cáccôngcụnàyt hăm dòhệt hốngđểxácđị nhcácdị chvụhi ện
có.Thôngt i
nl ấyt ừcácdị chvụnàysẽđượcsosánhvớicơsởdữ l i
ệucácl ỗhổnganni nh
đãđượct ìmthấyt rướcđó.
Cáccông cụ t hường đượcsử dụng để t hựchi ện cácki ểm tral oạinày làI SS Scanner ,
Cybercop, Retina, Nessus, cgiscan, CIS, ...
Kiểm tra khả năng bịxâm nhập cần đượct hựchi ện bởinhững ngườicó t rách nhi
ệm
mộtcách cẩn t hận.Sự t hi ếu ki
ến thứcvà sử dụng saicách có t hể sẽ dẫn đến hậu quả
nghiêm t r
ọngkhôngt hểl ườngt rướcđược.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 12
4.ĐỐIPHÓ KHIHỆTHỐNG CỦA BẠN BỊTẤN CÔNG
Gần đây,mộtl oạtcác vụ t ấn công nhắm vào các si t
e của những công t ylớn như
Yahoo!, Buy.com, E-Bay,Amazon và CNN I nt
eracti
ve gây ra những thiệthạivô cùng
nghiêm t r
ọng.Những t ấn công này là dạng tấn công gây ngừng dịch vụ " Deni
al-Of-
Service"mà được t hiếtkế để làm ngưng hoạtđộng của mộtmạng máy t ính hay một
website bằng cách gửiliên t
ụcvớisố lượng lớn cácdữ liệu t
ớimụct i
êu tấn công khi
ến
cho hệ thống bịtấn công bịngừng hoạtđộng,đi ều này tương t
ự như hàng t r
ăm người
cùnggọikhôngngừngt ới1sốđi ệnthoạikhiếnnól i
ênt ụcbịbận.
Trong khikhông t hể nào tr
ánh đượcmọinguy hi ểm từ cáccuộct ấn công,chúng t ôi
khuyênbạnmộtsốbướcmàbạnnênt heokhibạnpháthi ệnr arằnghệt hốngcủabạnbị
tấn công.Chúngt ôicũng đưar amộtsốcách đểgi úp bạn bảođảm t í
nh hiệu qủacủahệ
thống an ninh và những bướcbạn nên l àm để giảm rủiro và có t
hể đốiphó vớinhững
cuộct ấncông.
Nếu pháthi
ện r
arằng hệ thống của bạn đang bịt
ấn công,hãy bì
nh t
ĩnh.Sau
đâyl
ànhững bướcbạn nên l
àm:
x Tậphợp1nhóm đểđốiphóvớisựt ấncông:
o Nhóm này phảibao gồm những nhân vi ên kinh nghi ệm,những ngườimà
cót hểgiúphì nht hànhmộtkếhoạchhànhđộngđốiphóvớisựt ấncông.
x Dựa t heo chính sách và cácquyt rình t
hựchi ện vềan ni nh củacông t y,sử dụng
cácbướct hí
chhợpkhit hôngbáochomọingườihayt ổchứcvềcuộct ấncông.
x Tì m sự giúpđỡt ừ nhàcungcấpdị chvụI nternetvàcơquanphụt ráchvềanni nh
máy tính:
o Liên hệ nhà cung cấp dị ch vụ Inter
netcủa bạn để t hông báo về cuộct ấn
công.Cót hểnhàcungcấpdị chvụI nter netcủabạnsẽchặnđứngđượccuộct ấncông.
o Liên hệcơ quan phụ t rách vềan ni nh máyt ính đểt hông báo vềcuộct ấn
công
x Tạm t hờidùng phương t hứct ruyền t hông khác( chẳng hạn như qua đi ện t
hoại )
khit r
aođổit hôngt inđểđảm bor ằngkẻxâm nhậpkhôngt hểchặnvàl ấyđượct hôngt i
n.
x Ghil ạit ấtcảcáchoạtđộng củabạn ( chẳng hạn như gọiđi ện t hoại,t
hayđổif i
le,
...)
x Theodõicáchệt hốngquant r
ọngt r
ongqúat rì
nhbịt ấncôngbằngcácphầnmềm
hay dị ch vụ pháthi ện sự xâm nhập ( int r
usion detecti
on software/ser vices).Điều này có
thểgi úp l
àm giảm nhẹsự t ấn công cũng như pháthi ện những dấu hi ệu củasự t ấn công
thựcsựhaychỉl àsự quấyr ốinhằm đánhl ạchướngsự chúýcủabạn( chẳnghạnmộtt ấn
côngDoS vớidụngýl àm saol ãngsựchúýcủabạnt rongkhit hựcsựđâyl àmộtcuộct ấn
công nhằm xâm nhập vào hệ t hống của bạn) .Sao chép l ạitấtcả cácf i
lesmà kẻ xâm
nhậpđểl ạihayt hayđổi( nhưnhữngđoạnmãchươngt rì
nh,logf i
le,. .
.)
x Li ênhệnhàchứct ráchđểbáocáovềvụt ấncông.
Những bướcbạn nên l
àm để gi
ảm rủiro và đốiphó vớisự tấn công t
rong t
ương
lai :
o Xâydựngvàt r
aoquyềnchonhóm đốiphóvớisựt ấncông
o Thihànhkiểm traanni
nhvàđánhgiámứcđộr ủirocủahệt hống
o Càiđặtcácphầnmềm ant oànhệthốngphùhợpđểgi ảm bớtrủiro
o Nângcaokhảnăngcủamì nhvềantoànmáyt í
nh
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 13
Cácbướcki ểm trađểgi úp bạn bảo đảm t ính hi ệu quảcủahệt hống an ni
nh
o Ki ểm trahệt hống an ninh mớicàiđặt:chắcchắn t ính đúng đắn củachính sách
anninhhiệncóvàcấuhì nhchuẩncủahệt hống.
o Ki ểm tratự độngt hườngxuyên:đểkhám phásự “ viếngthăm”củanhữnghacker
haynhữnghànhđộngsait r
áicủanhânvi ênt r ongcôngt y.
o Ki ểm tra ngẫu nhiên:để kiểm tra chính sách an ninh và những ti
êu chuẩn,hoặc
kiểm t
ra sự hi
ện hữu của những lỗ hổng đã đượcpháthi ện ( chẳng hạn những l
ỗiđược
thôngbáot ừnhàcungcấpphầnmềm)
o Ki ểm trahằngđêm nhữngf il
equant r
ọng:đểđánhgi ásự toànvẹncủanhữngf il
e
vàcơsởdữl i
ệuquant rọng
o Ki ểm tra cáctàikhoản ngườidùng:để pháthi ện cáct àikhoản không sử dụng,
khôngtồnt ại
,...
o Ki ểm trađịnhkỳđểxácđị nht rạngt háihiệnt ạicủahệt hốnganni nhcủabạn
Thi
ếtl
ập t
ường l
ửaIpt
abl
eschoLi
nux
Cấu hì nh Tabl es
ViệccàiđặtI ptableslàmộtphần t rongvi ệccàiđặtRedHatban đầu.Nguyên
bản khởit ạo t ì
m ki ếm sự t ồn tạicủa f ileI pt abl es,r ules/etc/sysconfig/iptables, Và
nếu chúng đã t ồn tạiiptableskhởiđộng vớicầu hì nh đã đượcchỉr õ.Mộtkhiser ver
nàyl à gởimai lvà nhận mai l,cấu hình I ptabl esnên cho phép những kếtnốit ừ đầu
vào sendmai lđếnbấtkỳnơiđâu.Ngườiquảnt rịhệt hốngsẽchỉsử dụngshht ừ bên
trongcácmáy,đặcbi ệtl àMI S.Iptablesr ulessẽcàiđặtđểchophépcáckếtnốishh
từ 2 MI S.Pi ng I CMPsẽchophép bấtkỳđâu.Không cócông nàokhácchophép kết
nốiđếnngườiphụcvụnày.Đâyl àmứcbổsungchovi ệcphòngt hủcủaser vert rong
trường hợp Fi rewal lđược t hoã hiệp.Thêm vào đó l à vi ệc bảo vệ cho ssh sẽ được
cungcấpbởicấuhì nhcácgóit cpbêndưới .
Nhữngquyt ắcđểt hựchiệncấuhì nhI pt abl esnhưsau:
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT(1)
/sbin/iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT(2)
/sbin/iptables -A INPUT -p tcp --dport 25 -j ACCEPT(3)
/sbin/iptables -A INPUT -p tcp --dport 22 -s 10.100.200.0/24 -j ACCEPT(4)
/sbin/iptables -A INPUT -p tcp --dport 22 -s 10.100.201.0/24 -j ACCEPT(5)
/sbin/iptables -A INPUT -p udp --sport 53 -s 10.100.50.50 -j ACCEPT(6)
/sbin/iptables -A INPUT -p udp -sport 53 -s 10.100.42.42 -j ACCEPT(7)
/sbin/iptables -A INPUT -j LOG(8)
/sbin/iptables -P INPUT DROP(9)
(1)Chophépnhữngkếtnốil iênquanvàđãt hi ếtl ậpđếnser ver
(2)Chophépcáchostkhácpi ngđếnser versendmai d
(3)ChophépkếtnốiSMTPđếnser ver
(4),( 5)Chophépkếtnốissht ừ2MÍ( subnet s)
(6),( 7)Cho phép ngườiphụcvụ t ên DNS cho box sendmai d để cung cấp gi ảipháp
DNS.Nếubạncóhơnmộtdomai n–DNS,t hìt hêm mộtdòngchomỗiDNS.
(8)l ogbấtkỳkếtnốinàocốgắngmànókhôngđặcbi ệtchophép
(9)Càidặtchí nhsáchmặcđị nhchobảngI NPUTt oDROP
Tấtcả cáckếtnốiđặcbi ệtkhông chophép sẽbịr ớt
.Chương t r
ình losent r
ysẽđược
cấu hì nh đểđị nh r ằng bấtkỳdòng nào l og cũng như sự xâm phạm an t oàn.Đểgi ữ
đượccấuhì nhquar eboot ,taphảichạyI ptabl es- Save.Chạyl ệnhnhưsau:
/sbin/iptables-save > /etc/sysconfig/iptables
Khihệt hốngkhởiđộngl ên,fileIptablessẽđượcđọcvàcấuhì nhhi ệudụng.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 14
Iptabl
esl à mộtt ường lửa ứng dụng lọcgóidữ l i
ệu rấtmạnh,mi ễn phívà có sẵn trên
Linux..Netfi
lter
/Iptabl
es gồm 2 phần l à Netfi
lt
erở t rong nhân Linux và Ipt
ables nằm
ngoài nhân.I pt
ableschị utrách nhiệm giao t
iếp giữa ngườidùng và Netfi
lt
erđể đẩy các
l
uậtcủa ngườidùng vào cho Net f
il
erxử lí.Netfil
terti
ến hành lọccácgóidữ l i
ệu ở mức
IP.Netfi
lterlàm việctr
ựct i
ếpt rongnhân,nhanhvàkhôngl àm giảm tốcđộcủahệt hống.
Cáchđổiđị
achỉI
Pđộng(
dynami
cNAT)
Trướckhiđivàophầnchính,mìnhcầngiớithi
ệuvớicácbạnvềcôngnghệđổiđị achỉNAT
độngvàđónggi ảI
PMasquerade.Haitừ nàyđượcdùngrấtnhi ều tr
ongI pt
ablesnênbạn
phảibiết
.Nếubạnđãbi ếtNATđộngvàMasquer ade,bạncót hểbỏquaphầnnày.
NAT động l à mộttr
ong những kĩt
huậtchuyển đổiđịa chỉI P NAT (
Net work Addr
ess
Transl
ati
on).CácđịachỉI
PnộibộđượcchuyểnsangI PNATnhưsau:
NAT Rout er đảm nhận vi ệc chuyển dãy I P nộibộ 169. 168.0.x sang dãy IP mới
203.162.2.x.Khicó góil i
ệu vớiIP nguồn là 192.168.0.
200 đến router,r out
ersẽ đổiI P
nguồnt hành203. 162. 2.200sauđómớigởir angoài.Quát rì
nhnàygọil àSNAT( Source-
NAT,NATnguồn) .Rout erlưudữliệut rongmộtbảnggọil àbảngNATđộng.Ngượcl ại
,khi
cómộtgóit ừliệu từ gởitừ ngoàivàovớiI Pđích l
à203. 162.2.
200,r outersẽcăn cứ vào
bảng NAT động hi ện t ạiđể đổiđị a chỉđích 203.162.2.200 thành địa chỉđích mớil à
192.168.0.200.Quá t rì
nh này gọil à DNAT ( Desti
nati
on-NAT,NAT đí ch) .Liên l
ạc giữa
192.168.0.200 và 203.162.2.200 là hoàn toàn tr
ong suốt( t
ransparent)qua NAT r outer
.
NAT r outer ti
ến hành chuyển t i
ếp ( f
orwar d) gói dữ liệu từ 192. 168.0.200 đến
203.162.2.200vàngượcl ại.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 15
Cách đóng gi
ảđịachỉIP (masquer
ade)
Đâylàmộtkĩthuậtkháctr
ongNAT.
NAT Routerchuyển dãy I P nộibộ 192. 168.0.x sang mộtI P duy nhấtlà 203. 162.2.4
bằngcáchdùngcácsốhi ệucổng( port-number )khácnhau.Chẳnghạnkhicógóidữ l iệu
IP vớinguồn 192. 168.0.168: 1204, đích 211. 200.51. 15:
80 đến router,r outer sẽ đổi
nguồn thành 203. 162.2.4:26314 và l ưu dữ l iệu này vào một bảng gọi l à bảng
masquerade động.Khicó mộtgóidữ l iệu từ ngoàivào vớinguồn là 221.200. 51.15:80,
đí
ch203. 162.2.
4:26314đếnr outer,r
out ersẽcăncứvàobảngmasquer adeđộnghi ệnt ại
để đổiđích từ 203.162.2.4:26314 thành 192. 168.0.164:1204.Li
ên l ạc giữa các máy
tr
ongmạngLAN vớimáykhácbênngoàihoànt oànt rongsuốtquarout er
Cấu trúccủaIpt ables
Iptabl
es được chialàm 4 bảng (table):bảng fil
terdùng để lọc góidữ li
ệu,bảng nat
dùngđểt haotácvớicácgóidữ l i
ệuđượcNATnguồnhayNATđí ch,bảngmangl edùngđể
thay đổicácthông số trong góiIP và bảng conntr
ack dùng để theo dõicáckếtnối.Mỗi
tablegồm nhiềumắcxí ch(chain)
.Chai ngồm nhi ềuluật(rul
e)đểt haotácvớicácgóidữ
l
iệu.Rul ecóthểl àACCEPT( chấpnhậngóidữ l iệu),DROP( t
hảgói ),REJ ECT(l
oạibỏgói)
hoặct ham chi
ếu( refer
ence)đếnmộtchai nkhác.
Quát rì
nh chuyển góidữ l iệu quaNet filter
Góidữ li
ệu (packet)chạy t rên chạy trên cáp,sau đó đivào car d mạng ( chẳng hạn như
eth0).Đầut i
ênpacketsẽquachai nPREROUTI NG (trướckhiđị nhtuyến).Tạiđây,packet
cóthểbịt hayđổit hôngsố( mangl e)hoặcbịđổiđị achỉI Pđí ch(DNAT) .Đốivớipacketđi
vàomáy,nósẽquachai nI NPUT.Tạichai nI NPUT,packetcót hểđượcchấpnhậnhoặcbị
hủy bỏ.Tiếp theo packetsẽ đượcchuyển l ên cho cácứng dụng ( cli
ent/server)xử lívà
ti
ếp theo l
à đượcchuyển r a chain OUTPUT.Tạichai n OUTPUT,packetcó t hể bịthay đổi
các t
hông số và bịl ọc chấp nhận r a hay bịhủy bỏ.Đốivớipacketf orwar d qua máy,
packetsau khir ờichain PREROUTI NG sẽ qua chai n FORWARD.Tạichai n FORWARD,nó
cũng bịl
ọcACCEPT hoặcDENY.Packetsau khiquachai n FORWARD hoặcchai n OUTPUT
sẽđếnchai nPOSTROUTI NG (saukhiđị nht uyến) .TạichainPOSTROUTI NG,packetcót hể
đượcđổiđị a chỉIP nguồn ( SNAT)hoặcMASQUERADE.Packetsau khir a car d mạng sẽ
đượcchuyểnl êncápđểđiđếnmáyt í
nhkháct r
ênmạng.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 16
Cáct ham sốdòngl ệnht hườnggặpcủaI ptabl es
1.Gọit r ợ giúp
Đểgọit rợgi úpvềI pt ables,bạngõl ệnh$ man iptables hoặc$ iptables --help.Chẳnghạn
nếubạncầnbi ếtvềcáct ùychọncủa match limit,bạngõl ệnh$ iptables -m limit --help.
2.Cáct ùychọn đểchỉđị nh thông số
- chỉđịnht ênt able:-t
.nếukhôngchỉđị nhtabl e,giá
trịmặcđị nhl àf i
lter
- chỉđinhl oạigi aot hức:-p
địnhcácgi aot hứckhôngphảil àudp
- chỉđịnhcar dmạngvào:-i
- chỉđịnhcar dmạngr a:-o
- chỉđịnhđị achỉI Pnguồn:-s<đị a_chỉ_ip_nguồn>,vídụ:-s 192.168.0.0/24 ( mạng
192. 168. 0với24bí tmạng) ,-s 192.168.0.1-192.168.0.3 (các IP 192.168.0.1,
192.168.0.2, 192.168.0.3).
- chỉđịnhđị achỉI Pđí ch:-d<đị a_chỉ_ip_đích>,t ươngt ựnhư-s
- chỉđịnhcổngnguồn:--spor t
(cáccổng22. .88) ,--sport :80 ( cáccổng<=80) ,--sport 22: (
cáccổng>=22)
- chỉđịnhcổngđí ch:--dpor t
3.Cáct ùychọn đểt haot ácvớichai n
-t ạochai nmới :ipt abl es-N
- xóahếtcácl uậtđãt ạot r
ongchai n:i ptabl
es-X
- đặtchí nhsáchchocácchai n`bui lt
-in` (INPUT, OUTPUT & FORWARD): iptables -P
ACCEPT đểchấpnhậncácpacket vào chain INPUT
-l i
ệtkêcácl uậtcót r ongchai n:i ptables-L
- xóacácl uậtcót rongchai n(flushchai n):ipt
ables-F
-r esetbộđếm packetvề0:i pt ables-Z
4.Cáct ùychọn đểt haot ácvớil uật
-t hêm luật :-A (append)
- xóal uật:-D (delete)
-t hayt hếl uật:-R (replace)
- chènt hêm l uật :-I (insert)
Mì nhsẽchovídụmi nhhọavềcáct ùychọnnàyởphầnsau.
Phânbi
ệtgi
ữaACCEPT,DROPvàREJECTpacket
- ACCEPT:chấpnhậnpacket
- DROP:t hảpacket( khônghồiâm choclient)
- REJECT:l oạibỏpacket( hồiâm chocl i
entbằngmộtpacketkhác)
Vídụ:
# iptables -A INPUT -i eth0 --dport 80 -j ACCEPT chấpnhậncácpacketvàocổng80t
rên
cardmạnget h0
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 17
# iptables -A INPUT -i eth0 -p tcp --dport 23 -j DROP t hảcácpacketđếncổng23dùng
giaot hứcTCPt rêncar dmạnget h0
# iptables -A INPUT -i eth1 -s ! 10.0.0.1-10.0.0.5 --dport 22 -j REJECT --reject-with tcp-
reset gởigóiTCPvớicờRST=1chocáckếtnốikhôngđếnt ừdãyđị achỉI P10. 0.0.1..
5
trêncổng22,car dmạnget h1
# iptables -A INPUT -p udp --dport 139 -j REJECT --reject-with icmp-port-unreachable
gởigóiI CMP`por t
-unr eachabl e`chocáckếtnốiđếncổng139,dùnggi aot hứcUDP
Phân biệtgi ữaNEW ,ESTABLISHED vàRELATED
- NEW:mởkếtnốimới
- ESTABLI SHED:đãt hiếtlậpkếtnối
- RELATED:mởmộtkếtnốimớit rongkếtnốihi ệntại
Vídụ:
# iptables -P INPUT DROP đặtchí nhsáchchochai nINPUTl àDROP
# iptables -A INPUT -p tcp --syn -m state --state NEW -j ACCEPT chỉchấpnhậncácgói
TCPmởkếtnốiđãsetcờSYN=1
# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT khôngđóngcác
kếtnốiđangđượct hi ếtlập, đồngt hờicũngchophépmởcáckếtnốimớit rongkếtnối
đượct hiếtlập
# iptables -A INPUT -p tcp -j DROP cácgóiTCPcònl ạiđềubịDROP
Tùychọn --limit, --limit-burst
--limit-burst:mứcđỉ nh,t í
nhbằngsốpacket
--limit:t ốcđộkhichạm mứcđỉ nh,t í
nhbằngsốpacket /s(
gi ây),m( phút ),d(giờ)hoặc
h(ngày)
Mì nhl ấyvídụcụt hểđểbạndễhi ểu:
# iptables -N test
# iptables -A test -m limit --limit-burst 5 --limit 2/m -j RETURN
# iptables -A test -j DROP
# iptables -A INPUT -i lo -p icmp --icmp-type echo-request -j test
Đầu t i
ên lệnh iptables -N test để t ạo mộtchai n mớit ên làt est(table mặc đị nh là
fi
lter).Tùy chọn -A test ( append)để t hêm l uậtmớivào chai nt est.Đốivớichai ntest,
mì nh gi ớihạn l imi t-bur stở mức 5 gói ,l i
mi tlà 2 gói /phút ,nếu t hỏa luậtsẽ t rở về
(RETURN)còn không sẽbịDROP.Sau đó mì nh nốit hêm chai nt estvào chai nINPUT với
tùychọncar dmạngvàol àl o,gi aot hứci cmp,l oạii
cmpl à echo-request .Luậtnàysẽgi ới
hạn cácgóiPI NG t ớil ol à2 gói /phútsau khiđãđạtt ới5 gói .
Bạn t hử ping đến localhost
xem sao?
$ ping -c 10 localhost
Chỉ5 góiđầu t rong phútđầu t i
ên đượcchấp nhận,t hỏal uậtRETURN đó.Bâygi ờđãđạt
đến mứcđỉ nh là5 gói,l ậpt ứcI pt abl essẽgi ớihạn PI NG t ớilol à2 góit rên mỗiphútbất
chấpcóbaonhi êugóiđượcPI NG t ớil ođinữa.Nếut r ongphútt ớikhôngcógóinàoPI NG
tới,Ipt ablessẽgi ảm l imitđi2góit ứcl àt ốcđộđangl à2gói /
phútsẽt ăngl ên4gói /phút.
Nếu t rong phútnữa không có góiđến,l imitsẽ giảm đi2 nữa l àt rở về lạitrạng tháicũ
chưađạtđếnmứcđỉ nh5 gói .Quát rìnhcứ t i
ếpt ụcnhư vậy.Bạnchỉcầnnhớđơngi ảnl à
khiđã đạtt ớimứcđỉ nh,t ốcđộ sẽ bịgi ớihạn bởit ham số--l imit
.Nếu t rong mộtđơn vị
thờigi an tớikhôngcógóiđến,t ốcđộsẽt ănglên đúngbằng --l i
mi tđến khit rởlạit r
ạng
tháichưađạtmức--limit-burst thì thôi.
Đểxem cácl uậtt rongI ptabl esbạn gõl ệnh $ iptabl
es-L -nv (-Lt ấtcảcácl uậttrongt ất
cảcácchai n,tablemặcđị nh là filter, -nl iệtkêởdạngsố,vđểxem chit iết)
# iptables -L -nv
Chain INPUT (policy ACCEPT 10 packets, 840 bytes)
pkts bytes target prot opt in out source destination
10 840 test icmp -- lo * 0.0.0.0/0 0.0.0.0/0 icmp type 8
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 18
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 15 packets, 1260 bytes)
pkts bytes target prot opt in out source destination
Chain test (1 references)
pkts bytes target prot opt in out source destination
5 420 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 2/min burst 5
5 420 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
# iptables -Z reset counter
# iptables -F fl
ushl uật
# iptables -X xóachai nđãt ạo
Redi rectcổng
Iptableshổt rợt ùychọn-j REDIRECT chophépbạnđổihướngcổngmộtcáchdễdàng.Ví
dụ như SQUI D đang l i
sten t r
ên cổng 3128/ tcp.Để redirectcổng 80 đến cổng 3128 này
bạnl àm nhưsau:
# iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128
Lưuý:t ùychọn-j REDIRECT cho có trong chain PREROUTING
SNAT & MASQUERADE
Để tạo kếtnối`t r
ansparent
` giữa mạng LAN 192. 168. 0.1 vớiInternetbạn l ập cấu hình
chot ườngl ửaI ptablesnhưsau:
# echo 1 > /proc/sys/net/ipv4/ip_forward chophépf orwardcácpacketquamáychủ đặt
Iptables
# iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 210.40.2.71 đổiI Pnguồn
chocácpacketr acar dmạnget h0 là210. 40. 2.
71.Khinhậnđượcpacketvàot ừI nt
ernet,
Iptablessẽt ự động đổiI Pđích 210.40.2.
71 t hành I
Pđí ch tương ứng củamáyt ính tr
ong
mạngLAN 192. 168. 0/24.
Hoặcbạncót hểdùngMASQUERADEt haychoSNATnhưsau:
# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
(MASQUERADEt hườngđượcdùngkhikếtnốiđếnI nternetlàpp0vàdùngđị achỉI P
động)
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương
Đềt
ài:Ant
oànvàbảomậtt
rênhệđi
ềuhànhLi
nux
Page 19
DNAT
GiảsửbạnđặtcácmáychủPr oxy,Mai lvàDNS t rongmạngDMZ.Đểt ạokếtnốitrong
suốtt ừI nternetvàocácmáychủnàybạnl ànhưsau:
# echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination
192.168.1.2
# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 25 -j DNAT --to-destination
192.168.1.3
# iptables -t nat -A PREROUTING -i eth0 -p udp --dport 53 -j DNAT --to-destination
192.168.1.4
Lập cấu hì
nh Ipt
abl
escho máychủ phụcvụ W eb
Phầnnàymì nhs ẽt r
ìnhbàyquav ídục ụt hểvàc hỉhướngdẫnc ácbạnl ọcpac ketvào. Các packet
`for war d`và' output'bạnt ựl àm nha.Gi ảs ửnhưmáyc hủphụcv ụWebk ếtnốimạngt rựctiếpvào
Int ernetquac ardmạnget h0,đị ac hỉIPlà1. 2.3.
4.Bạnc ầnl ậpcấuhì nht ườnglửac hoIptablesđáp
ứngc ácy êuc ầus au:
-c ổngTCP80( chạyapac he)mởc homọingườit ruycậpweb
-c ổng21( chạypr oftpd)c hỉmởc howebmas ter(dùngđểupl oadfil
elênpubl i
c_ht
ml )
-c ổng22( chạyopens sh)c hỉmởc hoadmi n( c ungcấps hell`root`choadmi nđểnângc ấp&pat chlỗi
chos er verkhic ần)
-c ổngUDP53( chạyt i
ny dns )đểphụcv ụtênmi ền(đâyc hỉl àvídụ)
-c hỉchấpnhậnI CMPPI NGt ớivớicode=0x 08,c ácloạipack etcònlạiđềubịt ừchối.
Bước1:t hi
ếtl ậpcáct ham sốchonhân
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
echo 10 > /proc/sys/net/ipv4/tcp_fin_timeout
echo 1800 > /proc/sys/net/ipv4/tcp_keepalive_time
echo 0 > /proc/sys/net/ipv4/tcp_window_scaling
echo 0 > /proc/sys/net/ipv4/tcp_sack
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo 0 > /proc/sys/net/ipv4/conf/eth0/accept_source_route
tcp_syncooki es=1bậtchứcnăngchốngDoS SYN quasyncooki ecủaLi nux
tcp_f in_timeout =10đặtt hờigiant imeoutchoquát r ì
nhđóngkếtnốiTCPl à10gi ây
tcp_keepal ive_t ime=1800đặtt hờigi angi ữkếtnốiTCPl à1800gi ây
...
Cáct ham sốkhácbạncót hểxem chit iếtt r
ongt àil iệuđikèm củanhânLi nux.
Bước2: nạpcácmôđuncầnt hiếtchoI pt abl
es
ĐểsửdụngI ptables,bạncầnphảinạpt rướccácmôđuncầnt hiết
.Vídụnếubạnmuốn
dùngchứcnăngLOG t r ongI ptabl es,bạnphảinạpmôđuni pt_LOG vàot rướcbằngl ệnh#
modprobe ipt_LOG.
GVHD:
NguyễnTấnKhôi Si
nhvi
ênt
hựchi
ện:
LêThịHuyềnTr
ang
NguyễnHuyChương