๐Ÿ“‚๋„คํŠธ์›Œํฌ&์„œ๋ฒ„/๐Ÿง๋ฆฌ๋ˆ…์Šค(Linux)

30์ผ์ฐจ(3.27) ๋กœ๊ทธ์›Œ์น˜ fail2ban

๐Ÿ‘ฉ‍๐ŸŽ“์ธํ…”๋ฆฌ๊ฐ์ž๐Ÿฅ” 2023. 3. 28. 18:44

apt -y install logwatch

tabํ‚ค๋ฅผ ๋ˆŒ๋Ÿฌ ok

๋‹ค ok๋ฅผ ๋ˆŒ๋Ÿฌ ์„ค์ •์„ ๋๋‚ด์ค€๋‹ค. 

 

nano -c /usr/share/logwatch/default.conf/logwatch.conf 

 

root๋ฅผ centos123456@mailinator.com์œผ๋กœ ๋ฐ”๊ฟ”์คฌ๋‹ค.

 

44๋ฒˆ์งธ ์ค„์˜ ์žˆ๋Š” MailTo = rootMailTo = centos123456@mailinator.com๋กœ ๋ณ€๊ฒฝํ•ด์„œ ์ด๋ฒคํŠธ ๋ฐœ์ƒ์‹œ ๋กœ๊ทธ๋ฅผ ์ด๋ฉ”์ผ๋กœ ๋ฐ›์„ ์ˆ˜ ์žˆ๊ฒŒ ํ•˜์˜€๋‹ค.

 

sudo logwatch --service all --detail high --mailto centos123456@mailinator.com --range today

 

์„ผํ† ์Šค์—์„œ ์šฐ๋ถ„ํˆฌ ssh ์—ฐ๊ฒฐ์„ ํ•ด์คฌ๋‹ค. 

 


  ๋ณด์•ˆ์„ค์ •์˜ ๊ธฐ๋ณธ์›์น™์—๋Š” Fail Safe์™€ Safe Failure๊ฐ€ ์žˆ๋‹ค. 
  Fail Safe๋Š” ์‹œ์Šคํ…œ์— ์˜ค๋ฅ˜๊ฐ€ ์žˆ์–ด๋„ ์‚ฌ์šฉ์ž๋‚˜ ์‹œ์Šคํ…œ์— ํ”ผํ•ด๊ฐ€ ์—†๊ฒŒ ํ•˜๋Š” ๊ฒƒ์œผ๋กœ, ์˜ˆ๋ฅผ ๋“ค์–ด ๋„คํŠธ์›Œํฌ์˜ ์ธ์ฆ์„ ์ธ์ฆ ์„œ๋ฒ„๋กœ ํ•˜๊ฒŒ ๋˜์–ด ์žˆ์„ ๋•Œ ์ด ์ธ์ฆ ์„œ๋ฒ„์— ๋ฌธ์ œ๊ฐ€ ์žˆ์–ด๋„ ์ •๊ทœ ์‚ฌ์šฉ์ž๋Š” ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์œผ๋กœ ๋กœ๊ทธ์˜จ์ด ๋˜๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. Fail Safe ์„ค์ •์—์„œ๋Š” ์˜ˆ๋ฅผ ๋“ค์–ด '์ธ์ฆ์„ ๋ฐ›์ง€ ๋ชปํ•˜๋ฉด httpd ์„œ๋น„์Šค๋Š” ๊ฑฐ๋ถ€๋œ๋‹ค'๋ผ๋Š” ๊ธฐ๋ณธ์›์น™์€ ์žˆ์„ ๋•Œ ์ด ๊ธฐ๋ณธ์›์น™์— ๋ช…์‹œํ•˜์ง€ ์•Š์€ vsftpd์™€ ๊ฐ™์€ ์„œ๋น„์Šค๋Š” ์ธ์ฆ์„ ํ—ˆ์šฉ๋œ๋‹ค๋Š” ์ด๋ฉด์˜ ๋œป์ด ์žˆ์„ ์ˆ˜ ์žˆ์–ด์„œ ์œ„ํ—˜ํ•  ์ˆ˜ ์žˆ๊ณ , ์ˆ˜๋งŽ์€ ์„œ๋ฒ„ ์„œ๋น„์Šค์˜ ์ธ์ฆ์„ ์ผ์ผ์ด ๋ชจ๋‘ ์ง€์ •ํ•˜๊ธฐ์—๋Š” ์‰ฝ์ง€ ์•Š๋‹ค๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค.
  Safe Failure๋Š” ์‹œ์Šคํ…œ์— ์˜ค๋ฅ˜๊ฐ€ ์žˆ์–ด๋„ ์‹œ์Šคํ…œ์€ ์•ˆ์ „ํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์œผ๋กœ, ์˜ˆ๋ฅผ ๋“ค์–ด ์ฒ ๋ฌธ์€ ์ „๊ธฐ ์ž๋ฌผ์‡ ๊ฐ€ ๋ง๊ฐ€์ ธ๋„ ์‚ฌ๋žŒ์ด ์•ˆ์— ๊ฐ‡ํžˆ์ง€ ์•Š๋„๋ก ์„ค๊ณ„๋˜์–ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. Safe Failure ์„ค์ •์—์„œ๋Š” ์˜ˆ๋ฅผ ๋“ค์–ด ์Šค๋‹ˆํ•‘ ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์Šค์œ„์น˜ ์žฅ๋น„์— ARP Poisoning์„ ์‹œ๋„ํ•˜๋Š” macof ๊ณต๊ฒฉ์œผ๋กœ ๊ฐ€์งœ MAC ์ฃผ์†Œ๋ฅผ ์Šค์œ„์น˜ ์žฅ๋น„์— ํผ๋ถ€์–ด์„œ ์Šค์œ„์น˜ ํฌํŠธ์˜ MAC ์ฃผ์†Œ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ณต๊ฐ„(CAM)์„ ์ฑ„์›Œ๋ฒ„๋ฆฌ๋ฉด ์Šค์œ„์น˜๊ฐ€ ์ œ ๊ธฐ๋Šฅ์„ ํ•˜์ง€ ๋ชปํ•˜๊ณ  ํ—ˆ๋ธŒ์ฒ˜๋Ÿผ ์ž‘๋™๋˜๊ฒŒ ๋˜์ง€๋งŒ ๋„คํŠธ์›Œํฌ๋Š” ์—ฌ์ „ํžˆ ์ž‘๋™๋˜๊ฒŒ ํ•ด์ค€๋‹ค๋Š” ๊ฐœ๋…์ด๋‹ค. ์ด๋Ÿด ๋•Œ ์Šค์œ„์น˜๊ฐ€ ํ—ˆ๋ธŒ์ฒ˜๋Ÿผ ์ž‘๋™ํ•ด์„œ ๋„คํŠธ์›Œํฌ ์†๋„๋Š” ๋Š๋ ค์ง€๊ณ , ํ—ˆ๋ธŒ๋Š” ๋งค์šฐ ๋ณด์•ˆ์— ์ทจ์•ฝํ•ด์„œ ์œ„ํ—˜ํ•˜๋‹ค๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค. ๋ณดํ†ต ์ด๋Ÿฐ ๋„๊ตฌ๋“ค์€ ์‹œ๊ทธ๋‹ˆ์ฒ˜ ๊ธฐ๋ฐ˜๊ณผ ์ด์ƒ ํ–‰๋™ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ํŒจํ‚ท์„ ๊ฒ€์ถœํ•œ๋‹ค. 

 

์ด ๋‘ ๊ฐ€์ง€๋Š” ๋„คํŠธ์›Œํฌ ์žฅ๋น„์˜ ํŠน์„ฑ๊ณผ ๋ณด์•ˆ ๋ฐฉ์นจ์— ๋”ฐ๋ผ ๊ฒฐ์ •๋˜๋Š”๋ฐ ๋ฐฉํ™”๋ฒฝ(FW)์ด๋‚˜ ์นจ์ž…๊ฐ์ง€ ์‹œ์Šคํ…œ(IDS), ์นจ์ž…์˜ˆ๋ฐฉ ์‹œ์Šคํ…œ(IPS)์€ ์ผ๋ฐ˜์ ์œผ๋กœ Fail Safe ์›์น™์„ ๋”ฐ๋ฅธ๋‹ค. 

  ๋„คํŠธ์›Œํฌ์ƒ์˜ ํŠน์ • ํ˜ธ์ŠคํŠธ์— ๋ณด์•ˆ ๋„๊ตฌ๋ฅผ ์„ค์น˜ํ•˜๊ณ  ๋ณด์•ˆ ์นจํ•ด๋ฅผ ์„ค์ •ํ•ด์„œ ๋ชจ๋‹ˆํ„ฐ๋ง๊ณผ ๋ณด์•ˆ์„ ์ ์šฉ์‹œํ‚ค๋Š” ๋„๊ตฌ๋กœ 
โˆŽ ์™ธ๋ถ€์—์„œ ๋‚ด๋ถ€์˜ ํŠน์ • ํ˜ธ์ŠคํŠธ์˜ ์„œ๋น„์Šค๋‚˜ ํฌํŠธ๋กœ ์นจ์ž…ํ•˜๋Š” ๊ฒƒ์„ ๊ฐ์ง€ํ•ด์„œ ๋ง‰๋Š” Firewall(๋ฐฉํ™”๋ฒฝ) <=Web Firewall(.htaccess)
โˆŽ ๋‚ด๋ถ€ ๋„คํŠธ์›Œํฌ์— proxy๋‚˜ mail relay ๋“ฑ์„ ํ†ตํ•ด์„œ ๋‚ด๋ถ€ ๋„คํŠธ์›Œํฌ์—์„œ ๋ฐ”์ด๋Ÿฌ์Šค ์ „ํŒŒ๋ฅผ  ๋ง‰์•„์ฃผ๋ฉฐ ๋ผ์šฐํ„ฐ ์•„๋ž˜ ์Šค์œ„์น˜ ์žฅ๋น„ ๋ฐ–์— ๋‘๋Š” ๋‚ด๋ถ€ FireWall์˜ ์ผ์ข…์ธ  VirusWall(๋ฐ”์ด๋Ÿฌ์Šค ์›”)
โˆŽ ๋„คํŠธ์›Œํฌ์ƒ์˜ ์นจ์ž…์„ ์•Œ๋ ค์ฃผ๋Š” ์นจ์ž…๊ฐ์ง€ ์‹œ์Šคํ…œ IDS(Intrusion Detection System)    <=์นจ์ž…์ด ์žˆ์„ ๋•Œ ์•Œ๋ฆฌ๊ธฐ๋งŒ ํ•จ
โˆŽ ๋„คํŠธ์›Œํฌ์ƒ์˜ ์นจ์ž…์„ ๋ง‰์•„์ฃผ๋Š” ์นจ์ž…์˜ˆ๋ฐฉ ์‹œ์Šคํ…œ IPS(Intrusion Prevention System)    <=์นจ์ž…์ด ์žˆ์„ ๋•Œ ๋ฐฉ์–ด ์กฐ์น˜๋ฅผ ์ทจํ•จ 
โˆŽ ์ข…ํ•ฉ์ ์ธ ๋ณด์•ˆ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์ธ ํ†ตํ•ฉ ๋ณด์•ˆ๊ด€๋ฆฌ ESM(Enterprise Security Management)
โˆŽ ์œ„ํ˜‘๊ด€๋ฆฌ ๋„๊ตฌ๋“ค์„ ๋ฌถ์–ด๋†“์€ ํ†ตํ•ฉ ์œ„ํ˜‘๊ด€๋ฆฌ UTM(Unified Threat Management) 
โˆŽ ๋„คํŠธ์›Œํฌ์ƒ์˜ ๋…ธ๋“œ ์ถ”๊ฐ€ ๋“ฑ์„ ๊ด€๋ฆฌํ•˜๋Š” ์ ‘๊ทผ๊ด€๋ฆฌ NAC(Network Access Control) ๋“ฑ์„ ์•Œ์•„๋ณธ๋‹ค. 
  ํ˜„์žฅ์—์„œ ๋งค์šฐ ์ค‘์‹œํ•˜๋Š” ๋„๊ตฌ๋“ค์ด๋ฏ€๋กœ ์ž˜ ์•Œ์•„๋‘๋ฉด ์ข‹์„ ๊ฒƒ์ด๋‹ค.  

 

  ๊ทธ๋ฆฌ๊ณ  ๋‹ค์Œ์˜ ์šฉ์–ด๋„ ๋ณด์•ˆ์—์„œ ์ค‘์š”ํ•˜๋ฏ€๋กœ ์•Œ์•„๋‘์ž.
๏ฟญ ์œ„ํ—˜(risk)์€
โ‘  ์˜ˆ์ƒ๋˜๋Š” ์œ„ํ˜‘(threat)์— ์˜ํ•˜์—ฌ ์ž์‚ฐ(asset)์— ๋ฐœ์ƒํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋Š” ์†์‹ค์˜ ๊ธฐ๋Œ€์น˜
โ‘ก ์ž์‚ฐ์˜ ๊ฐ€์น˜ ๋ฐ ์ทจ์•ฝ์„ฑ๊ณผ ์œ„ํ˜‘ ์š”์†Œ์˜ ๋Šฅ๋ ฅ, ๋ณดํ˜ธ ๋Œ€์ฑ…์˜ ํšจ๊ณผ ๋“ฑ์— ์˜ํ•ด ์˜ํ–ฅ์„ ๋ฐ›์Œ
๏ฟญ ์œ„ํ˜‘(threat)์€ 
โ‘  ์ž์‚ฐ์— ์†์‹ค์„ ๋ฐœ์ƒ์‹œํ‚ค๋Š” ์ง/๊ฐ„์ ‘์ ์ธ ์›์ธ์ด๋‚˜ ํ–‰์œ„
โ‘ก ๋ณด์•ˆ์— ํ•ด๋ฅผ ๋ผ์น  ์ˆ˜ ์žˆ๋Š” ํ–‰๋™์ด๋‚˜ ์‚ฌ๊ฑด
๏ฟญ ์ทจ์•ฝ์ (vulnerability)์€ 
โ‘  ์œ„ํ˜‘์— ์˜ํ•˜์—ฌ ์†์‹ค์ด ๋ฐœ์ƒํ•˜๊ฒŒ ๋˜๋Š” ์ž์‚ฐ์˜ ์•ฝ์ (weakpoint)
โ‘ก ๊ธฐ๋Šฅ์˜ ์„ค๊ณ„ ๋˜๋Š” ๊ตฌํ˜„ ๋‹จ๊ณ„์—์„œ์˜ ์˜ค๋ฅ˜๋‚˜ ๋™์ž‘, ์„ค์น˜ ๋˜๋Š” ์šด์šฉ์ƒ์˜ ๋ฌธ์ œ์ ์œผ๋กœ ์ธํ•˜์—ฌ ์ •๋ณด ์‹œ์Šคํ…œ์ด ๊ฐ€์ง€๊ฒŒ ๋˜๋Š” ๋ณด์•ˆ์ƒ ์ทจ์•ฝ์ 
=>์ทจ์•ฝ์ ์ด ์ค‘๋ณต๋˜๋Š” ์ง€์ ์ด ์œ„ํ—˜ํ•˜๋‹ค๊ณ  ํ•˜๊ณ , ์‹ค์ œ ํ•ดํ‚น ๋“ฑ์œผ๋กœ ์นจํˆฌํ•˜๋Š” ํ–‰์œ„๋ฅผ ์œ„ํ˜‘์ด๋ผ๊ณ  ํ•˜๋ฉด ์œ„ํ˜‘์„ ํ†ตํ•ด์„œ ์กฐ์ง์˜ ์ž์‚ฐ์— ํ•ด๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค.


  ์ „๋ฌธ์ ์ธ ๋ชจ๋‹ˆํ„ฐ๋ง ๋„๊ตฌ๋“ค ์ค‘์—๋Š” ๋‹จ์ˆœํ•œ ๋ชจ๋‹ˆํ„ฐ๋ง๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋„คํŠธ์›Œํฌ ํŠธ๋ž˜ํ”ฝ ๊ฐ์‹œ์™€ ๋„คํŠธ์›Œํฌ๋‚˜ ํ˜ธ์ŠคํŠธ๋กœ ๋“ค์–ด์˜ค๋Š” ํŒจํ‚ท์„ ๋ถ„์„ํ•ด์„œ ์ผ๋ฐ˜์ ์ด์ง€ ์•Š๊ฑฐ๋‚˜(์ถœ๋ฐœ์ง€๋‚˜ ๋ชฉ์ ์ง€ IP ์ฃผ์†Œ๊ฐ€ ์—†๊ฑฐ๋‚˜, ์ž์‹ ์—๊ฒŒ ๋ฐ˜์†ก๋˜๋Š” IP_์ฃผ์†Œ, ๋„ˆ๋ฌด ๊ธธ๊ฑฐ๋‚˜ ์งง์€ ํŒจํ‚ท, ๋ชฉ์ ์ง€ ๋“ฑ์˜ ํฌํŠธ๊ฐ€ ์—†๊ฑฐ๋‚˜, ๋ณ€ํ˜•๋œ ํ—ค๋”, ์‚ฌ์„ค IP๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํŒจํ‚ท ๋“ฑ), ์•…์„ฑ ์ฝ”๋“œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฐœ๊ฒฌ๋˜๋Š” ํŒจํ„ด๊ณผ ์œ ์‚ฌํ•œ ํ˜•ํƒœ(๋ณ€์ข… ํฌํ•จ) ๋“ฑ์˜ ํŒจํ‚ท์„ ๊ฑธ๋Ÿฌ ๋‚ด๊ฑฐ๋‚˜ ์นจ์ž…์ž์˜ ์ž‘์—…์„ ์œ ์ถ”ํ•ด์ฃผ๊ธฐ๋„ ํ•œ๋‹ค.
  ๋˜ ํŒจํ‚ท์ด ๋“ค์–ด์™€์„œ ์–ด๋Š ์ž‘์—…์„ ํ•˜๋Š”์ง€ ํ™œ๋™์„ ๊ฐ์‹œํ•˜๋Š” ์‹œ์Šคํ…œ๋„ ์žˆ๋Š”๋ฐ ์ด๋“ค์€ ๋ฏธ๋ฆฌ ์ •์˜๋œ ๊ทœ์น™(rule)์— ๋”ฐ๋ผ์„œ ์ž‘๋™๋˜๋ฉฐ ์—ฌ๋Ÿฌ ์ง€์ ์—์„œ ๋“ค์–ด์˜จ ์ •๋ณด๋ฅผ ๋ถ„์„ํ•ด์„œ ์‹ค์ œ ์นจ์ž… ์œ ๋ฌด๋ฅผ ํŒ๋‹จํ•˜๊ธฐ๋„ ํ•œ๋‹ค. 

 

  ์นจ์ž…์˜ˆ๋ฐฉ ์‹œ์Šคํ…œ์€ ์นจ์ž…๊ฐ์ง€ ์‹œ์Šคํ…œ๊ณผ ์„ค์ •์ด ์œ ์‚ฌํ•˜๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์นจ์ž… ๊ฐ์ง€๋ฅผ ์•Œ๋ฆฌ๋Š” warn ์„ค์ •์„ drop ์„ค์ •์œผ๋กœ ๋ฐ”๊ฟ”๋‘๋ฉด ์นจ์ž…์ด ๋˜์ง€ ๋ชปํ•˜๋ฏ€๋กœ ์นจ์ž… ์˜ˆ๋ฐฉ(์ฐจ๋‹จ) ์‹œ์Šคํ…œ์ด ๋œ๋‹ค.  

 

  Firewall๊ณผ IDS, IPS ๋„๊ตฌ๋“ค์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณธ๋‹ค. 
  ์ด๋“ค์— ๋Œ€ํ•ด์„œ ๋ช‡ ๊ฐ€์ง€ ๊ตฌ๋ณ„ ๋ฐฉ๋ฒ•์ด ์žˆ์„ ์ˆ˜ ์žˆ์ง€๋งŒ ์ผ๋ฐ˜์ ์ธ ๋ถ„๋ฅ˜๋กœ๋Š” ๋„คํŠธ์›Œํฌ ์นด๋“œ(NIC)๊ฐ€ ํ•˜๋‚˜์ธ In-Line ๋ฐฉ์‹(๋…ธ๋“œ์˜ ๋„คํŠธ์›Œํฌ ์ฃผ์†Œ์™€ ๋ฐฉํ™”๋ฒฝ ์ฃผ์†Œ๊ฐ€ ๋™์ผํ•จ)๊ณผ NIC๊ฐ€ ๋‘ ๊ฐœ์ธ Out-of-Path ๋ฐฉ์‹(๋…ธ๋“œ์˜ ๋„คํŠธ์›Œํฌ ์ฃผ์†Œ๊ฐ€ ๋ฐฉํ™”๋ฒฝ์˜ ์ฃผ์†Œ์™€ ๋‹ค๋ฆ„)์ด ์žˆ๋‹ค.
โˆŽ In-Line์œผ๋กœ Snort, Fail2Ban, Suricata, OSSEC, ModSecurity, PacketFence์™€ ELK (ElasticSearch+Logstash+Kibana)๋ฅผ ์•Œ์•„๋ณด๊ณ ,
โˆŽ Out-of-Path๋กœ Linux FW, ASG(Astaro Security Gate), Untangle, Security Onion, FortiGate์™€ Endian์„ ์•Œ์•„๋ณด๋ฉฐ, 
โˆŽ Cloud Network Monitoring์œผ๋กœ Zabbix, MRTG(Multi Router Traffic Grapher), Cacti, Nagios์™€ Ganglia๋ฅผ ์•Œ์•„๋ณธ๋‹ค. 

 

 

  Snort
  Snort๋Š” ์นจ์ž…๊ฐ์ง€๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” IDS๋ฅผ ์ฃผ๋กœ ํ•˜์ง€๋งŒ IPS ์—ญํ• ๋„ ํ•ด์„œ ์™ธ๋ถ€๋กœ๋ถ€ํ„ฐ์˜ ์นจ์ž…์—ฌ๋ถ€๋ฅผ ๋น ๋ฅด๊ฒŒ ์•Œ๋ ค์ค€๋‹ค. Snort๋Š” sniffer mode, logger mode, ๊ทธ๋ฆฌ๊ณ  IDS/IPS mode๋กœ ์ž‘๋™๋  ์ˆ˜ ์žˆ๋Š”๋ฐ Snort๊ฐ€ ์ œ๋Œ€๋กœ ์ž‘๋™๋˜๋ ค๋ฉด AV์—์„œ์˜ ์•…์„ฑ์ฝ”๋“œ์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์žˆ์–ด์•ผ ํ•˜๋“ฏ์ด ์œ ํšจํ•œ ์นจํˆฌ์— ๋Œ€ํ•œ ๋ฃฐ์„ธํŠธ(Signature based) ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ž˜ ์œ ์ง€๋˜์–ด์•ผ ํ•˜๋ฏ€๋กœ rule.conf ํŒŒ์ผ ์„ค์ •์ด ์ค‘์š”ํ•˜๋‹ค. 

Promiscuous mode๋Š” ๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ๋‹ค๋ฅธ ๋ชจ๋“  ํŒจํ‚ท์„ ์ˆ˜์‹ ํ•˜๋„๋ก ์„ค์ •๋˜๋Š” ๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค์˜ ๋ชจ๋“œ์ž…๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ์—์„œ ์ธํ„ฐํŽ˜์ด์Šค๋Š” ์ž์‹ ์—๊ฒŒ ์ „์†ก๋œ ํŒจํ‚ท ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ๋ชจ๋“  ํŒจํ‚ท๋„ ์ˆ˜์‹ ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
๋ณดํ†ต ๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค๋Š” ์ž์‹ ์—๊ฒŒ ์ „์†ก๋œ ํŒจํ‚ท๋งŒ ์ˆ˜์‹ ํ•˜๊ณ , ์ด์™ธ์˜ ํŒจํ‚ท์€ ๊ฑฐ๋ถ€ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ promiscuous mode๋กœ ์„ค์ •๋˜๋ฉด ์ธํ„ฐํŽ˜์ด์Šค๋Š” ๋„คํŠธ์›Œํฌ ์ƒ์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ชจ๋“  ํŒจํ‚ท์„ ์ˆ˜์‹ ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ๋„คํŠธ์›Œํฌ ํŒจํ‚ท ๋ถ„์„ ๋ฐ ๋„คํŠธ์›Œํฌ ํ•ดํ‚น ๋“ฑ์˜ ์šฉ๋„๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
๋„คํŠธ์›Œํฌ ๊ด€๋ฆฌ์ž๋‚˜ ๋ณด์•ˆ ์ „๋ฌธ๊ฐ€๋Š” ์ด ๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋„คํŠธ์›Œํฌ ๋ฌธ์ œ๋ฅผ ์ง„๋‹จํ•˜๊ณ  ๋ณด์•ˆ ์ทจ์•ฝ์ ์„ ํƒ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด ๋ชจ๋“œ๋ฅผ ์•…์šฉํ•˜๋ฉด ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๋“ค์˜ ๊ฐœ์ธ์ •๋ณด ๋“ฑ์„ ์œ ์ถœํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ํ•ฉ๋ฒ•์ ์ธ ์šฉ๋„๋กœ๋งŒ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋”ฐ๋ด‰ ์ฑ—์ง€ํ”ผํ‹ฐ์•ผ ๊ณ ๋งˆ์›Œ~!

 

gedit /etc/snort/snort.conf

๋„คํŠธ์›Œํฌ ์ฃผ์†Œ์˜ ๋น„ํŠธ ์ˆ˜๋ฅผ 24๋กœ ํ‘œ์‹œ

ํ™ˆ๋„ท์— 192.168.100.0๋ถ€ํ„ฐ 2์˜ 8์Šน์ธ 256-1์ธ 255๊นŒ์ง€ ๋‹ค ๋ณด๊ฒ ๋‹ค. 

 

๋ง. var HOME_NET 192.168.100.128์ด๋ผ๊ณ  ๋”ฑ ํ•œ ๊ฐœ๋ฅผ ์งฑ ๋ฐ•์œผ๋ฉด ์ด ์„œ๋ฒ„ ํ•˜๋‚˜๋งŒ ์ง‘์ค‘์ ์œผ๋กœ ๋ณด๊ฒ ๋‹ค. 

 

192.168.100.0~255 ์ด์™ธ์— ๋ชจ๋“  ๋„คํŠธ์›Œํฌ๋ฅผ ์™ธ๋ถ€ ๋„คํŠธ์›Œํฌ๋กœ ๋งŒ๋“ค๊ฒ ๋‹ค. 

ssh rules๋ฅผ ์ถ”๊ฐ€

 

ls /etc/snort/rules

ls /etc/snort/rules |wc -l

 

cat -n /etc/snort/rules/icmp.rules

 

 

alert tcp any(๋‚ด๋ถ€๋“  ์™ธ๋ถ€๋“ ) any -> $HOME_NET 22(port๋กœ ์งฑ๋ฐ•๊ธฐ)  (msg:"SSH Login Attempts"; sid:0000001;) ๋กœ๊ทธ์ธ ์‹œ๋„๊ฐ€ ์žˆ์–ด ํ•˜๊ณ  ๊ฒฝ๊ณ ๋ฅผ ํ•จ

 

cat >> /etc/snort/rules/icmp.rules

alert icmp any any -> $HOME_NET any (msg:"ICMP Testing detected"; sid:100002;)

 

cat >> /etc/snort/rules/scan.rules

alert tcp any any -> $HOME_NET any (msg:"PORT SCANNING detected"; sid:100003;)

 

/etc/init.d/snort restart (very legacy)
=systemctl restart snort (modernized)
=service snort restart(a little bit legacy)์™€ ๊ฐ™์€ ๋ช…๋ น์–ด์ด๋‹ค.

 

์ง€์˜ฅ๊ฐ™์•˜๋˜ ์˜ค๋ฅ˜์žก๊ธฐ์—์„œ ํƒˆ์ถœ... (์›์ธ์€ ์˜คํƒ€...๋„์–ด์“ฐ๊ธฐ)

 

snort -h ํ•˜๋ฉด ์‚ฌ์šฉ๋ฒ•์ด ๋‚˜์˜ด

 

snort -q -A console -i eth0 /etc/snort/snort.conf

 

์šฐ๋ถ„ํˆฌ์— nmap์„ apt -y ๋กœ ์„ค์น˜ํ•ด์ฃผ๊ณ , 

 

ssh๋กœ centos ๋กœ๊ทธ์ธ์„ ํ•ด์ฃผ๋‹ˆ BT์—์„œ snort๋กœ ๋ชจ๋‹ˆํ„ฐ๋ง์„ ํ–ˆ๋‹ค. 

 


IPS์— ๊ฐ•ํ•œ - fail2ban 
  ์ด fail2ban์€ IPS๋กœ ์‚ฌ์šฉ๋˜๋Š”๋ฐ ์„œ๋ฒ„ ์„œ๋น„์Šค๋ฅผ ์‹คํ–‰์ค‘์ธ ์„œ๋ฒ„์— fail2ban์„ ์„ค์น˜ํ•ด๋‘๋ฉด ์™ธ๋ถ€์—์„œ์˜ ์˜์‹ฌ์Šค๋Ÿฐ ์นจํˆฌ๊ฐ€ ์žˆ์„ ๋•Œ ์ด๋ฅผ ๋ฏธ๋ฆฌ ๋ง‰์•„์„œ ์„œ๋ฒ„์˜ ๋ณด์•ˆ์„ ๊ฐ•ํ™”์‹œ์ผœ์ฃผ๋Š” ๋„๊ตฌ์ด๋‹ค. fail2ban-client๋Š” fail2 ban-server์˜ jail ์„ค์ • ๋“ฑ์„ ํ™•์ธ์‹œํ‚ค๋Š” ์ฝ˜์†” ๋ช…๋ น์–ด๋กœ์จ ์ผ๋ฐ˜์ ์ธ ์„œ๋ฒ„-ํด๋ผ์ด์–ธํŠธ ๊ฐœ๋…๊ณผ ๋ฌด๊ด€ํ•˜๋ฏ€๋กœ ์ฃผ์˜ํ•œ๋‹ค. fail2ban์˜ jail ์„ค์ •์— ๋”ฐ๋ผ ์„œ๋ฒ„ ๋จธ์‹ ์˜ ๋กœ๊ทธ ํŒŒ์ผ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•ด์„œ ์„œ๋ฒ„์— ์˜์‹ฌ์Šค๋Ÿฐ ํ˜ธ์ŠคํŠธ ์ ‘๊ทผ์„ ๊ฐ์ง€ํ•œ ๋’ค ํ•ด๋‹น IP๋“ค์„ ์ถ”๋ ค์„œ ์ฐจ๋‹จํ•ด์ค€๋‹ค. SNORT๊ฐ€ IDS ๋„๊ตฌ๋ผ๋ฉด FAIL2BAN์€ IPS ๋„๊ตฌ์ธ๋ฐ ์„œ๋ฒ„๋‚˜ ๋ฐฉํ™”๋ฒฝ์— ์„ค์ •ํ•ด์„œ ์‚ฌ์šฉํ•˜๋Š” ๋กœ๊ทธ๊ธฐ๋ฐ˜ ๋„๊ตฌ์ด๋‹ค. 

 

  ์„ค์ •์€ /etc/fail2ban/fail2ban.conf ํŒŒ์ผ์—์„œ ํ•ด์ค„ ์ˆ˜ ์žˆ์ง€๋งŒ ๊ธฐ๋ณธ์„ค์ •์„ ๊ทธ๋Œ€๋กœ ๋†”๋‘๊ณ  ์‚ฌ์šฉํ•ด๋„ ๋ฌธ์ œ๋Š” ์—†๋‹ค. ์˜์‹ฌ์Šค๋Ÿฐ ํ–‰๋™์ด ๋ช‡ ๋ฒˆ ํƒ์ง€๋˜๋ฉด ์–ด๋–ค ์•ก์…˜์„ ์ทจํ•ด์•ผํ• ์ง€ ์ด ํŒŒ์ผ์—์„œ 'ํ•„ํ„ฐ.์•ก์…˜' ๊ตฌ๋ฌธ์œผ๋กœ jail์„ ์ •์˜ํ•ด์ค€๋‹ค. 

 

yum -y install epel-release

yum update && yum -y install fail2ban

์ด๊ฑธ๋กœ ์„ค์น˜ํ•ด์ค€๋‹ค. 

 

gedit /etc/fail2ban/jail.conf

gedit /etc/fail2ban/fail2ban.conf

 

 

service fail2ban start

fail2ban-client set sshd addignoreip 192.168.100.134 192.168.100.133

chkconfig fail2ban --level 35 on

 

ํ˜„์žฌ ๊ฐ‡ํ˜€ ์žˆ๋Š” ์• ๋Š” ์—†๋‹ค. 

์ด์ œ ์‚ฌ๊ณ ๋ฅผ ์น˜๊ฒ ๋‹ค. 

 

 

๋ฐฑํŠธ๋ž™์—์„œ ๋กœ๊ทธ์ธ ์˜ค๋ฅ˜๋ฅผ ์„ธ ๋ฒˆ ๋ƒˆ๋”๋‹ˆ ๊ฐ์˜ฅ์— ๊ฑธ๋ ธ๋‹ค. 

 


yum -y install sendmail

 

firefox http://www.ruu.kr 


  DenyHosts 
  ์ด ๋„๊ตฌ๋„ Fail2Ban์ฒ˜๋Ÿผ IPS๋กœ ์‚ฌ์šฉ๋œ๋‹ค. ์›๊ฒฉ์—์„œ ์—ฌ๋Ÿฌ IP๋กœ ๋ฌด์ฐจ๋ณ„ ์—ฐ๊ฒฐ์„ ์‹œ๋„ํ•˜๋Š” DDoS ๊ณต๊ฒฉ์˜ ํ•ด์ปค๋ฅผ ๋ง‰๋Š” ๊ธฐ๋ฒ• ์ค‘ ํ•˜๋‚˜์ด๋‹ค. ์„œ๋ฒ„๊ฐ€ DDoS ๊ณต๊ฒฉ์—์„œ์™€ ๊ฐ™์ด ์‚ฌ์„ค IP๋‚˜ ์•Œ ์ˆ˜ ์—†๋Š” ๋ฌด์ˆ˜ํ•œ ์•…์„ฑ IP ์ฃผ์†Œ๋“ค์„ ๋ชจ๋‘ ๋ง‰์„ ์ˆ˜ ์—†์œผ๋ฏ€๋กœ ์—ฐ๊ฒฐ์„ ํ—ˆ์šฉํ•  IP ์ฃผ์†Œ๋งŒ ์ง€์ •ํ•ด๋‘๊ณ  ์„œ๋ฒ„์˜ Messages๋‚˜ Secure ๋กœ๊ทธ๋ฅผ ์ฝ์–ด์„œ ์ด๋Ÿฐ ์ด์ƒํ•œ IP ์ฃผ์†Œ๋‚˜ ๋„คํŠธ์›Œํฌ๋“ค์˜ ์—ฐ๊ฒฐ์„ TCPwrapper์˜ /etc/hosts.deny ํŒŒ์ผ์— ๋„ฃ์–ด์„œ ๋ง‰๋Š” ๊ธฐ๋ฒ•์ด๋‹ค. 
  TCPwrapper๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ /etc/hosts.allow ํŒŒ์ผ์„ ๋จผ์ € ๋ณด๊ณ  /etc/hosts.deny ํŒŒ์ผ์„ ๋‚˜์ค‘์— ๋ณด๋ฏ€๋กœ ์„ค์ •์€ ๋จผ์ € /etc/hosts.deny ํŒŒ์ผ์—์„œ ๋ชจ๋‘ ๊ฑฐ๋ถ€๋กœ ํ•ด๋‘๊ณ , /etc/hosts. allow ํŒŒ์ผ์—์„œ ํ•„์š”ํ•œ ๊ฒƒ๋“ค๋งŒ ํ—ˆ์šฉํ•ด์ฃผ๋ฉด ํ—ˆ์šฉํ•  ๊ฒƒ ์ด์™ธ์—๋Š” ๋ชจ๋‘ ๊ฑฐ๋ถ€๋œ๋‹ค.