חומר הלימוד, טיפים, מדריכים, ועוד.

מהוא פרוקסי והגדרתו בדפדפנים השונים

יום שישי, 10 באוקטובר, 2008

מהוא פרוקסי?
נתחיל עם ההגדרה המילונית ומיד לאחר מכן אסביר בקצרה "בשפת העם".

שרת פרוֹ‏קסי (באנגלית: proxy server; בתרגום חופשי: נציג, שליח, בא-כח) הוא שרת שתפקידו לספק גישה מהירה למשאבים חיצוניים ברשת מחשבים. הדבר מתאפשר באמצעות התקנת תוכנה על השרת שתפקידה לשמור דפי אינטרנט בזיכרון המטמון ולאפשר בכך גישה מהירה אליהם מהמחשבים המחוברים לפרוקסי. בחלק מהמקרים הפרוקסי משמש נקודת הפרדה בין הארגון לעולם החיצוני ומאפשר מעקב, חסימה או שינוי לדפי HTML על פי קריטריונים שונים. יש מקרים שהוא משמש למימוש SSO (מוריד הצורך בהכנסת שם לכל אפליקציה שונה) ולהוספת הגנות לדפי הארגון על פי הרשאת המשתמש. שרת פרוקסי מאפשר גם לחסום דפים עם תוכן לא־ראוי וגישה להורדות בלתי חוקיות.

——————-

"המתווך - Middle Name".
שירות/תוכנה שמקבל שיחה מצד הלקוח ויוצר שיחה חדשה ממנו לכיוון השרת המבוקש.
לפרוקסי מספר יתרונות:
1. הזדהות - פרוקסי יכול לבקש ממך הזדהות ועל סמך הזיהוי להחליט האם לפתוח או לא לפתוח בקשה לשרת המרוחק.
2. caching (קשינג) - ניתן להפעיל בפרוקסי קשינג, במידה והופעל, הפרוקסי ישמור אצלו את המידע שהוא מביא ללקוח. במידה שיגיע לקוח חדש ויבקש את אותו המידע, הפרוקסי יספק מידע זה מתוך המאגר הפנימי.
3. Security/אבטחה - Packet מהאתר המרוחק לא מגיע ללקוח אלא לשרת הפרוקסי, והפרוקסי יוצר Packet חדש מהפרוקסי ללקוח. אם ישנו Packet שבנוי בצורה פגומה שיכולה ליצור נזק לתחנת הקצה, מי שיספוג את ה- Packet הפגום הוא הפרוקסי.

לרוב, השימוש הנעשה בפרוקסי על ידי המשתמשים "הרגילים", הוא למטרת "עקיפת חסימה" של אתר כלשהוא בחו"ל אשר לא מציע את שירותיו לכלל העולם, במצב כזה גורמים לדפדפן לעמוד מאחורי שרת פרוקסי, אשר יתווך בין המחשב שלך לבין מחשב היעד, ויהווה מין חוצץ, כך שהמחשב (אתר אינטרנט לדוגמא) אליו אתם מתחברים, לעולם לא יראה את כתובת האייפי שלכם אלא את כתובת האייפי של שרת הפרוקסי אליו התחברתם, ושרת פרוקסי זה כבר ידאג להחזיר את המידע אליכם.

הגדרת פרוקסי HTTP בדפדפן FireFox (גרסא 3.03, זהה בשאר הגרסאות האחרונות גם כן):

ניגש לתפריט הכלים (Tools), נבחר באפשרויות (Options) וניגש ללשונית האחרונה: "מתקדם" (Advanced).
תחת לשונית Advanced נבחר בלשונית Network, ותחת Connection נבחר ב- Settings.

לאחר מכן נבחר באפשרות בשורה השלישית בכדי להגדיר את פרטי שרת הפרוקסי בצורה ידנית,
נכניס את כתובת האייפי של שרת הפרוקסי ואת הפורט, נלחץ "OK" לאישור.

הגדרות אלו יאפשרו לנו לגלוש כעת לאתרי אינטרנט (HTTP) מאחורי שרת הפרוקסי,
שימו לב שבאותו עמוד באפשרותכם להגדיר שרת פרוקסי לשירותים אחרים כגון SSL (גלישה מאובטחת), שרתי FTP ועוד.

* ישנם שרתי פרוקסי חינמיים אשר בדרך כלל לא יחזיקו מעמד זמן רב, ואהיו איטיים, לעומת שרתים בתשלום אשר יעניקו מהירות ויציבות בהתאם.

הגדרת פרוקסי HTTP בדפדפן Internet Explorer (גרסא 7, זהה בשאר הגרסאות האחרונות גם כן):

ניגש לתפריט כלים (Tools), נבחר באפשרויות אינטרנט (Internet Options), נעבור ללשונית Connections, ונבחר באפשרות LAN settings.

תחת Proxy Server נסמן ב- "וי" (V), את הריבוע שאומר לנו להשתמש בשרת פרוקסי, נכניס בשדה את כתובת האייפי והפורט של שרת הפרוקסי ונלחץ "OK" לאישור.
באם ברצונכם להגדיר שרת פרוקסי לשירות אחר מלבד HTTP לחצו על כפתור ה- Advanced בצד ימין של אותו חלון.

מפגש מספר 5 - חודש התנסות

יום שישי, 26 בספטמבר, 2008

להלן החומר אשר נלמד ונכתב במהלך המפגש החמישי של חודש ההתנסות, בתאריך ה- 26/09/2008.
חומר זה הינו "קדם קורס" ואינו חלק ישיר מחומר הלימוד בקורס של הלימודי MCITP.

פרוטוקול ARP:

פרוטוקול שתפקידו להביא את כתובת ה- MAC של המחשב איתו רוצים לדבר.
ARP משתמש ב- Broadcast על מנת לגלות את כתובת ה- MAC המבוקשת.
המחשב ישמור את תוצאת השאילתה של ה- ARP בטבלה בזיכרון, הרשומה תמחק לאחר 2 דקות, אם נעשה בה שימוש במהלך 2 הדקות היא תישמר ל- 10 דקות נוספות, וכך הלאה.
ניתן לראות את הטבלה על ידי שימוש בפקודת:
arp -a
עוד 2 פקודות יעילות של ה- arp הם:
arp -s אשר מאפשר להכניס רשומה סטטית שתישמר גם לאחר אתחול של המחשב.
arp -d מוחק את הטבלה הסטטית.

Virtual Lan - VLAN:

סוויטצ'ים סטנדרטיים יודעים לקרוא את כתובת ה- MAC בפאקט אך לא את כתובת ה- IP, כלומר בכל Broadcast הסוויטצ' יעביר את הפאקט לכלל העמדות (פורטים/יציאות).
ישנם סוויטצ'ים מתוחכמים יותר הנקראים Manage Switches או Switch 2.5, התקנים אלו מבינים את כתובת ה- IP של הפאקט וניתן להגדיר עליהם Vlans, אשר Vlan זה בעצם שיוך של מספר פורטים (פיזיים) בסוויטצ' לכתובת רשת (subnet) מסויימת.
אם אחד מהפורטים הנ"ל יבצע Broadcast, הסוויטצ' יעביר את ה- Broadcast רק לפורטים של אותו Vlan.

פורט (אייפי, לא חיבור פיזי):

כאשר מחשבים מתקשרים ביניהם, אפליקציה מסויימת על מחשב "א" צריכה להתחבר לאפליקציה על מחשב "ב". כתובת IP מזהה את המחשבים. מספר ה- Port מזהה את האפליקציה על אותו מחשב.

ישנם מספר כללים בקביעת מספרי ה- Port:
כאשר מחשב מעניק שירות (שרת) מסויים, כדוגמא דואר, שירות חיבור מרחוק (RDP) וכו', האפליקציות הנ"ל מאזינות ב- Port קבוע וידוע.
לדוגמא: Http Web עובד על פורט 80, Https web מאובטח עובד על פורט 443.
דוגמא נוספת: פרוטוקול דואר SMTP מאזין/עובד בפורט 25.

בגדול כל המספרי פורטים מ- 1 ועד 1024 שמורים לאפליקציות. מ- 1024 ועד 65,536 פורטים אלו "חופשיים".
כאשר פותחים דפדפן ומתחברים לשרת Web, הפורט אליו פונים הוא 80, הפורט של הדפדפן עליו אנו פועלים הוא ראנדומלי, מהטווח הנ"ל של 1024 ועד 65,536.
* כאשר נוצר חיבור של שרת ולקוח: IP+PORT ו- IP+PORT, מצב זה נקרא Socket.

TCP/UDP:

TCP: פרוטוקול שיושב ברמה 4 במודל ה- OSI (שבעת השכבות).
TCP מוודא שהמידע שנשלח מהמחשב שלי מגיע למחשב המרוחק. הוא עושה זאת על ידי שימוש במספר מנגנונים:
הקמת שיחה: לפני שהמידע נשלח הוא יוצר חיבור למחשב המרוחק, מוודא שהוא אכן מאזין ומסוגל לקלוט את המידע. רק לאחר מכן המידע נשלח. תוך כדי שליחת המידע TCP מוודא שהמידע הגיע בשלמותו, לאחר שכל המידע הועבר הוא סוגר בצורה מסודרת את השיחה.

UDP:
פרוטוקול ששולח את המידע אך לא מבצע בדיקות לוודא שהמידע אכן הגיע.

יתרונות וחסרונות:
TCP אמין יותר אך מוסיף הרבה "עומס" להתהליך כולו.
UDP קל יותר אך לא אמין כמו TCP.

FireWalls & Proxy:

ישנם סוגים שונים של Firewalls. ישנו Firewall אישי שרץ על התחנה ומגן רק עליה, וישנו Firewall רשתי שמגן על כלל המחשבים ברשת.

Firewall רשתי: יודע לזהות כיווניות, כלומר הוא יודע להבדיל בין המצב שמשתמש פנימי פנה לשרת Web (תקין) לבין מצב ששרת ה- Web פנה למשתמש מיוזמתו (לא תקין).

Firewalls גם בודקים את התעבורה שעוברת ברמת הפרוטוקול, Http, Ftp וכדומה. ה- Firewalls המתקדמים יותר גם יודעים לבחון את הפרוטוקולים הנ"ל ולחדש חריגות/חתימות של אפליקציות שאינם רצויות שמשתמשות בפרוטוקול, כג'ון Kazza, Emule ועוד.

Firewall אישי: לא יודע לבחון את הפרוטוקול באותה רמת פירוט אבל יודע לבדוק אילו אפליקציות מנסות להתחבר לאינטרנט.

Proxy/פרוקסי:

"המתווך - Middle Name".

שירות/תוכנה שמקבל שיחה מצד הלקוח ויוצר שיחה חדשה ממנו לכיוון השרת המבוקש.
לפרוקסי מספר יתרונות:
1. הזדהות - פרוקסי יכול לבקש ממך הזדהות ועל סמך הזיהוי להחליט האם לפתוח או לא לפתוח בקשה לשרת המרוחק.
2. caching (קשינג) - ניתן להפעיל בפרוקסי קשינג, במידה והופעל, הפרוקסי ישמור אצלו את המידע שהוא מביא ללקוח. במידה שיגיע לקוח חדש ויבקש את אותו המידע, הפרוקסי יספק מידע זה מתוך המאגר הפנימי.
3. Security/אבטחה - Packet מהאתר המרוחק לא מגיע ללקוח אלא לשרת הפרוקסי, והפרוקסי יוצר Packet חדש מהפרוקסי ללקוח. אם ישנו Packet שבנוי בצורה פגומה שיכולה ליצור נזק לתחנת הקצה, מי שיספוג את ה- Packet הפגום הוא הפרוקסי.

Arp Poisoning:

התקפה שבה תחנה זדונית דוחפת ללקוח את כתובת ה- MAC שלה וטוענת בפניו שזו היא כתובת ה- MAC של הראוטר.
מכיוון שבמנגנון ARP אין אלמנט של זיהוי, הקורבן יאמין למידע ושינסה לצאת לאינטרנט הוא ישלח את הבקשה לא אל הרטואר אלא אל התחנה התוקפת, שתנתב עבורו את השיחה דרך הנתב האמיתי. התחנה התוקפת תשמש כ- Man in the Middle.

הדוגמא: שימוש בכלי Cain שהודגם בשיעור.