Score:1

เชื่อมต่อกับเซิร์ฟเวอร์ (ไม่มี IP ภายนอก) ผ่าน SSH

ธง cn

ฉันมีการตั้งค่าพีซีขนาดเล็กเป็นเซิร์ฟเวอร์ Ubuntu และฉันได้กำหนดค่า ssh-server เพื่อให้สามารถเชื่อมต่อผ่าน ssh ได้ ปัญหาเริ่มต้นที่นี่เพราะฉันไม่มี IP ภายนอกจาก ISP ของฉัน (อุปกรณ์ทั้งหมดมี 1 IP ภายนอก) และฉันไม่สามารถเปลี่ยนแปลงได้ จากการวิจัยที่ฉันทำ ฉันได้สร้างอินสแตนซ์ AWS แบบฟรีเทียร์ และสร้าง OpenVPN ที่นั่น

ดังนั้นฉันจึงทำงานแบบนั้น:

  1. พีซี1
  2. อินสแตนซ์ AWS พร้อม IP ภายนอกที่โฮสต์เซิร์ฟเวอร์ OpenVPN
  3. พีซี2

PC1 และ PC2 เชื่อมต่อกับเซิร์ฟเวอร์ OpenVPN บน AWS จากนั้นฉันสามารถเชื่อมต่อกับ PC1 ผ่าน SSH โดยใช้ PC2
ฉันมีตัวเลือกอะไรบ้าง (ถ้ามี) ในการเชื่อมต่อกับ PC1 ผ่าน SSH โดยใช้ PC2 โดยไม่ต้องใช้ PC2 เพื่อเชื่อมต่อกับ OpenVPN หรืออาจมีตัวเลือกบางอย่างในการเชื่อมต่อกับ OpenVPN สำหรับการเชื่อมต่อ ssh เท่านั้น และทราฟฟิกที่เหลือจะไม่ใช้ openVPN

cn flag
ฉันคิดว่าโดย "IP ภายนอก" คุณหมายถึง "IP แบบคงที่" ใช่ไหม
cn flag
@AlexisWilke ฉันหมายถึงอย่างที่ฉันพูด ฉันมีอุปกรณ์ประมาณ 3-4 เครื่องที่เชื่อมต่อกับเราเตอร์ของฉัน (ฉันไม่สามารถเปลี่ยนการตั้งค่าใด ๆ บนนั้น) และอุปกรณ์เหล่านี้ทุกเครื่องมี IP เดียวกันเมื่อฉันไปที่เว็บไซต์เช่น "Whatsmyip" ดังนั้นเมื่อใด ตัวอย่าง ฉันพยายามใช้ IP นั้นเชื่อมต่อกับอุปกรณ์เหล่านี้ผ่าน SSH ฉันไม่สามารถทำได้ :(
cn flag
โอ้ว้าว! คุณหมายถึงคุณมีพีซี 2 เครื่องที่เชื่อมต่อกับเราเตอร์เครื่องเดียวกันและคุณไม่รู้วิธี SSH ระหว่างสองเครื่องใช่หรือไม่! พีซีแต่ละเครื่องมีที่อยู่ IP บนเครือข่ายเดียวกัน คุณสามารถทำ `ip address` บนระบบ Linux แล้วจึงทำ `ssh
cn flag
ทำไมคุณคิดว่าพวกเขาอยู่ในเครือข่ายเดียวกัน? เราเตอร์เดียวกัน ใช่ เครือข่ายเดียวกัน ;)
cn flag
ฉันไม่รู้ว่าทำไมคุณถึงทำให้ชีวิตของคุณซับซ้อนแบบนี้ เว้นแต่ว่านั่นคือสิ่งที่คุณต้องการบรรลุเป็นโครงการ หากคุณเพียงต้องการให้มันใช้งานได้ ให้วางคอมพิวเตอร์ทั้งสองเครื่องในเครือข่ายเดียวกัน แล้วเครื่องจะคัดลอกผ่านเราเตอร์ด้วยความเร็วสูงสุด อีกวิธีหนึ่งในการทำงานร่วมกับสองเครือข่ายคือการเพิ่มการเปลี่ยนเส้นทางไฟร์วอลล์ แต่นั่นค่อนข้างซับซ้อน มันเรียกว่า [การปลอมตัว](https://linux.m2osw.com/how-setup-linux-firewall) (ดูที่ `FORWARD`, `PRE/POST-ROUTING`)
cn flag
เพื่อนไม่มีความผิด แต่ฉันอธิบายปัญหา ฉันไม่ได้มาที่นี่เพื่อโต้แย้งว่าปัญหาเกี่ยวกับอะไร แต่จะแก้ปัญหาอย่างไร และการที่คุณบอกฉันว่าฉันไม่มีปัญหานั้นไม่ใช่วิธีแก้ปัญหาเลย
Score:0
ธง cn

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

ssh -fNR 2222:localhost:22 aws-คอมพิวเตอร์

เดอะ aws-คอมพิวเตอร์ เป็นชื่อของฉัน ~/.ssh/config ไฟล์ที่กำหนดคีย์ที่จะใช้และชื่อผู้ใช้ / รหัสผ่าน

ตอนนี้เมื่อฉัน ssh บนของฉัน aws-คอมพิวเตอร์ ฉันสามารถใช้:

ssh -p 2222 pc1

และมันเชื่อมต่อราวกับว่าฉันมีการเชื่อมต่อ SSH เดียว/ปกติ

คุณสามารถขุดอุโมงค์ซ้ำกี่ครั้งก็ได้ตามที่คุณต้องการ ซึ่งหมายความว่าในท้ายที่สุดคุณสามารถทำได้ ssh พีซี2 จาก pc1 และ one ssh พีซี1 จาก pc2 เป็นเพียงการตั้งค่าเล็กน้อยเพื่อให้ทุกอย่างใช้งานได้

โฮสต์คอมพิวเตอร์ aws
  ชื่อโฮสต์ <ที่อยู่ IP หรือชื่อโดเมน>
  ชื่อผู้ใช้
  พอร์ต 22
  เลขที่ยืนยันรหัสผ่าน
  หมายเลขการรับรองความถูกต้องตามโฮสต์
  Identitiesเท่านั้นใช่
  IdentityFile /home/name/.ssh/tunnel_keys/tunnel_rsa

หมายเหตุ: ฉันใช้ไดเร็กทอรีย่อยสำหรับคีย์พิเศษ (คีย์อื่นที่ไม่ใช่คีย์ปกติของฉัน) ดังนั้น ฉันสามารถมีจำนวนเท่าใดก็ได้.

ข้อจำกัดหลักคือคุณต้องใช้พอร์ตที่แตกต่างกัน (เช่น คุณไม่สามารถมี 2 บริการบนคอมพิวเตอร์เครื่องเดียวโดยใช้พอร์ตเดียว) ข้อจำกัดอื่นๆ คือ คอมพิวเตอร์เครื่องใดเครื่องหนึ่งต้องมีที่อยู่ IP แบบคงที่ หรือคุณต้องทำให้เซิร์ฟเวอร์ชื่อโดเมนพร้อมใช้งานซึ่งจะบันทึก IP DNS ดังกล่าวไม่ปลอดภัยมากนัก เนื่องจากอาจมีคนอื่นเข้ามาใช้ IP เก่า "ของคุณ" และระบบของคุณอาจพยายามเชื่อมต่อผ่านคอมพิวเตอร์ของบุคคลที่สาม

โพสต์คำตอบ

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