Score:0

การส่งต่อ SSH ทำงานบนโลคัลแต่ล้มเหลวสำหรับรีโมต

ธง au

ฉันสร้างพอร์ต SSH local forwarding บนเครื่องระยะไกล:

ssh -N -L 127.0.0.1:3388:127.0.0.1:22 localhost

มันทำงานบนเครื่องระยะไกลเอง:

telnet localhost 3388

ผลตอบแทน

ลอง 127.0.0.1...
เชื่อมต่อกับ 127.0.0.1
อักขระ Escape คือ '^]'
SSH-2.0-OpenSSH_7.4

อย่างไรก็ตาม เมื่อฉันใช้การส่งต่อนี้จากเครื่องโลคัล:

telnet remote.ip 3388

มันล้มเหลว:

กำลังพยายาม remote.ip...
telnet: ไม่สามารถเชื่อมต่อกับโฮสต์ระยะไกล: การเชื่อมต่อถูกปฏิเสธ

บางคนอาจคิดว่าพอร์ต 3388 ของเครื่องระยะไกลถูกบล็อกโดยไฟร์วอลล์หรือบางอย่างจากเครือข่าย ดังนั้นฉันจึงปิดการส่งต่อ SSH และทดสอบเซิร์ฟเวอร์ http ที่ฟังพอร์ต 3388 บนเครื่องระยะไกล:

python3 -m http.server 3388

จากนั้นฉันเชื่อมต่อกับพอร์ตนี้จากเครื่องของฉัน:

telnet remote.ip 3388

ผลลัพธ์ที่ได้

กำลังพยายาม remote.ip...
เชื่อมต่อกับ remote.ip
อักขระ Escape คือ '^]'
ล้มเลิก
<!DOCTYPE HTML สาธารณะ "-//W3C//DTD HTML 4.01//EN"
        "http://www.w3.org/TR/html4/strict.dtd">
<html>
    <หัว>
        <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
        <title>การตอบสนองผิดพลาด</title>
    </หัว>
    <เนื้อหา>
        <h1>การตอบสนองผิดพลาด</h1>
        <p>รหัสข้อผิดพลาด: 400</p>
        <p>ข้อความ: ไวยากรณ์คำขอไม่ถูกต้อง ('quit ')</p>
        <p>คำอธิบายรหัสข้อผิดพลาด: HTTPStatus.BAD_REQUEST - ไวยากรณ์คำขอไม่ถูกต้องหรือวิธีการที่ไม่รองรับ</p>
    </body>
</html>
การเชื่อมต่อถูกปิดโดยโฮสต์ต่างประเทศ

ซึ่งหมายความว่าพอร์ต 3388 บนเครื่องระยะไกลสามารถเข้าถึงได้โดยเครื่องท้องถิ่นของฉัน เหตุใดทั้งการส่งต่อ SSH และเครือข่ายจึงทำงานได้อย่างถูกต้องตามแต่ละบุคคล แต่ล้มเหลวเมื่อรวมกัน มีคนรู้วิธีแก้ไขปัญหานี้หรือไม่ ขอบคุณ.

Michael Hampton avatar
cz flag
ทุกอย่างดูเหมือนจะทำงานได้อย่างถูกต้อง คุณคาดหวังอะไรให้เกิดขึ้น?
Score:0
ธง bd

คุณตั้งค่าการส่งต่อในเครื่อง SSH เพื่อให้ฟังเฉพาะบนพอร์ต localhost 3388 เท่านั้น Localhost ไม่สามารถเข้าถึงได้จากอุปกรณ์อื่นบนเครือข่าย ซึ่งเป็นสาเหตุที่คุณไม่สามารถสร้างการเชื่อมต่อจากระยะไกลได้

ในการเปิดเผยพอร์ตการส่งต่อไปยังเครื่องอื่นๆ บนเครือข่าย คุณต้องผูกพอร์ตกับที่อยู่ที่สามารถเข้าถึงได้ เช่น 192.168.1.5 หรือ 0.0.0.0 (อินเทอร์เฟซทั้งหมด)

เช่น. ssh -N -L 0.0.0.0:3388:127.0.0.1:22 localhost

ke xu avatar
au flag
ขอบคุณที่ช่วยแก้ปัญหาของฉัน แต่ฉันก็ยังไม่เข้าใจว่าเหตุใดจึงใช้งานได้กับเครื่องอื่นบางเครื่องหากฉันไม่ได้เพิ่ม 0.0.0.0

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา