14-08-2008, 11:56
|
|
|
חבר מתאריך: 08.06.06
הודעות: 873
|
|
סיקור| חיבור VNC ו NAT + עזרה קטנה עם SSH
במידה וזה לא שייך לפה אשמח אם יעבירו את זה למקום הנכון.
סיקור: (הקושי שלי הוא בסוף העמוד)
יש לי שני מחשבים שנמצאים מאחורי ראטור עם NAT וכל היציאות סגורות.
כל מחשב נמצא במיקום אחר.
אני מעוניין לחבר בין שני המחשבים ב VNC.
לULTRAVNC יש שני פתרונות לחיבור מאחורי NAT ,
1. הוא REPEATER למצב שבו יש לי רשת שלימה של מחשבים ב NAT ואני מנתב פורט אחד למשל 5901 למחשב\שרת ובו מותקן הREPEATER וכשאני רוצה להתחבר למחשב ברשת הפנימית אני שם את כתובת האיפי של הרשת\נתב\NAT\באינטרנט והיציאה הנ"ל וביעד אני שם את כתובת האיפי או שם של המחשב ברשת הפנימית + יציאת שרת ה VNC ואני מגיע אליו.
2.ה REPEATER במצב שונה שבו יש מחשב שמחובר ישירות לאינטרנט ללא חציצה או עם שתי יציאות פתוחות 5900 ו 5500 ב NAT\פיירוול במחשב השרת א' שנמצא מאחורי NAT וסגור מפעילים את שרת הVNC ומתחברים למחשב האמצע + הגדרת ID למחשב א על מחשב האמצע.
בשלב הבא מחשב ב' שיושב מאחורי NAT וסגור מתחבר למחשב האמצע ומקיש את ה ID של מחשב א' ומקבל שליטה עליו (ללא סיסמא).
אופציה 2 נחמדה לי מאד חוץ משני חסרונות:
אין סיסמא בחיבור לשרת(בעיית אבטחה).
ולאחר שמחשב ב' סוגר את החיבור מתנתק מחשב א' ממחשב האמצע וצריך להגדרי מחדש ידנית את החיבור לשרת האמצע.
ישנו פתרון נוסף לבעיה שם מכנים אותו NAT2NAT.
הרעיון הוא שיש שרת אמצע כל שהוא בין לאומי שיושב באינטרנט שנקרא NH.
מפעילים על מחשב א' תוכנה בשם NSC מגדירים ידנית סיסמא ושם משתמש, מפעילים את שרת(או שזה מפעיל אותו ידנית לא בראש שלי לבדוק עכשיו) ה VNC מגדירים סיסמא ומחכים.
במחשב ב' שמעוניין להתחבר מפעילים את תוכנה בשם NVC ומקישים את את שם המשתמש והסיסמא שהקשנו במחשב א' בתוכנת ה NSC + מקישים את הסיסמא של שרת מחשב א' ומתחברים.
האפשרות הזאת מאד נחמדה אבל יש לה חסרון מסויים.
בכל הפעלה של תוכנת ה NSC יש צורך להגדיר את שם המשתמש והסיסמא מחדש.
וישנו חלון DEBUGGING מעצבן שמראה את מצב מול שרת ה NH שנפתח כל 10 שניות מחדש הווה אומר תוך דקה יש לך 6 חלונות פתוחים.
(לא ניתן להשתמש בה כ SERVICE או בעת עליית המחשב).
וכמובן אתה תלוי בשרת ה NH.
בשביל להתגבר על הבלאגן חשבתי על הכיוון של שרת VPN אבל אצלי זה לא ישים.
לכן חשבתי על TUNNELING דרך שרת SSH.(שאגב עונה על בעיות אבטחת הנתונים)
יש לי שרת SSH חינמי FreeSSHd ואני משתמש או ב PUTTY או ב PLINK בשביל להתחבר לשרת ה SSH.
בשרת ביטלתי את אפשרות ה SFTP TELNET ו SHH והשארתי רק את אפשרות ה TUNNELING + אפשרתי לעשות Local ו Remote Port forwarding.
כך שכשאני יוצר התקשרות לשרת ה SSH אני מקיש שם משתמש וסיסמא או לחלופין באמצעות PLINK הגדרתי קובץ BATCH \LNK עם שם המשתמש והסיסמא והגדרות החיבור בשם SSHC.BAT.
כשאר אני מפעיל את PLINK נשאר לי חלון פתוח שכל אחד יכול לסגור.
אז מצאתי סקריפט VBS שמפעיל את PLINK בדומה ל SERVICE (נסתר מהעין) וניתן לראות אותו בחלון התהליכים של חלונות.(עובד בחלונות 2000 ומעלה).
הנה הסקריפט:
קוד:
Const HIDDEN_WINDOW = 12
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set objStartup = objWMIService.Get("Win32_ProcessStartup")
Set objConfig = objStartup.SpawnInstance_
objConfig.ShowWindow = HIDDEN_WINDOW
Set objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")
errReturn = objProcess.Create("notepad.exe", null, objConfig, intProcessID)
מחליפים את הקובץ
NOTEPAD.EXE
בפקודה שאתה רוצה לבצע\ התוכנה שאתה רוצה להפעיל.
עד כאן הכל יפה.
בנסיון הראשון שלי בדקתי חיבור לשרת SSH ודרך ה TUNNEL להתחבר לשרת ה VNC על המחשב עם שרת ה SSH.
בשורת הפקודה של PLINK זה מה שהכנסתי.
קוד:
Plink -l user1 -pw 12345 -L 5900:127.0.0.1:5900 myhost.biz
בשרת ה VNC אפשרתי חיבור מ LOOPBACK = 127.0.0.1 \ Localhost.
(myhost.biz = כתובת לוגית או כתובת איפי של שרת ה SSH.)
בשלב הזה פתחתי את VNCVIEWER ובכתובת הכנסתי 127.0.0.1:5900 והתחברתי בלי בעיות לשרת הVNC דרך SSH.
עוד אופציה זה להתחבר למחשב למחשב כל שהוא שיש לשרת ה SSH גישה אליו.
פשוט משנים את 127.0.0.1 לכתובת האיפי של מחשב שנמצא בתוך אותה הרשת שלשרת ה SSH יש גישה אליו.
פה נתקעתי
עכשיו לשלב הבא: חיבור שני מחשבים שמאחורי NAT ללא יציאות פתוחות. לשרת ה SSH ושליטה מרחוב ב VNC או חיבור כל שירות\שרת אחר ביניהם.
אני לא הצלחתי להבין מה אני צריך לכתוב בשורת הפקודה של PLINK או לחלופין מה צריך להגדיר ב PUTTY בשביל שאני אוכל ליצור ניתוב נתונים בין מחשב א' לב' ו\או הפוך.
אשמח אם תתנו לי פקודות מדוייקות למקרה שלי זה יציאה 5900, פשוט ראיתי באתר של PLINK הסבר על התוכנה אבל הראש שלי לא מצליח להבין מה הולך שם.
קישור להסבר על שימוש בתעלות בתוכנה
PUTTY
אם יש אפשרות לשמור את הסיסמא לשרת אשמח מאד לדעת עליה.
תודה לכל מי שאפילו הציץ על זה.
נערך לאחרונה ע"י hack2003 בתאריך 14-08-2008 בשעה 12:01.
|