Firewall in Perl by Chankey Pathak


Published on

Implementation of firewall (iptables) in Perl using dialog for GUI.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Firewall in Perl by Chankey Pathak

  1. 1. TRAINING REPORT ON SYS - FIREWALL Secure Your System A handy tool for System-Administrators Chandra Prakash Pathak 08EMTCS032 Computer Science Maharishi Arvind Institute of Engineering and Technology, Jaipur
  2. 2. Company Profile- Linux World • The best awarded Red Hat partner in India. • The company has been contributing a great deal to Linux Server & Networking industry by fulfilling its need for trained manpower in the field of Linux support, Networking, System Integration & Programming.
  3. 3. GREEN-HORNE PROJECT (An open source operating system) Module: SYS Firewall
  4. 4. What is a Firewall? A firewall is hardware, software, or a combination of both that is used to prevent unauthorized programs or Internet users from accessing a private network and/or a single computer.
  5. 5. How does a software firewall work? • Inspects each individual “packet” of data as it arrives at either side of the firewall • Inbound to or outbound from your computer • Determines whether it should be allowed to pass through or if it should be blocked
  6. 6. Firewall Rules • Allow – traffic that flows automatically because it has been deemed as “safe” (Ex. Meeting Maker, Eudora, etc.) • Block – traffic that is blocked because it has been deemed dangerous to your computer • Ask – asks the user whether or not the traffic is allowed to pass through
  7. 7. What a personal firewall can do • Stop hackers from accessing your computer • Protects your personal information • Blocks “pop up” ads and certain cookies • Determines which programs can access the Internet
  8. 8. What a SYS firewall can do • Authorizing users • Limiting access for the services • Filtering the packets • NATing • Masquerading
  9. 9. Requirements • Linux Kernel 2.4.x or higher • iptables • Perl 5.6 or higher • dialog
  10. 10. User interface with “dialog” dialog --title “Linux dialog utility infobox” --backtitle “Linux shell script tutorial” --infobox “This is a dialog box called infobox, which is used to show information on the screen, Thanks to Savio Lam and Stuart Herbert to give us this utility. Press any key…” 7 50;
  11. 11. Implementing iptables • Using Perl and dialog I build a GUI version of the iptables. Perl – For coding purpose dialog – For Graphical User Interface
  12. 12. How does it work? • Step 1 – Run the application (perl sys.xls) • Step 2 – Check required packages
  13. 13. • Step 3 – Authenticate User (password)
  14. 14. • Step 4 – Main Interface
  15. 15. • Step 5 – Customize rules
  16. 16. Dropping all policies • iptables -P INPUT DROP • iptables -P OUTPUT DROP • iptables -P FORWARD DROP
  17. 17. Block Ping iptables -A INPUT -p icmp --icmp-type echo-request -j DROP iptables -A OUTPUT -p icmp --icmp-type echo-reply -j DROP
  18. 18. A dynamic approach # iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # iptables -P INPUT DROP # iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  19. 19. SNAT • For static connections. • iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source <SERVER'S_EXTERNAL_IP>
  20. 20. Masquerade • For dynamic connections. • iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
  21. 21. DNAT • iptables -t nat -A PREROUTING -i ppp0 -p tcp -- dport 80 -j DNAT --to-destination
  22. 22. Extra services • Saving rules • Logging • Exit
  23. 23. THANK YOU! Any Queries?