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

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

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

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

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

    יצרתי לעצמי 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);
    
    dovidD איש ימיניא upsilon01U 3 תגובות תגובה אחרונה
    6
    • dovidD מנותק
      dovidD מנותק
      dovid ניהול
      השיב לחוקר ב נערך לאחרונה על ידי dovid
      #2

      @חוקר לדעתי זה רכיב מסורבל ולא מספיק בטוח.
      אני מסתפק בסיסמה קשה,
      אבל אם כבר תכבה את השירות של הRDP במחשב.

      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

      בכל נושא אפשר ליצור קשר dovid@tchumim.com

      ח תגובה 1 תגובה אחרונה
      4
      • ח מנותק
        ח מנותק
        חוקר
        השיב לdovid ב נערך לאחרונה על ידי
        #3

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

        אבל אם כבר תכבה את השירות של הRDP במחשב.

        זה דורש כנראה גישה לAPI של ווינדוס.
        אין לי שמץ של מושג איך לגעת בזה

        yossizY תגובה 1 תגובה אחרונה
        1
        • yossizY מנותק
          yossizY מנותק
          yossiz
          השיב לחוקר ב נערך לאחרונה על ידי
          #4

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

          זה דורש כנראה גישה לAPI של ווינדוס.

          לא צריך API. אם זה אפשרי כלל, אפשר לעשות את זה באמצעות פקודות, אבל מסיבה לא ברורה מייקרוסופט לא תומכים בכביית שירות RDP.
          https://www.windows-commandline.com/start-terminal-services-command-line/

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

          תגובה 1 תגובה אחרונה
          3
          • yossizY מנותק
            yossizY מנותק
            yossiz
            כתב ב נערך לאחרונה על ידי
            #5

            נסיתי לבדוק קצת יותר (באמצעות procmon), ובעז"ה מצאתי את המתכון להשבית ולהפעיל שירות RDP על ידי פקודה:
            השבתה:

            reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections
             /t REG_DWORD /d 1 /f
            

            הפעלה:

            reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections
             /t REG_DWORD /d 0 /f
            

            (השירות תמיד מופעל אבל הוא מאזין לשינויים במפתח רג'יסטרי ההוא והוא מפסיק להאזין כאשר משנים את הערך ל-1)

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

            תגובה 1 תגובה אחרונה
            5
            • איש ימיניא מנותק
              איש ימיניא מנותק
              איש ימיני
              השיב לחוקר ב נערך לאחרונה על ידי
              #6

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

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

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

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

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

                ח תגובה 1 תגובה אחרונה
                1
                • ח מנותק
                  ח מנותק
                  חוקר
                  השיב לאיש ימיני ב נערך לאחרונה על ידי
                  #8

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

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

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

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

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

                    dovidD תגובה 1 תגובה אחרונה
                    0
                    • dovidD מנותק
                      dovidD מנותק
                      dovid ניהול
                      השיב לאיש ימיני ב נערך לאחרונה על ידי
                      #10

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

                      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                      בכל נושא אפשר ליצור קשר dovid@tchumim.com

                      תגובה 1 תגובה אחרונה
                      1
                      • ח מנותק
                        ח מנותק
                        חוקר
                        השיב לMusiCode ב נערך לאחרונה על ידי
                        #11

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

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

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

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

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

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

                          תגובה 1 תגובה אחרונה
                          2
                          • upsilon01U מנותק
                            upsilon01U מנותק
                            upsilon01
                            השיב לחוקר ב נערך לאחרונה על ידי
                            #13

                            @חוקר

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

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

                            yossizY תגובה 1 תגובה אחרונה
                            1
                            • yossizY מנותק
                              yossizY מנותק
                              yossiz
                              השיב לupsilon01 ב נערך לאחרונה על ידי
                              #14

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

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

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

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

                              upsilon01U תגובה 1 תגובה אחרונה
                              1
                              • upsilon01U מנותק
                                upsilon01U מנותק
                                upsilon01
                                השיב לyossiz ב נערך לאחרונה על ידי
                                #15

                                @yossiz
                                אפשר גם ב windows

                                 netsh advfirewall firewall add rule name= "Open Port 80" dir=in action=allow protocol=TCP localport=80
                                
                                תגובה 1 תגובה אחרונה
                                3

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

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

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