סקירת פרויקט ממשק משתמש ל IPTables\IPChains מגישים: רוברט ביטרפלד ואוהד רוטביין-שר.

Slides:



Advertisements
Similar presentations
ממיבחניםC שאלות ++.
Advertisements

מבוא למדעי המחשב לתעשייה וניהול
1 Formal Specifications for Complex Systems (236368) Tutorial #4 Refinement in Z: data refinement; operations refinement; their combinations.
T HE PROBLEM …. Chat clients are mostly based on servers : Server crash will affect all users. High server overload. Speed of the server is a bottleneck.
טבלאות סמלים נכתב ע"י אלכס קוגן סמסטר חורף, תשס"ח.
מבוא כללי למדעי המחשב תרגול 1. כתיבת התוכנה כתיבת התוכנית עצמה נעשית ע " י כתיבת קובץ טקסט רגיל אשר תוכנו מקיים את כללי שפת C כתיבת התוכנית עצמה נעשית.
מערכות הפעלה ( אביב 2009) חגית עטיה © 1 מערכות קבצים מבוזרות  מבוא  מבנה כללי  דוגמה : Network file system  דוגמה : Google file system.
הגנה במערכות מתוכנתות חורף תשס"ד הרצאה 7 Firewalls ספרות : Chapman, Zwicki. Building Internet Firewalls. O’Reilly, Cheswick, Bellovin. Firewalls.
פרוייקט מסכם-עיבוד מקבילי
מערכות הפעלה ( אביב 2008) חגית עטיה © 1 מערכות קבצים מבוזרות  מבוא : שקיפות ושמירת מצב.  דוגמה : Network File System.
אקסס מבוא למערכות מידע.
כתיבת עבודת גמר מבנה העבודה  מבחינה צורנית - יש להקפיד על אחידות בכתיבה  כותרות אחידות  רווחים זהים, פונט בגודל אחיד (12, רווח וחצי)  הצגת.
A smart phone application for sales agents בס"ד.  סוכני מכירות מגיעים ללקוח ומבצעים הזמנות ע " פ דרישות הלקוח  סוכן המכירות נעזר בקטלוג מוצרים, טלפון.
תרגול 8.5 – מודל השכבות, מבוא ל-TCP/IP
Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי שולמן אלדד שי מבצעים: גליה סימנובסקי.
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
מכון ויצמן למדע - שמוליק מתוך 8 חישוב מקבילי ומבוזר מה זה יחידה חמישית במדעי המחשב... n ענף מתקדם במדעי המחשב העוסק במערכות ממוחשבות מרובות ישויות.
מערכות הפעלה ( אביב 2004) חגית עטיה © 1 מערכות קבצים מבוזרות  מבוא : שקיפות ושמירת מצב.  דוגמה : Network File System.
מה החומר למבחן ? כל החומר שנלמד בהרצאות ובתרגולים. לגבי backtracking: לא תידרשו לממש אלגוריתם, אך כן להבין או להשלים מימוש נתון. אחת משאלות המבחן מבוססת.
מערכות הפעלה ( אביב 2009) חגית עטיה © 1 אפליקציות שרת - לקוח  פרדיגמת שרת לקוח  מושג ה socket  מבנה שרת - לקוח  קצת יותר על רשתות.
ינואר 2003אלן אזאגורי ©1 Object Storage אלן אזאגורי.
FFinder Application on Android OS by Roman Nassimov & Evgeny Erlihman Final presentation.
A. Frank File Organization Indexed-Sequential File Introduction Thanks to Tamar Barnes.
1 Formal Specifications for Complex Systems (236368) Tutorial #5 Refinement in Z: data refinement; operations refinement; their combinations.
Formal Specifications for Complex Systems (236368) Tutorial #6 appendix Statecharts vs. Raphsody 7 (theory vs. practice)
ברוכים הבאים למת"ם! אדמיניסטרציה מטרת הקורס: לימוד תכנון וכתיבת תוכניות מורכבות תוך שמוש בכלי פתוח תוכנה מתקדמים. אתר הבית:
ספריה וירטואלית בטכנולוגית J2EE הטכניון – מכון טכנולוגי לישראל הפקולטה להנדסת חשמל המעבדה למערכות תוכנה עזרן אייל טרבלסי אורדן סמסטר חורף תשס " ד מנחה.
מערכות הפעלה ( אביב 2009) חגית עטיה ©1 מערכת קבצים log-structured  ה log הוא העותק היחיד של הנתונים  כאשר משנים בלוק (data, header) פשוט כותבים את הבלוק.
תהליכים  מהו תהליך ?  מבני הנתונים לניהול תהליכים.  החלפת הקשר.  ניהול תהליכים ע " י מערכת ההפעלה.
SSDL פרויקט שנתי בהנדסת תוכנה שחר דג אודות שירותים מחשבים (מי הכי מהיר) הדפסה תוכנה עזרה שאלות נפוצות באתר המעבדה
פרויקט שנתי במערכות מידע /6
מערכות הפעלה חזרה. מערכות הפעלה - שאלות חזרה2 (c) רסקין לאוניד 2005 שאלה 1 int X = 1, p1 = 0, p2 = 0; int ProcessA() { printf("process A\n"); while(X);
SIP based VoIP conference server by Roman Nassimov & Evgeny Erlihman Final presentation.
מרץ 2002אלן אזאגורי ©1 חוטים Threads. מרץ 2002 אלן אזאגורי ©2עמוד נושאים הגדרות –חוטים –חוטים לעומת תהליכים תמיכת מערכת ההפעלה בחוטים דוגמאות –Mach –Windows.
טיב פני שטח (טפ"ש) טיב פני שטח- רמת החלקות של המשטח.
by Sagiv Frankel & Ayana Wiener, Advised by Dr. Chen Keasar Advised by Dr. Chen Keasar & Mr. Ran Yahalom & Mr. Ran Yahalom.
מערכות הפעלה ( אביב 2006) חגית עטיה © 1 סיכום הקורס.
Bus Project Yaniv Stern Rachel Stahl Instructor: Ari Todtfeld.
A. Frank File Organization Introduction to Pile File.
תפקידים פונקציונליים עיקריים של WINDOWS ממשק גרפי : הפעלת תכניות ומתן פקודות בעזרת כלים גרפיים ותפריטים. הפעלה בו - זמנית של מספר תכניות : * חלוקת זיכרון.
1 By Yuval Sittin & Shay Schlafman Technion 2 יעדי הפרוייקט בנית כלי תקשורת רב-תכליתי בדגש על פשטות הפעלה. הכרת השלבים בתכנון פרויקט תוכנה. לימוד שפת.
רשת האינטרנט ויישומיה האינטרנט היא הרשת הגדולה ביותר בעולם המקשרת בין מחשבים ואנשים המפעילים אותם במדינות רבות בעולם. ב העריכו שהאינטרנט מקשרת קרוב.
Safari On-line books. מה זה ספארי ספארי זו ספריה וירטואלית בנושא מחשבים היא כוללת יותר מ כותרים כל הספרים הם בטקסט מלא ניתן לחפש ספר בנושא מסוים.
Text to speech In Mobile Phones איתי לוי. הקדמה שימוש בהודעות טקסט על המכשירים הסלולארים היא דרך תקשורת מאוד פופולארית בימינו אשר משתמשים בה למטרות רבות,
מערכות הפעלה ( אביב 2008) חגית עטיה © 1 מערכת הקבצים  מבוא : מטרות מערכת קבצים  מנשק המשתמש : פעולות על קבצים, ארגון קבצים, הגנה  תכונות של דיסקים.
WEB OF SCIENCE. WEB OF SCIENCE  Science Citation Index ExpandedTM  Social Sciences Citation Index®  Art & Humanities Citation Index®
תכנות תרגול 1 שבוע : צור קשר מתרגל – ליעם רודיטי, ביה " ס למדעי המחשב. מתרגל – ליעם רודיטי, ביה " ס למדעי המחשב. דואר אלקטרוני :
21% 44% 29% 4% 2% 14% 5% 1%1% 1% Worldwide public IT Cloud Services Revenue in 2017 Public IT cloud services spending reached $47.4 billion in 2013,
פיתוח מערכות מידע Class diagrams Aggregation, Composition and Generalization.
תכנון השעור מבוסס על שאלה 3 במבחן המסכם ( מועד א ' ) 2010.
תכנות אסינכרוני, תקשורת ופיתוח אפליקציות ל- Windows 8.1 ואפליקציות ל- Windows Phone 8 Control (Part II)
Yaron Doweck Yael Einziger Supervisor: Mike Sumszyk 1.
דוח אמצע סמסטר אביב תשס"ב 2002 שם הפרויקט :סביבת בדיקה ל PCIX PCIX environment מנחה : איתי אדר מגישים : שמיל ניסימוב גוילי יואב הטכניון.
מצגת סוף סמסטר מנחה: ד"ר גבי נקבלי מגיש: ויקטור מרגוליס
Object Oriented Programming
Object Oriented Programming
Object Oriented Programming
תקשורת מחשבים "מודל OSI" Open System Interconnection reference model
תקשורת ומחשוב תרגול 1 IP, Classes and Masks.
תרגול 10 – חומות אש – Firewalls
עבודה עם נתונים באמצעות ADO.NET
Practical Session 11 File Systems, part 2
Practical Session 11 File Systems, part 2
מבוא ל Maven אליהו חלסצ'י תכנות מתקדם תרגול מספר 3
© Keren Kalif Servlet קרן כליף.
מנחה אקדמי : ד"ר יובל אלוביץ
תקשורת ומחשוב תרגול סוקטים.
למה.
תזכורת על מה דיברנו שיעור שעבר? בנינו אתר אינטרנט עם כותרות
Shell Scripts בסביבת UNIX
Presentation transcript:

סקירת פרויקט ממשק משתמש ל IPTables\IPChains מגישים: רוברט ביטרפלד ואוהד רוטביין-שר

מטרות הפרויקט בניית ממשק אינטרנטי לIPtables לימוד יסודות של תקשורת נתונים הכרת IPTables\IPChains ושימושיו –Firewall –NAT הכרת מערכות UI אינטרנטיות: –PHP –Java Applet + Servlet

מוטיבציה : IPTables היא מערכת מסובכת להפעלה.( והנה המדריך למערכת ).

במערכת שאותה בנינו ניתן לשלוט בעזרת מספר לחיצות עכבר.

מה עושים עם IPTables בכלל ? Firewall – כלי לשמירה על הרשת הפנימית ע"י סינון חבילות הIP לפי חוקיות מסויימת. NAT – כלי למימוש רשת שלמה תחת כתובת IP אחת ע"י החלפה בין ריבוי כתובות IP (בתוך הרשת) לכתובת IP אחת עם הרבה Port-ים (מחוץ לרשת) כל רעיון נוסף שניתן לממש ע"י משחק בחבילות IP על פי חוקיות מתאימה.

מבנה הפרויקט : הפרויקט מתחלק ל2 חלקים: –ממשק משתמש בJAVA Applet/Servlet הרץ על שרת tomcat –סוכן הכתוב בC ומורץ ע"י cron עם הרשאות root

clientserver agent סביבת העבודה back to back fire wall ה agent נמצא במקום הבטוח ביותר ( הגישה היחידה המותרת היא מהא tomcat) שרת ה tomcat נמצא באזור החיץ, קיימת אליו גישה מהאינטרנט אין גישה ישירה מהאינטרנט ל agent

הלקוח ה UI מבוסס על applet שהלקוח מקבל משרת הweb ומתקשר עם ה servlet. applet היא תכנית java קטנה הרצה על הדפדפן של הלקוח. בפרויקט שלנו רץ על דפדפן הלקוח class היורש מapplet ויוצר את מבנה הUI באמצעות הספריה Swing client

השרת העבודה בצד השרת מבוססת על servlet -תוכנית java הרצה בצד השרת ומממשת DoGet וDoPost בדומה ל CGI script. ה servlet מנתח בקשות של הלקוח ומחזיר נתונים בהתאם או משנה את מבנה הנתונים לפי בקשת הלקוח הservlet מתקשר עם הAgent באופן מסונכרן ומושך את מצב החוקים הנוכחי או דוחף מצב חוקים חדש ודורס את הקיים. התקשורת בין השרת וה agent מבוססת על קבצים. server

חלוקת המחלקות בין השרת והלקוח (Java classes) Server side common GUI 1. המניע העיקרי לבחירת צורת החלוקה היה העברת מינימום מחלקות בין השרת ללקוח. 2. כדי שהשרת והלקוח יוכלו להעביר מידע ביניהם עליהם להכיר מספר מחלקות משותפות הפתרון הוא הפרדה ל 3 חבילות (package) שרת לקוח משותף בשרת יש את כל המחלקות המטפלות בקבצים ובתקשורת עם ה agent בלקוח יהיו כל המחלקות המגדירות את ממשק המשתמש במחלקה המשותפת תהינה מחלקות המחזיקות את המידע על החוקים וקבועים נוספים.

קבצים להעברה מהשרת הסוכן : כל דקה מופעל הסוכן ובודק האם התקבל סימן מהשרת. גם אם לא, מתבצע עדכון של הקבצים אל השרת על פי הנתונים המתקבלים מ IPTable טבלת filter טבלת nat טבלת mangle הסוכן - agent תכנית C טבלאות iptables IPTABLES Iptables-save קבצים להעברה אל השרת טבלת filter טבלת nat טבלת mangle קובץ הגדרות

קבצים להעברה מהשרת הסוכן : כאשר מתקבל איתות מהשרת מתבצעת השמה של הנתונים מהשרת לתוך IPTables ואחר כך מעודכנים הקבצים אל השרת. טבלת filter טבלת nat טבלת mangle הסוכן - agent תכנית C טבלאות iptables IPTABLES Iptables-save קבצים להעברה אל השרת טבלת filter טבלת nat טבלת mangle קובץ הגדרות

התקשורת בין השרת והסוכן : העברת הנתונים נעשית ב3 קבצי טבלאות שמספר העמודות בהם N מוגדר מראש, והתו המפריד בין שדה לשדה הוא Newline. בקבצים אלה כל N שורות הן שורה בטבלה. הסנכרון בין השרת לסוכן נעשה באמצעות 3 דגלים (קבצים המכילים את הספרה 1 או 0). דגל לכל אחד מהצדדים המורם כשאותו צד מתחיל לעבוד ומורד כשהוא מסיים ודגל נוסף שבאמצעותו מסמן השרת לסוכן כי יש לבצע השמה של חוקים לIPTables

Demo

מה למדנו Server –עבודה מול שרת tomcat –עבודה עם webserver ו servlet conteiner PHP – השתמשנו בשפה בכדי לבנות UI מקביל לקיים –למדנו את מגבלות השפה Networking –ipTables –מודל 7 השכבות –ניתוב ברשת –הגנה Java –Servlet –Applet –UI-swing –RMI

בעיות שעברנו התחלנו במימוש ה UI בטכנולוגית CGI בשפת PHP –נחיתות מבחינה גרפית –מעט מדי out of the box

בעיות מעבר מסביבת windows ל Linux –עיקר פיתוח ה UI היה בסביבת windows בעיות security של java –Applet לא assigned לא יכול לבצע בקשה לתקשורת ללא אישור Bugs

כלים Intellij - כלי פיתוח ל java, אשר נותן גם יכולות UI מצוינות Zend – כלי לפיתוח php Dreamweaver – כלי לעיצוב ופיתוח אתרי איטרנט Visual studio – כלי פיתוח ל C\C++

אפשרויות לפיתוח נוסף הצפנה בתקשורת בין server ל סוכן ניצול אפשרויות רבות נוספות הקיימות בIPTables פיצול בין השרת לסוכן הוספת ניתור זמן אמת החיבורים הפעילים ברשת