การตั้งค่า SSH ผ่านอินเทอร์เน็ตบน Pi ของฉัน


16

นี่อาจเป็นคำถามง่าย ๆ แต่เมื่อฉันอ่านข้อมูลที่ขัดแย้งกันจากแหล่งข้อมูลต่าง ๆ (ความขัดแย้งบนอินเทอร์เน็ต?) ฉันอยากรู้ว่าฉันทำทุกสิ่งที่ควรจะเป็นหรือไม่

ดังนั้นฉันต้องการตั้งค่าการเชื่อมต่อ SSH กับ RasPi ของฉันเพื่อให้สามารถเข้าถึงได้ผ่านอินเทอร์เน็ต

  1. ฉันเริ่มต้นด้วยการเปิดใช้งาน SSH บน Pi ใช้ Raspbian โดยใช้raspi-configเครื่องมือ
  2. จากนั้นฉันติดตั้งไคลเอนต์ no-ip.com บน Pi ของฉันเพื่อให้มีชื่อโฮสต์ที่ชี้ไปยังที่อยู่ IP แบบไดนามิกของฉัน
  3. ฉันค้นหา LAN ip ของฉันบนราสเบอร์รี่โดยใช้ ifconfig
  4. สุดท้ายในยูทิลิตี้การตั้งค่าของเราเตอร์ภายใต้การส่งต่อพอร์ตฉันเปิดใช้งานการส่งต่อพอร์ต 22 ทั้ง TCP และ UDP ไปยังโลคอลไอพีของ pi ของฉัน

หลังจากนี้ฉันดูเหมือน SSH กับไพผ่านทางอินเทอร์เน็ตไม่ได้ มันทำงานเมื่อฉันพยายามเชื่อมต่อภายใน LAN ของฉันโดยใช้ไอพีท้องถิ่นของฉัน แต่ไม่ได้ใช้ชื่อโฮสต์หรือที่อยู่ IP อินเทอร์เน็ตของฉัน ฉันได้ลองเชื่อมต่อจากตำแหน่งอื่นและไม่มีอะไรทำงาน

คำถามของฉัน: ฉันไม่มีขั้นตอนใด ๆ มีไฟล์กำหนดค่าที่ฉันควรแก้ไขบน pi ของฉันเพื่อให้ทุกอย่างทำงานได้หรือไม่


โปรดรวมผลลัพธ์ของiptables -Lใน Pi ของคุณ
deed02392

1
คุณได้แก้ไขปัญหานี้แล้วหรือยัง ถ้าเป็นเช่นนั้นคุณสามารถทำเครื่องหมายคำตอบที่ได้รับการแก้ไขหรือสร้างคำตอบด้วยตนเองโดยระบุสิ่งที่คุณทำแล้วทำเครื่องหมายว่าเป็นคำตอบได้หรือไม่ มันจะดีมากเมื่อเราพยายามทำให้ไซต์ Q: มีอัตราส่วนเพิ่มขึ้นและคำถามนี้ดูเหมือนจะถูกปล่อยทิ้งไว้เป็นระยะเวลาหนึ่งสำหรับคุณ @ Zeta ขอบคุณ!
RPiAwesomeness

ฉันใช้ no-ip.com เพื่อเชื่อมต่อ Pi ของฉันผ่านอินเทอร์เน็ตสำหรับเว็บและ ssh ดังนั้นจึงเป็นไปได้บางทีเราเตอร์หรือ ISP ของคุณกำลังบล็อกการรับส่งข้อมูลขาเข้าหรือไม่
Alastair Montgomery

ฟังดูเหมือนเราเตอร์ที่ไม่รองรับ NAT loopback
flakeshake

ฉันพบลิงค์นี้: raspberryanywhere.comบางทีมันอาจจะช่วยได้บ้าง ฉันใช้บริการมาหลายสัปดาห์แล้วและใช้งานได้ดีมาก! ลิงค์นี้มีทีมงานผู้ดูซอฟต์แวร์อย่างง่ายที่ต้องการเข้าถึงบอร์ดราสเบอร์รี่ของคุณได้ทุกที่ นอกจากนี้คุณสามารถใช้ไคลเอ็นต์ SSH ปกติของคุณ พวกเขาเพียงแค่ให้ที่อยู่เสมือนเพื่อเชื่อมต่อกับบอร์ดของคุณผ่าน SSH หรือ HTTP มันคุ้มค่าลองแน่นอน!
Stefano Stefano

คำตอบ:


12

หากคุณวางแผนที่จะเชื่อมต่อกับ Raspberry Pi ของคุณผ่าน SSH ผ่านอินเทอร์เน็ตบางที ngrok.com อาจเหมาะสมกับปัญหาของคุณอย่างสะดวกสบายที่สุด

ส่งต่อพอร์ตของคุณด้วยอุโมงค์ที่กลับด้านบางอย่างและยังสามารถช่วยหลีกเลี่ยงไฟร์วอลล์หรือข้อ จำกัด ของ ISP ของคุณ คุณต้องลงทะเบียน (ฟรี) บนเว็บไซต์เพื่อส่งต่อ TCP-traffic

ฉันไม่ได้เกี่ยวข้องกับโครงการนี้ แต่อย่างใด ฉันเพิ่งใช้มันเพื่อให้ได้แนวคิดเดียวกัน (ในกรณีของฉันคือการส่งต่อ OpenVPN-Server) และทำได้จนถึงขณะนี้ไม่พบปัญหาใด ๆ


ฉันเพิ่งมีปัญหานี้ด้วยและใช้ servo.net ง่ายกว่า ngrok ฟรีทั้งหมด 0 config เพียงวางในคำสั่ง 22 พอร์ตด้วยนามแฝงที่กำหนดเองแล้วเชื่อมต่อ
Madhava Jay

3

ปัญหาส่วนหนึ่งของคุณอาจเป็นเพราะ Pi ใช้ไดนามิก IP จาก DHCP บนเราเตอร์ของคุณการส่งต่อพอร์ตที่คุณตั้งไม่ทำงานเนื่องจาก IP ท้องถิ่นของ Pi เปลี่ยนไป

วิธีที่ง่ายที่สุดในการแก้ไขปัญหานี้ (อย่างน้อยที่ฉันเห็น) คือการตั้งค่า IP แบบคงที่ มันค่อนข้างง่ายตราบใดที่คุณไม่รังเกียจที่จะล้อเลียนในไฟล์ปรับแต่ง คุณสามารถอ่านน้อยมากในเชิงลึกที่นี่และที่นี่ ฉันจะอธิบายวิธีง่ายๆด้านล่าง:

  1. เชื่อมต่อ Pi ของคุณผ่าน SSH ภายในเครือข่ายภายในบ้านหรือผ่านหน้าจอ

  2. หยิบปากกาและกระดาษคุณจะเขียนข้อมูล

  3. ifconfigเรียกใช้คำสั่ง ฉันรู้ว่าคุณวิ่งไปแล้ว แต่เราต้องรวบรวมข้อมูลเพิ่มเติมที่ IP ท้องถิ่นของคุณในครั้งนี้ นี่เป็นการเปิดเผยข้อมูลเราเตอร์ของคุณบิตที่คุณต้องการคือหลังจาก eth0 (การเชื่อมต่ออีเทอร์เน็ต) . . .

    eth0      Link encap:Ethernet  HWaddr b8:27:eb:b3:fc:2c
              inet addr:192.168.1.81  Bcast:192.168.1.255  Mask:255.255.255.0
    

    เขียนข้อมูลต่อไปนี้ ...

    inet addr – 192.168.1.81 (Pi's Current IP Address)
    Bcast –  192.168.1.255 (The Broadcast IP Range)
    Mask –  255.255.255.0 (Subnet Mask Address)
    

    เห็นได้ชัดว่าข้อมูลของคุณจะแตกต่างจากบทช่วยสอนนี้ดังนั้นให้แน่ใจว่าคุณใช้ข้อมูลของคุณจากifconfigคำสั่งที่รันบน Pi

  4. เรียกใช้ตอนนี้หรือnetstat -nr route -nพวกเราต้องการ:

    ที่อยู่ 'เกตเวย์' - 192.168.1.254 ที่อยู่
    'ปลายทาง' - 192.168.1.0

  5. ตอนนี้เรามีข้อมูลนั้นเราสามารถแก้ไขไฟล์อินเตอร์เฟสเพื่อตั้งค่า IP แบบไดนามิก sudo nano /etc/network/interfacesวิ่ง ควรมีลักษณะเช่นนี้:

    ไฟล์อินเตอร์เฟส

  6. เปลี่ยนสาย:

    iface eth0 inet dhcp
    

    ถึง

    iface eth0 inet static
    

    จากนั้นใต้บรรทัดนี้โดยตรงให้ป้อนข้อมูลต่อไปนี้ ( โปรดทราบคุณจะต้องมีที่อยู่ของคุณเองที่เรารวบรวมไว้ด้านบน ) . . .

    address 192.168.1.81
    netmask 255.255.255.0
    network 192.168.1.0
    broadcast 192.168.1.255
    gateway 192.168.1.254
    

    โดยทั่วไปส่วนที่อยู่คือสิ่งที่คุณต้องการให้ IP ของคุณเป็น สูงกว่าดีกว่าเนื่องจากมีโอกาสน้อยที่ IP จะเกิดข้อขัดแย้ง netmask - ที่อยู่ 'หน้ากาก' ที่เราเขียนไว้ก่อนหน้านี้

    เครือข่าย - ที่อยู่ IP ของเราเตอร์นี่คือที่อยู่ 'ปลายทาง' ที่พบก่อนหน้านี้ นอกจากนี้คุณยังสามารถคว้าสิ่งนี้จากเราเตอร์ของคุณได้เช่นกันควรพูดที่ด้านใดด้านหนึ่ง

    ออกอากาศ - ที่อยู่ 'Bcast' ที่เราบันทึกไว้ก่อนหน้านี้

    เกตเวย์ - นี่คือที่อยู่ 'เกตเวย์' ที่เราพบก่อนหน้านี้

    กดCtrl+ Oและทั้งEnterหรือแล้วY Enterเมื่อคุณทำที่กด+CtrlX

  7. ทำงานsudo rebootและ IP ของคุณควรอยู่ในสถานที่! ล็อกอินกลับมาและรันifconfigคำสั่งอีกครั้งและควรมีลักษณะดังนี้:

    fancyness!

จากนั้นกำหนดค่าพอร์ตของคุณที่จะส่งต่อไปยัง IP แบบคงที่ใหม่ของคุณและมันควรจะทำงาน! ขอให้โชคดี!


2
คนที่ลงคะแนนได้อธิบายว่าทำไม ฉันคิดว่านี่เป็นทางออกที่ถูกต้องและใช้การได้ดี ฉันอยากรู้ว่าทำไมฉันจึงสามารถปรับปรุงคำตอบของฉันได้
RPiAwesomeness

1
สิ่งนี้จะทำงานในเครือข่ายท้องถิ่นเท่านั้นและไม่ได้มาจากภายนอก OP ถามว่าจะเชื่อมต่อกับ Pi ผ่านอินเทอร์เน็ตได้อย่างไรและไม่ได้มาจากเครือข่ายเดียวกัน
Chinmay Sarupria

ที่อยู่เช่น 192.168.1.100 เป็นที่อยู่ในท้องถิ่นฉันสามารถมี 2 Pi ใน 2 ส่วนต่าง ๆ ของเมืองด้วยที่อยู่ท้องถิ่นเดียวกัน แน่นอนฉันจะไม่สามารถเข้าถึงหนึ่งในนั้นจากภายนอกเครือข่าย
Chinmay Sarupria

หากคุณให้ที่อยู่ IP แบบคงที่ RPi ของคุณคุณควรแยกออกจากกลุ่ม DHCP มิฉะนั้นอุปกรณ์อื่นในเครือข่ายของคุณอาจได้รับและคุณจะมีความขัดแย้งของ IP
Dmitry Grigoryev

2

สิ่งเดียวที่คุณดูเหมือนว่ามีการกำหนดค่าผิดพลาดคือ SSH เป็นโปรโตคอล TCP เท่านั้นดังนั้นคุณไม่จำเป็นต้องส่งต่อการรับส่งข้อมูล UDP บนพอร์ต 22

ตอนนี้ทำไมมันดูเหมือนจะไม่ทำงานอาจเป็นเพราะคุณเราเตอร์ไม่สนับสนุนการย้อนกลับ NAT หมายความว่าอะไรกฎ NAT (เช่นการส่งต่อของคุณ) จะไม่ใช้เมื่อต้นกำเนิดของการเชื่อมต่อมาจาก LAN ภายในของคุณ เราเตอร์บางตัวเท่านั้นที่มีคุณสมบัตินี้ ดังนั้นหากเราเตอร์ของคุณไม่สนับสนุนการย้อนกลับ NAT, แล้วคุณจะไม่สามารถที่จะเชื่อมต่อกับ RPI ของคุณโดยใช้ SSH เมื่อใช้ชื่อโดเมน no-ip.com และเมื่อทำมันจาก LAN

หากต้องการลองใช้การกำหนดค่าของคุณหากคุณมีสมาร์ทโฟนที่มีการเชื่อมต่อข้อมูลบางอย่าง (3G, LTE, ฯลฯ ) และมีไคลเอ็นต์ ssh อยู่ให้ลองเชื่อมต่อ RPi ของคุณโดยใช้แผนข้อมูลไม่ใช่การเชื่อมต่อ WiFi หากคุณไม่มีไคลเอ็นต์ ssh อยู่และคุณได้รับอนุญาตให้ทำการแชร์อินเทอร์เน็ตให้ใช้สมาร์ทโฟนของคุณร่วมกับคอมพิวเตอร์เครื่องใดเครื่องหนึ่งโดยถอดปลั๊กออกสำหรับเครือข่ายท้องถิ่นของคุณและใช้ลิงค์เชื่อมโยงอินเทอร์เน็ตแทน


0

ลองใช้ชื่อโดเมนฟรีเช่นco.ccหรือคล้ายกันและfreeDNS (พวกเขายังให้โดเมนย่อยจำนวนมาก) เพื่อชี้ไปที่เราเตอร์ของคุณ ฉันคิดว่าคุณสามารถรับสคริปต์อัปเดตได้ในกรณีที่เราเตอร์ของคุณมี IP แบบไดนามิก

หากไม่ได้ผลอาจเป็นการตั้งค่าสำหรับการส่งต่อพอร์ตของคุณผิดหรือเปล่า? คุณมีเราเตอร์แบบใด


Try using a free domain name...เขาทำอย่างนั้นนั่นคือสิ่งที่ลูกค้าไม่มี IP มันง่ายกว่าการยุ่งกับ DNSing และเราเตอร์เอง
RPiAwesomeness

@RPiAwesomeness ขออภัยไม่รู้ด้วย
Samadi

ไม่มีปัญหา. ฉันแค่ทำหน้าที่เป็นสมาชิก Stack Exchange และดูแลเว็บไซต์ มันเป็นเพียงการวิจารณ์เล็กน้อยที่เป็นประโยชน์ โปรดอย่าคิดว่าเป็นการทำร้ายคุณฉันแค่พยายามช่วยให้เนื้อหาในเว็บไซต์นี้มีประโยชน์และให้ข้อมูล โปรดลองช่วยและตอบคำถามและมีส่วนร่วมต่อไปคุณจะได้รับ :) และเข้าสู่การแชทเป็นครั้งคราว คนที่รักในการมี บริษัทและมันแสดงให้เห็นว่าเว็บไซต์นี้มีประโยชน์และเจริญรุ่งเรืองและมีฐานผู้ใช้ที่ดีและเกี่ยวข้อง
RPiAwesomeness

0

ฉันมีสถานการณ์เช่นนี้ในฟินแลนด์: rpi เชื่อมต่อกับเราเตอร์ wifi มือถือ huawei e5776 และฉันต้องการเชื่อมต่อ rpi กับ SSH ผ่านอินเทอร์เน็ตโดยที่ไม่ประสบความสำเร็จและในที่สุดฉันก็รู้ว่าเป็นผู้ให้บริการอินเทอร์เน็ตของฉันปิดกั้นการเชื่อมต่อสองทางสำหรับ ลูกค้าบรอดแบนด์มือถือ การรับส่งข้อมูลสองทางสำหรับพวกเขาคือบริการเสริม (ซึ่งคุณต้องจ่าย) เรียกว่า open gate โดย ISP ของฉัน ดังนั้นไปที่ไซต์ ISP ของคุณเองเพื่อดูว่าเป็นจริงหรือไม่


0

Slubbixชี้ไปที่ปัญหาที่เป็นไปได้ว่า IP ท้องถิ่นของ Raspberry Pi ไม่ได้รับการแก้ไข นี่จะทำให้พอร์ตไปข้างหน้าในเราเตอร์ของคุณไม่น่าเชื่อถือ โดยค่าเริ่มต้น Raspberry Pi ถูกกำหนดค่าให้ใช้ DHCP ซึ่งหมายความว่าเราเตอร์จะได้รับ IP IP นี้เป็นค่าเริ่มต้นยังไม่ได้รับการแก้ไข

วิธีการหนึ่งในการแก้ไขปัญหานี้ถูกระบุโดยSlubbix : เพื่อให้ IP ของ Raspberry Pi ได้รับการแก้ไข

ในความเห็นของฉันนี่มีข้อเสียสองประการ: ไม่มีรายชื่อ IP ทั่วโลกในเครือข่ายของคุณที่บำรุงรักษาง่ายและคุณไม่สามารถใช้ Raspberry Pi ของคุณในเครือข่ายอื่น (IP ที่ใช้อยู่แล้วหรือมี submask อื่น)

ดังนั้นฉันจึงเสนอให้ทำดังนี้: กำหนดค่าเราเตอร์ของคุณเพื่อกำหนด IP คงที่ให้กับที่อยู่ MAC ของ Raspberry Pi ของคุณ ที่อยู่ MAC สามารถพบได้โดยใช้คำสั่งifconfig


0

ที่อยู่ IP ท้องถิ่นของ Raspberry Pi ของคุณไม่ได้รับการแก้ไขเว้นแต่ว่าคุณกำลังใช้อแด็ปเตอร์ไร้สายเพื่อเชื่อมต่อซึ่งจะเก็บที่อยู่ IP ไว้ หากคุณต้องการใช้ SSH สำหรับ RPI คุณสามารถใช้ขั้นตอนเหล่านี้:

เริ่มต้น Pi ของคุณเพื่อแจ้งให้เทอร์มินัล พิมพ์คำสั่งต่อไปนี้ "sudo apt-get install xrdp" หากเลื่อนขั้นแล้วให้ป้อนรหัสผ่านของคุณ (ค่าเริ่มต้นคือ "raspberry") พิมพ์ "Y" แล้วกด Enter นี่คือการติดตั้ง xrdp บน Pi ของคุณซึ่งเป็นซอฟต์แวร์ที่เราจะใช้สำหรับการเชื่อมต่อเดสก์ท็อประยะไกล รอให้เสร็จ รีสตาร์ท Pi ของคุณ เราจะตรวจสอบว่า xrdp กำลังจะเริ่มขึ้นโดยอัตโนมัติ เมื่อ Pi ของคุณบูทไปที่พรอมต์คำสั่งให้ค้นหา [ok] การเริ่มต้นเซิร์ฟเวอร์โพรโทคอลเดสก์ท็อประยะไกล: xrdp sesman นี่แสดงให้คุณเห็นว่า xrdp ได้รับการติดตั้งและเริ่มต้นโดยอัตโนมัติเมื่อเริ่มต้น Pi ของคุณขั้นตอนสุดท้ายคือการจดบันทึกที่อยู่ IP ของ Pi ของคุณซึ่งควรแสดงบนหน้าจอเริ่มต้น ในกรณีของฉันด้านล่างคือ 192.168.1.9

การตั้งค่าเครื่องที่สอง

  1. เรียกใช้การเชื่อมต่อเดสก์ท็อประยะไกลซึ่งสามารถหาได้ที่ Start-> All Programs-> Accessories-> Remote Desktop Connection
  2. พิมพ์ที่อยู่ IP สำหรับ Pi ของคุณซึ่งคุณระบุไว้ข้างต้น

  3. คลิกเชื่อมต่อ (คุณอาจได้รับคำเตือนเกี่ยวกับความปลอดภัยในขั้นตอนนี้เพียงแค่คลิกตกลงถ้าคุณทำตามนั้น Pi ของคุณบนเครือข่ายของคุณดังนั้นจึงไม่ต้องกังวลเรื่องความปลอดภัย

  4. ปล่อยให้โมดูลเป็นค่าเริ่มต้นของ sesman-Xvnc และป้อนชื่อผู้ใช้และรหัสผ่านสำหรับ Pi ของคุณ (ค่าเริ่มต้นคือ pi และราสเบอร์รี่หากคุณยังไม่ได้เปลี่ยน)

  5. คลิกตกลงและหลังจากนั้นซักครู่คุณควรได้รับการต้อนรับเดสก์ท็อปของ Raspberry Pi ของฉัน!

  6. เมื่อเสร็จแล้วก็ออกจากระบบของเดสก์ท็อป

ฉันพบขั้นตอนเหล่านี้จากที่นี่และพวกเขาทำงานให้ฉัน

นี่เป็นอีกวิธีในการใช้ SSH:

SSH ลงใน Raspberry Pi โดยทั่วไปฉันเข้าสู่ Raspberry Pi ของฉันผ่าน SSH หรือ Secure Shell เพื่อตั้งชื่อเต็ม การทำเช่นนี้ทำให้สามารถเข้าถึงบรรทัดคำสั่งไปยัง Raspberry Pi ของคุณได้จากคอมพิวเตอร์เครื่องอื่น ถึงแม้ว่ามันจะเป็นไปได้ที่ SSH จะเข้าสู่ Raspberry Pi จากที่ใดก็ได้ในโลกและฉันก็โพสต์นี้ครอบคลุมเฉพาะการเข้าถึง SSH ผ่านเครือข่ายท้องถิ่น ฉันจะครอบคลุมการเชื่อมต่อระยะไกลในโพสต์บล็อกในอนาคต

แม้ว่าสิ่งนี้จะไม่ให้การเข้าถึง GUI (Graphical User Interface) แต่การเข้าถึงบรรทัดคำสั่งโดยทั่วไปทำให้ฉันสามารถทำสิ่งที่ฉันต้องทำ 95% อีก 5% ที่ฉันสามารถทำได้ผ่าน SSH แต่บางครั้งคุณไม่สามารถเอาชนะความสะดวกสบายของ GUI :-)

ก่อนอื่นคุณต้องรู้ที่อยู่ IP ของ Raspberry Pi ที่คุณต้องการลงชื่อเข้าใช้ หากคุณไม่แน่ใจว่าจะค้นหาสิ่งนี้ได้อย่างไรให้อ่านโพสต์บล็อกของฉันเพื่ออธิบายว่าคุณสามารถทำได้จากระยะไกลโดยใช้เครื่องมือที่ยอดเยี่ยมที่เรียกว่า nmap

เพื่อ SSH ใน Raspberry Pi ของคุณจากคอมพิวเตอร์ Linux หรือ Apple Mac นี่เป็นเรื่องง่ายมาก คุณสามารถพิมพ์ชื่อผู้ใช้และที่อยู่ IP ของคุณลงในบรรทัดคำสั่งโดยใช้รูปแบบต่อไปนี้:

ชื่อผู้ใช้ ssh @ IPaddress

ให้แน่ใจว่าคุณแทนที่ชื่อผู้ใช้ด้วยชื่อผู้ใช้ที่คุณต้องการเข้าสู่คอมพิวเตอร์ระยะไกลด้วย ที่อยู่ IP ควรอยู่ในรูปแบบ 192.168.1.66

คุณอาจได้รับข้อความอธิบายว่าไม่สามารถสร้างความถูกต้องของโฮสต์ได้และหากคุณแน่ใจว่าต้องการเชื่อมต่อต่อ คุณจะเห็นข้อความนี้เฉพาะครั้งแรกที่คุณเข้า SSH ใน Raspberry Pi เพียงพิมพ์ใช่

จากนั้นคุณจะถูกถามถึงรหัสผ่านของคุณป้อนรหัสผ่านสำหรับชื่อผู้ใช้ที่คุณพยายามเชื่อมต่อด้วย

สำหรับ windows นี่เป็นเรื่องยุ่งยากเล็กน้อยในการตั้งค่าเนื่องจากต้องใช้ซอฟต์แวร์เพิ่มเติมที่เรียกว่า PuTTY อย่างไรก็ตามเมื่อติดตั้งแล้วมันใช้งานง่ายมาก

ก่อนอื่นให้ไปที่เว็บไซต์ PuTTY www.putty.org ดาวน์โหลดและติดตั้งซอฟต์แวร์

เมื่อติดตั้งโหลด PuTTY

ในประเภทชื่อโฮสต์ (หรือที่อยู่ IP) ในที่อยู่ IP ที่คุณต้องการเชื่อมต่อ เลือกปุ่มตัวเลือก SSH ในกล่องภายใต้เซสชันที่บันทึกไว้ในชื่อเพื่อระบุคอมพิวเตอร์เครื่องนี้เช่น Raspberry Pi แล้วคลิกบันทึก การคลิกที่ Open ควรเริ่มเซสชัน SSH ของคุณ

ครั้งต่อไปที่คุณต้องการ SSH ลงใน Raspberry Pi ของคุณคุณต้องโหลด PuTTY คลิกที่เซสชันที่บันทึกไว้เพื่อเน้นและจากนั้นคลิกเปิด เมื่อคุณพิมพ์รหัสผ่านเมื่อถูกถามคุณจะสามารถเข้าถึง Raspberry Pi จากระยะไกลได้

ฉันพบคำแนะนำเหล่านี้จากที่นี่


ฉันล้มเหลวที่จะดูว่าคำแนะนำเหล่านี้ช่วยในการเข้าถึง RPi ผ่านทางอินเทอร์เน็ตได้อย่างไร
Dmitry Grigoryev

0

สิ่งหนึ่งที่ฉันสังเกตเห็นสำหรับอินเทอร์เน็ตของฉันคือเมื่อฉันพอร์ตส่งต่อเว็บเซิร์ฟเวอร์ของฉันและฉันพยายามที่จะเชื่อมต่อกับมันโดยใช้ไอพีสาธารณะของฉันมันจะบอกว่ามันไม่สามารถใช้ได้ แต่เมื่อฉันเชื่อมต่อกับมันบนโทรศัพท์หรือเครือข่ายโรงเรียนของฉัน ฉันสามารถเชื่อมต่อได้สิ่งหนึ่งที่คุณสามารถทำได้คือไปที่ google และพิมพ์ "IP" ลงในแถบค้นหาคัดลอก IP ที่ให้คุณแล้วไปที่google แปลและวางใน ip ของคุณและ จากนั้นคลิกที่ที่อยู่ IP สีน้ำเงินในหน้าต่างด้านขวาและจะแสดงให้คุณเห็นว่าคุณประสบความสำเร็จในการทำพอร์ตเว็บเซิร์ฟเวอร์ของคุณหรือไม่


0

ในการอนุญาตทราฟฟิกขาเข้าบนพอร์ต SSH เริ่มต้น (22) คุณสามารถบอก iptables เพื่ออนุญาตทราฟฟิก TCP ทั้งหมดบนพอร์ตนั้น

sudo iptables -A INPUT -p tcp --dport ssh -j ACCEPT

อ้างอิงกลับไปที่รายการข้างต้นคุณจะเห็นว่าสิ่งนี้บอก iptables:

  1. ผนวกกฎนี้เข้ากับห่วงโซ่การป้อนข้อมูล ( -A INPUT) เพื่อให้เราดูทราฟฟิกที่เข้ามา
  2. ตรวจสอบเพื่อดูว่ามันเป็น TCP ( -p tcp)
  3. ถ้าเป็นเช่นนั้นตรวจสอบเพื่อดูว่าการป้อนข้อมูลไปที่พอร์ต SSH ( --dport ssh)
  4. ถ้าเป็นเช่นนั้นยอมรับการป้อนข้อมูล ( -j ACCEPT)

หวังว่างานนี้สำหรับคุณคุณยังอาจต้องการเพิ่มพอร์ต FTP ซึ่งเป็นวันที่ 20-21 เพียงแค่เปลี่ยนsshไปและ2021


0

ฉันไม่แน่ใจว่าคำถามนี้ต้องการคำตอบเพิ่มเติม แต่มันค่อนข้างง่าย

  1. ติดตั้ง OpenSSH หรือเปิดใช้งานจาก raspi-config

  2. ไปที่หน้าแรกของเราเตอร์ / ไฟร์วอลล์ของคุณในกรณีของฉัน 192.168.1.1

  3. ค้นหาการส่งต่อพอร์ตหรือเซิร์ฟเวอร์เสมือนและเพิ่มสิ่งต่อไปนี้:

    พอร์ตภายนอกเริ่มต้น: 1234 พอร์ตภายนอกสิ้นสุด: 1234

    พอร์ตภายในเริ่มต้นและสิ้นสุด 22

    IP เซิร์ฟเวอร์เป็น IP แบบคงที่ของ RPi ของคุณในกรณีของฉัน 192.168.1.50

  4. เมื่อตั้งค่าทั้งหมดที่ด้านเราเตอร์แล้วให้จดบันทึก WAN IP ของคุณโดยค้นหา IP ของคุณบน Google

  5. ตอนนี้คุณควรจะสามารถ SSH ไปยัง pi ผ่านทางอินเทอร์เน็ต ในกรณีของฉันฉันใช้ Chromebook และเปลือกที่เพิ่มความปลอดภัย ฉันพิมพ์ชื่อผู้ใช้ในกรณีของฉันpi@mywanipและพอร์ต 1234

โดยทั่วไปกฎไฟร์วอลล์ในขั้นตอนที่ 3 ส่งต่อการรับส่งข้อมูลทั้งหมดบนพอร์ตของ WAN IP 1234 ไปยังพอร์ตของ LAN IP ภายใน 22


-1

ฉันพยายามอย่างมากในการตั้งค่า SSH ผ่านอินเทอร์เน็ตจนกว่าฉันจะพบวิธีการง่ายๆนี้:

http://raspctl.com

เพียงลงทะเบียนและคัดลอกคำสั่ง คุณอาจต้องแก้ไขไฟล์กำหนดค่า ฉันทดสอบวันนี้และใช้งานได้อย่างมีเสน่ห์ ฉันลองด้วยแอพ Android SSH ที่แตกต่างกันเช่นกัน


ลืมพูดถึง: อย่าตั้งค่าการส่งต่อพอร์ตบนเราเตอร์ของคุณ!
alkopop79

1
FYI: โครงการดังกล่าวดูเหมือนจะถูกยกเลิก
bobstro
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.