דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. רשתות
  3. API לפתיחת וסגירת פורט 3389 לRDP לעולם החיצוני באמצעות PHP

API לפתיחת וסגירת פורט 3389 לRDP לעולם החיצוני באמצעות PHP

מתוזמן נעוץ נעול הועבר רשתות
15 פוסטים 6 כותבים 683 צפיות 5 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ח חוקר

    יצרתי לעצמי API שאני יכול ממחשב מרוחק לגשת לIP (הקבוע) של המחשב שלי ולפתוח לעצמי פורט שיחובר לפורט 3389 עבור חיבור לשולחן עבודה מרחוק.
    הרעיון הוא שכל הזמן אין פורט שמופנה לRDP, ורק בעת הצורך פותחים או סוגרים את החיבור
    זה נועד לתוספת אבטחה.
    להלן הקוד
    זה נכתב בהתאם לראוטר D-LINK 225
    הרעיון הוא שעבור פתיחת פורט ניגשים לכתובת של הדף
    http://31.31.31.31/openport.php?action=open
    ועבור הסגירה ניגשים כך
    http://31.31.31.31/openport.php
    כמובן יש לשנות לכתובת הIP הנכון
    וכן להשים את שם הקובץ בו שמרתם את הקוד
    וכן יש לוודא ששמתם את שם המשתמש והסיסמא הנכונים של הראוטר
    וכן לוודא שהמחשב המארח נמצא בכתובת 10.0.0.1 או להחליף בקוד לכתובת הנכונה
    ניתן לשנות את הפורט המאזין לכל פורט אחר כמובן

    <?php
    
    $username = 'Admin';
    $pass = 'Admin';
    
    $header = 'Content-Type: application/x-www-form-urlencoded'.
        "\r\n" . 'Cookie: username=' . $username . '; password=' . $pass . '';
    
    $opts = array('http' =>
        array(
            'method'  => 'GET',
            'header'  => $header,
            'follow_location' => false
        )
    );
    
    $context  = stream_context_create($opts);
    
    $Login = file_get_contents('http://10.0.0.138/login.cgi?web_login_name=' . $username . '&web_login_pass=' . $pass . '&loginfo=on&loginId=Login', FALSE, $context);
    
    $form = file_get_contents('http://10.0.0.138/scvrtsrv.html', FALSE, $context);
    $form = explode('&sessionKey=', $form);
    $sessionKey = explode("'", $form[1])[0];
    //print_r($sessionKey);
    $eStart = '5546'; //תחילת פורט נכנס
    $eEnd = '5546'; //סיום פורט נכנס
    $iStart = '3389';
    $iEnd = '3389';
    if (isset($_GET['action']) && $_GET['action'] == 'open') {
        $open = 'http://10.0.0.138/scvrtsrv.cmd?action=add&srvName=RDP&dstWanIf=ppp1.1&srvAddr=10.0.0.1&proto=1,&eStart=' . $eStart . ',&eEnd=' . $eEnd . ',&iStart=' . $iStart . ',&iEnd=' . $iEnd . ',&sessionKey=' . $sessionKey;
        $open2 = file_get_contents($open);
        print_r($open2);
    } else {
        $delete = 'http://10.0.0.138/scvrtsrv.cmd?action=remove&rmLst=10.0.0.1|' . $eStart . '|' . $eEnd . '|TCP|' . $iStart . '|' . $iEnd . ',&sessionKey=' . $sessionKey;
        $delete2 = file_get_contents($delete, FALSE, $context);
        print_r($delete2);
    }
    
    $LogOut = file_get_contents('http://10.0.0.138/logout.cgi', FALSE, $context);
    
    איש ימיניא מנותק
    איש ימיניא מנותק
    איש ימיני
    כתב ב נערך לאחרונה על ידי
    #6

    @חוקר
    זה דורש התקנת PHP במחשב?
    וא"כ דורש גם פתיחת פורט 80?

    ח תגובה 1 תגובה אחרונה
    0
    • MusiCodeM מנותק
      MusiCodeM מנותק
      MusiCode
      כתב ב נערך לאחרונה על ידי
      #7

      עדיף פייתון, כדי ליצור קובץ נייד.

      בכל אופן, הרעיון טוב.
      רק סיסמא תשלב, כמובן...

      אני עשיתי כזה דבר להוסיף את עצמי לחומת האש בשרת אסטריסק.
      רק צריך להריץ את זה בכל הפעלה וכיבוי של הראוטר...

      ח תגובה 1 תגובה אחרונה
      1
      • איש ימיניא איש ימיני

        @חוקר
        זה דורש התקנת PHP במחשב?
        וא"כ דורש גם פתיחת פורט 80?

        ח מנותק
        ח מנותק
        חוקר
        כתב ב נערך לאחרונה על ידי
        #8

        @איש-ימיני אמר בAPI לפתיחת וסגירת פורט 3389 לRDP לעולם החיצוני באמצעות PHP:

        @חוקר
        זה דורש התקנת PHP במחשב?
        וא"כ דורש גם פתיחת פורט 80?

        אכן
        אצלי כבר מותקן בין כך

        איש ימיניא תגובה 1 תגובה אחרונה
        1
        • ח חוקר

          @איש-ימיני אמר בAPI לפתיחת וסגירת פורט 3389 לRDP לעולם החיצוני באמצעות PHP:

          @חוקר
          זה דורש התקנת PHP במחשב?
          וא"כ דורש גם פתיחת פורט 80?

          אכן
          אצלי כבר מותקן בין כך

          איש ימיניא מנותק
          איש ימיניא מנותק
          איש ימיני
          כתב ב נערך לאחרונה על ידי
          #9

          @חוקר
          איך אני מתקין את זה?

          dovidD תגובה 1 תגובה אחרונה
          0
          • איש ימיניא איש ימיני

            @חוקר
            איך אני מתקין את זה?

            dovidD מנותק
            dovidD מנותק
            dovid
            ניהול
            כתב ב נערך לאחרונה על ידי
            #10

            @איש-ימיני נושא חדש בקשה!

            • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
            • בכל נושא אפשר ליצור קשר dovid@tchumim.com
            תגובה 1 תגובה אחרונה
            1
            • MusiCodeM MusiCode

              עדיף פייתון, כדי ליצור קובץ נייד.

              בכל אופן, הרעיון טוב.
              רק סיסמא תשלב, כמובן...

              אני עשיתי כזה דבר להוסיף את עצמי לחומת האש בשרת אסטריסק.
              רק צריך להריץ את זה בכל הפעלה וכיבוי של הראוטר...

              ח מנותק
              ח מנותק
              חוקר
              כתב ב נערך לאחרונה על ידי
              #11

              @musicode אמר בAPI לפתיחת וסגירת פורט 3389 לRDP לעולם החיצוני באמצעות PHP:

              רק צריך להריץ את זה בכל הפעלה וכיבוי של הראוטר...

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

              תגובה 1 תגובה אחרונה
              0
              • upsilon01U מנותק
                upsilon01U מנותק
                upsilon01
                כתב ב נערך לאחרונה על ידי
                #12

                זה מאד מזכיר port knocking

                יש כאן מאמר בעברית

                תגובה 1 תגובה אחרונה
                2
                • ח חוקר

                  יצרתי לעצמי API שאני יכול ממחשב מרוחק לגשת לIP (הקבוע) של המחשב שלי ולפתוח לעצמי פורט שיחובר לפורט 3389 עבור חיבור לשולחן עבודה מרחוק.
                  הרעיון הוא שכל הזמן אין פורט שמופנה לRDP, ורק בעת הצורך פותחים או סוגרים את החיבור
                  זה נועד לתוספת אבטחה.
                  להלן הקוד
                  זה נכתב בהתאם לראוטר D-LINK 225
                  הרעיון הוא שעבור פתיחת פורט ניגשים לכתובת של הדף
                  http://31.31.31.31/openport.php?action=open
                  ועבור הסגירה ניגשים כך
                  http://31.31.31.31/openport.php
                  כמובן יש לשנות לכתובת הIP הנכון
                  וכן להשים את שם הקובץ בו שמרתם את הקוד
                  וכן יש לוודא ששמתם את שם המשתמש והסיסמא הנכונים של הראוטר
                  וכן לוודא שהמחשב המארח נמצא בכתובת 10.0.0.1 או להחליף בקוד לכתובת הנכונה
                  ניתן לשנות את הפורט המאזין לכל פורט אחר כמובן

                  <?php
                  
                  $username = 'Admin';
                  $pass = 'Admin';
                  
                  $header = 'Content-Type: application/x-www-form-urlencoded'.
                      "\r\n" . 'Cookie: username=' . $username . '; password=' . $pass . '';
                  
                  $opts = array('http' =>
                      array(
                          'method'  => 'GET',
                          'header'  => $header,
                          'follow_location' => false
                      )
                  );
                  
                  $context  = stream_context_create($opts);
                  
                  $Login = file_get_contents('http://10.0.0.138/login.cgi?web_login_name=' . $username . '&web_login_pass=' . $pass . '&loginfo=on&loginId=Login', FALSE, $context);
                  
                  $form = file_get_contents('http://10.0.0.138/scvrtsrv.html', FALSE, $context);
                  $form = explode('&sessionKey=', $form);
                  $sessionKey = explode("'", $form[1])[0];
                  //print_r($sessionKey);
                  $eStart = '5546'; //תחילת פורט נכנס
                  $eEnd = '5546'; //סיום פורט נכנס
                  $iStart = '3389';
                  $iEnd = '3389';
                  if (isset($_GET['action']) && $_GET['action'] == 'open') {
                      $open = 'http://10.0.0.138/scvrtsrv.cmd?action=add&srvName=RDP&dstWanIf=ppp1.1&srvAddr=10.0.0.1&proto=1,&eStart=' . $eStart . ',&eEnd=' . $eEnd . ',&iStart=' . $iStart . ',&iEnd=' . $iEnd . ',&sessionKey=' . $sessionKey;
                      $open2 = file_get_contents($open);
                      print_r($open2);
                  } else {
                      $delete = 'http://10.0.0.138/scvrtsrv.cmd?action=remove&rmLst=10.0.0.1|' . $eStart . '|' . $eEnd . '|TCP|' . $iStart . '|' . $iEnd . ',&sessionKey=' . $sessionKey;
                      $delete2 = file_get_contents($delete, FALSE, $context);
                      print_r($delete2);
                  }
                  
                  $LogOut = file_get_contents('http://10.0.0.138/logout.cgi', FALSE, $context);
                  
                  upsilon01U מנותק
                  upsilon01U מנותק
                  upsilon01
                  כתב ב נערך לאחרונה על ידי
                  #13

                  @חוקר

                  עדיף לחסום את הפורט במחשב עצמו, ולא בראוטר
                  ואז יהיה אפשר לפתוח רק ל IP שממנו בוצעה הבקשה
                  ולסגור אוטומטי אחרי זמן מסוים
                  (אפשר ב iptables לתת timeout ל rule)

                  ככה זה יהיה יותר מאובטח

                  yossizY תגובה 1 תגובה אחרונה
                  1
                  • upsilon01U upsilon01

                    @חוקר

                    עדיף לחסום את הפורט במחשב עצמו, ולא בראוטר
                    ואז יהיה אפשר לפתוח רק ל IP שממנו בוצעה הבקשה
                    ולסגור אוטומטי אחרי זמן מסוים
                    (אפשר ב iptables לתת timeout ל rule)

                    ככה זה יהיה יותר מאובטח

                    yossizY מנותק
                    yossizY מנותק
                    yossiz
                    כתב ב נערך לאחרונה על ידי
                    #14

                    @upsilon01 אמר בAPI לפתיחת וסגירת פורט 3389 לRDP לעולם החיצוני באמצעות PHP:

                    (אפשר ב iptables לתת timeout ל rule)

                    הוא משתמש בווינדוס

                    📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                    upsilon01U תגובה 1 תגובה אחרונה
                    1
                    • yossizY yossiz

                      @upsilon01 אמר בAPI לפתיחת וסגירת פורט 3389 לRDP לעולם החיצוני באמצעות PHP:

                      (אפשר ב iptables לתת timeout ל rule)

                      הוא משתמש בווינדוס

                      upsilon01U מנותק
                      upsilon01U מנותק
                      upsilon01
                      כתב ב נערך לאחרונה על ידי
                      #15

                      @yossiz
                      אפשר גם ב windows

                       netsh advfirewall firewall add rule name= "Open Port 80" dir=in action=allow protocol=TCP localport=80
                      
                      תגובה 1 תגובה אחרונה
                      3
                      תגובה
                      • תגובה כנושא
                      התחברו כדי לפרסם תגובה
                      • מהישן לחדש
                      • מהחדש לישן
                      • הכי הרבה הצבעות


                      בא תתחבר לדף היומי!
                      • התחברות

                      • אין לך חשבון עדיין? הרשמה

                      • התחברו או הירשמו כדי לחפש.
                      • פוסט ראשון
                        פוסט אחרון
                      0
                      • דף הבית
                      • קטגוריות
                      • פוסטים אחרונים
                      • משתמשים
                      • חיפוש
                      • חוקי הפורום