방화벽을 제작하고자 합니다.

shrtngo의 이미지

이번에 학부 2학년생들 한 5~6명 정도 해서 리눅스 기반으로 방화벽을 만들어 보고자 합니다.
기한은 관련 공부나 그런것들 해서 한 9~10월 정도까지 잡고 있고요

그런데 참.. 한창 의욕 넘칠때라 의지는 강한데
뭐부터 시작해야 할지 참 난감하네요 ^^

다들 유닉스 시스템 프로그래밍쪽이랑 소켓쪽만 달랑 배워놓고 그다음에 뭘 봐야할지 여기 저기서 뒤져 보다가 결국 여기에 질문 올립니다.

우선 하고자 하는 것은
iptable이나 libpcap쪽에서 지원하는 인터페이스를 이용하기 보다는 직접 패킷을 캡쳐해서 거기서 관련 정보를 처리해서 막던지 통과시키던지 하는 것을 구현해보고자 합니다.

이렇게 하려고 할 때 꽤 깊게 Low Level로 갈 것 같은데, 어느쪽을 공부해야 좋을까요?
일단은 Kernel Programming, Device Driver Programming쪽 책을 보려고 하고 있고
찾아보다가 netfilter이란 것도 보이길래 알아보고 있습니다.(사실 iptable,libpcap이쪽도 찾아보다가 알게 된거거든요 ^^) 참, platform-free하게 짜려고 한다면 제가 말하는 쪽으로 프로그래밍 하면 많이 힘든가요?

고수분들 답변 부탁드리겠습니다. ^^ 좋은 밤 되세요

monovision의 이미지

iptables 가 netfilter 의 front-end 입니다. ^^;;;
커널단(커널 모듈 형태) 까지 간다면 아마... netfilter 에 hook 을 등록해서 처리하는 방법이 있었던 것으로 기억하고요...
사용자 모듈 형태로 간다면 netfilter 의 라이브러리를 이용해도 되구요.
pcap 으로 패킷 캡쳐 후 처리하기는 조금 힘들지 않나 보여집니다.

윈도우에서는 기술 문서 상으로는 리눅스보다 조금 더 쉬웠던 걸로 기억합니다.
( 해보진 않았습니다. ㅡ.ㅡ;;; 친절한 MSDN ! )

shrtngo의 이미지

오랫동안 답글이 안보이길래 안달리는구나 생각했다가 이제야 답글 달린 것 확인했네요

답변 고맙습니다~ 지금은 네트워크 디바이스 드라이버쪽으로 해보고 있어요 ^^

한번 잘 해보겠습니다

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.