คำถามติดแท็ก ssh-tunneling

ช่องสัญญาณ SSH จัดเตรียมช่องสัญญาณที่เข้ารหัสตามโปรโตคอล SSH

4
การย้อนกลับของ SSH tunneling ทำงานอย่างไร
ตามที่ฉันเข้าใจสิ่งนี้ไฟร์วอล (สมมติว่าการตั้งค่าเริ่มต้น) ปฏิเสธทราฟฟิกที่เข้ามาทั้งหมดซึ่งไม่มีทราฟฟิกขาออกที่สอดคล้องกันมาก่อน ขึ้นอยู่กับการย้อนกลับการเชื่อมต่อ sshและSSH Tunneling Made Easy , การย้อนกลับ SSH tunneling สามารถใช้เพื่อหลีกเลี่ยงข้อ จำกัด ไฟร์วอลล์ที่น่ารำคาญ ฉันต้องการรันคำสั่งเชลล์บนเครื่องระยะไกล เครื่องระยะไกลมีไฟร์วอลล์ของตัวเองและอยู่หลังไฟร์วอลล์เพิ่มเติม (เราเตอร์) มีที่อยู่ IP เช่น 192.168.1.126 (หรือบางอย่างที่คล้ายกัน) ฉันไม่ได้อยู่หลังไฟร์วอลล์และฉันรู้ที่อยู่ IP ของเครื่องระยะไกลที่เห็นจากอินเทอร์เน็ต (ไม่ใช่ที่อยู่ 192.168.1.126) นอกจากนี้ฉันสามารถขอให้บางคนทำงานssh (something)เป็นรูทบนเครื่องระยะไกลได้ก่อน มีใครอธิบายได้บ้างทีละขั้นตอนการทำ SSH ทันเนลย้อนกลับไปรอบ ๆ ไฟร์วอลล์ได้อย่างไร (ไฟร์วอลล์ของเครื่องโลคอลและรีโมทและไฟร์วอลล์เพิ่มเติมระหว่างพวกเขา) บทบาทของสวิทช์ (คืออะไร-R, -f, -L, -N)?

27
ข้อผิดพลาดในการสร้างอุโมงค์ SSH:“ ช่อง 1: เปิดล้มเหลว: ไม่อนุญาตให้ดำเนินการ: เปิดล้มเหลว”
เมื่อฉันเปิดอุโมงค์ SSH นี้: ssh -nXNT -p 22 localhost -L 0.0.0.0:8984:remote:8983 ฉันได้รับข้อผิดพลาดนี้เมื่อพยายามเข้าถึงเซิร์ฟเวอร์ HTTP ที่ทำงานบน localhost: 8984: channel 1: open failed: administratively prohibited: open failed ข้อผิดพลาดนี้หมายถึงอะไรและเครื่องใดที่คุณสามารถแก้ไขปัญหาได้

2
SSH: ช่องสัญญาณที่ไม่มีเชลล์บนเซิร์ฟเวอร์ ssh
ฉันต้องตั้งอุโมงค์ระหว่างสองครอบครัว สำหรับสิ่งนี้ฉันใช้sshในวิธีนี้: ssh -L MY_LOCAL_PORT:FOREIGN_ADDRESS:FOREIGN_PORT MYUSER@SSH_SERVER หลังจากนั้นฉันลงชื่อเข้าใช้ SSH_SERVER ของฉัน ฉันจะหลีกเลี่ยงคุณสมบัตินี้ได้อย่างไร! ฉันต้องตั้งอุโมงค์เท่านั้น ฉันไม่ต้องลงชื่อเข้าใช้ SSH_SERVER ของฉัน ... ฉันได้ลองใช้ตัวเลือก -N แล้ว แต่มันทำให้เชลล์ไม่ว่าง

6
วิธีฆ่าเซสชัน SSH ที่เริ่มต้นด้วยตัวเลือก -f (ทำงานในพื้นหลัง)
ฉันหลงทางไปแล้ว จากหน้าคน: -f Requests ssh to go to background just before command execution. หลังจากเริ่ม SSH ด้วย-fตัวเลือกฉันมีอุโมงค์ทำงาน แต่หลังจากใช้เสร็จฉันก็ไม่รู้จะโต้ตอบกับมันอย่างไร ตัวอย่างเช่นฉันไม่สามารถปิดอุโมงค์ SSHเมื่อฉันทำเสร็จแล้ว วิธีปกติฉันรู้ว่าไม่ทำงาน ตัวอย่างเช่นjobsคืนค่าอะไร ~คำสั่งไม่รับรู้ (และผมไม่ทราบว่าวิธีการที่จะใช้มันต่อไป) อย่างไรก็ตามpgrepบอกฉันว่าอุโมงค์ SSH ยังคงทำงานอยู่ (หลังจากฉันปิดเทอร์มินัล ฯลฯ ) ฉันจะโต้ตอบกับมันได้อย่างไร ฉันจะปิดมันได้อย่างไร

5
ฉันสามารถไปป์ / dev / วิดีโอผ่าน ssh ได้ไหม
ฉันมีคอมพิวเตอร์สองเครื่องเดสก์ทอปในสำนักงานของฉัน (มีเว็บแคมติดอยู่) และแล็ปท็อปที่อื่นในเครือข่าย ฉันมักจะดูที่สำนักงานของฉันผ่านเว็บแคมของฉันโดยใช้ ssh Office -Y "mplayer tv://device=/dev/video0" จากแล็ปท็อปของฉัน ฉันไม่ชอบ Xforwarding mplayer ดังนั้นเหตุใดฉันจึงไม่สามารถเจาะอุโมงค์/dev/videoไปยังพีซีของฉันได้ด้วยการใช้งานบนแล็ปท็อปของฉัน sudo mkfifo /dev/video1 ssh Office 'dd if=/dev/video' | sudo dd of=/dev/video1' แล้วดูเว็บแคม (บนแล็ปท็อปของฉัน) mplayer tv://device=/dev/video1

3
ssh พอร์ตส่งต่อเพื่อเข้าถึงเครื่องที่บ้านของฉันได้จากทุกที่
ฉันมาจากคำถามนี้: /superuser/359799/how-to-make-freebsd-box-accessible-from-internet port forwardingฉันต้องการที่จะเข้าใจกระบวนการทั้งหมดนี้ ฉันอ่านหลายสิ่งหลายอย่าง แต่ไม่เข้าใจแนวคิดพื้นฐานของการส่งต่อพอร์ตของตัวเอง สิ่งที่ฉันมี: เซิร์ฟเวอร์ freebsd นั่งอยู่ที่บ้านของฉัน เน็ตเราเตอร์ นี่คือสิ่งที่ฉันพยายามบรรลุ: เพื่อให้สามารถเข้าถึงเซิร์ฟเวอร์ freebsd จากเครื่อง windows ผ่านอินเทอร์เน็ตเพื่อให้สามารถเปิดเว็บเบราว์เซอร์และเข้าถึงอินเทอร์เน็ต ฉันยังต้องการเข้าถึงกล่อง freebsd นี้จากเครื่องอูบุนตูที่ฉันมี มันจะดีถ้ามีคนช่วยฉันด้วย นี่คือการตั้งค่าเราเตอร์ netgear ที่ฉันทำเพื่อการส่งต่อพอร์ต

2
ssh เข้าสู่เซิร์ฟเวอร์ที่เชื่อมต่อกับบริการ VPN
ฉันมีเซิร์ฟเวอร์ส่วนตัวเสมือนซึ่งฉันต้องการเรียกใช้เว็บเซิร์ฟเวอร์ในขณะที่เซิร์ฟเวอร์ของฉันเชื่อมต่อกับบริการ VPN เมื่อการเชื่อมต่อ VPN กับผู้ให้บริการของฉันไม่ทำงานฉันสามารถทำทุกอย่างที่ฉันต้องการกับเซิร์ฟเวอร์นี้, ssh, scp, http เป็นต้น เมื่อ openvpn ทำงานและเชื่อมต่อกับบริการ VPN ของผู้ให้บริการเซิร์ฟเวอร์จะไม่สามารถเข้าถึงได้ด้วยวิธีการใด ๆ และแน่นอนว่ามีเหตุผลที่ดี ภาพเป็นดังนี้: My VPS ------------ +----------------+ / \ | | / Internet / 101.11.12.13 | 50.1.2.3|-----------------\ cloud /----<--- me@myhome | | / \ | 10.80.70.60| / \ +----------------+ \ \ : \_____________/ : : : …

3
ฉันจะรู้ได้อย่างไรว่าอุโมงค์ ssh ของฉันสร้างเสร็จเรียบร้อยแล้ว?
ฉันพึ่งพาสคริปต์ต่อไปนี้ที่tunnel.shเขียนโดยผู้อื่นเพื่อให้อุโมงค์ ssh ยังมีชีวิตอยู่: #!/bin/bash export SSH_HOST=tim@server if [ ! -f /tmp/.tunnel ] then echo "Creat SSH tunnel" ssh -f -D 9999 $SSH_HOST "if [ -f ~/.tunnel ]; then rm ~/.tunnel; fi; while [ ! -f ~/.tunnel ]; do echo > /dev/null; done" & touch /tmp/.tunnel else echo "Close SSH tunnel" …

2
แก้ไขการตั้งค่าไฟล์ ssh config เพื่อ tunnel ไปยังเครื่องที่ 3
ฉันกำลังพยายามอุโมงค์ไปยังเซิร์ฟเวอร์ผ่านเซิร์ฟเวอร์บริดจ์ จนถึงตอนนี้ฉันสามารถทำให้มันใช้งานได้จากเชลล์คำสั่งอย่างถูกต้องโดยใช้คำสั่งต่อไปนี้: ssh -A -t bridge_userid@bridgemachine.com ssh -A remote_userid@remoteserver.com แต่ฉันพยายามที่จะรวม~/.ssh/configไฟล์นี้ไว้ในไฟล์ของฉันและฉันมีปัญหา ฉันได้พยายาม: Host axp User remote_userid HostName remoteserver.com IdentityFile ~/.ssh/id_rsa.eric ProxyCommand ssh -A -t bridge_userid@bridge_userid.com ssh -A remote_userid@%h แต่เมื่อฉันทำฉันได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้remoteserver.comและฉันไม่แน่ใจว่าเกิดจากอะไร: ksh: SSH-2.0-OpenSSH_6.8 ^ M: ไม่พบ ฉันรู้ว่าเมื่อฉันเข้าสู่เปลือกของฉันคือremoteserver.com/usr/bin/ksh ฉันพยายามเพิ่มพา ธ อาร์กิวเมนต์ไปยังคำสั่ง ssh ในไฟล์ปรับแต่ง แต่มันก็ไม่ต่างกัน ความคิดใด ๆ ที่สามารถเป็นได้?

3
ssh ถึง private-ip
ฉันมีคอมพิวเตอร์ที่มี CentOS (คอมพิวเตอร์ A) ที่มีการกำหนดค่าเช่นเดียวกับ IP ส่วนตัว 10.150.5.141 (มีไฟร์วอลล์ จำกัด ) สามารถเข้าถึงอินเทอร์เน็ตและ ArchLinux VPS (คอมพิวเตอร์ B) ของฉันด้วย ip จริง wxyz ฉันจะสร้าง pc อีกเครื่อง (คอมพิวเตอร์ C) ที่สามารถเข้าถึงคอมพิวเตอร์ B เพื่อเชื่อมต่อกับคอมพิวเตอร์ A ได้ แต่คอมพิวเตอร์ C ไม่สามารถเชื่อมต่อกับคอมพิวเตอร์ A โดยตรง (เพราะเป็นเครือข่ายส่วนตัวของ A) ฉันรู้ว่าอุโมงค์สามารถเปิดพอร์ตในเครื่องไปยังคอมพิวเตอร์เครื่องอื่น: พอร์ต แต่จะทำอย่างไรตรงกันข้าม ฉันต้องการเข้าถึงคอมพิวเตอร์ A โดยใช้sshคอมพิวเตอร์ B แต่คอมพิวเตอร์ B ไม่สามารถเข้าถึงคอมพิวเตอร์ A ได้เนื่องจากเครือข่ายในคอมพิวเตอร์ A …

3
ฉันจะส่งต่อเสียงผ่าน VNC ได้อย่างไร
ฉันใช้ TightVNC และ Remmina Remote Desktop เพื่อเชื่อมต่อ Raspberry Pi ของฉันกับแล็ปท็อป Ubuntu ผ่าน VNC มันใช้งานได้ดีส่วนใหญ่ยกเว้นความจริงที่ว่าไม่มีเสียง ฉันไปทั่วสถานที่ค้นหาเสียงส่งต่อผ่าน VNC, ส่งเสียงผ่าน VNC ผ่านอุโมงค์ SSH, ส่งต่อเสียงผ่าน PulseAudio Network Transparency ฉันหาวิธีทำไม่ได้ ไม่มีใครรู้วิธีรับเสียงผ่าน VNC หรือไม่

3
ให้การเข้าถึงเซิร์ฟเวอร์กับอินเทอร์เน็ตผ่านการเชื่อมต่อไคลเอ็นต์โดย SSH
ฉันสามารถใช้คอมพิวเตอร์ที่บ้านAเพื่อเชื่อมต่อโดย SSH ไปยังเซิร์ฟเวอร์Bซึ่งการเข้าถึงเครือข่ายภายนอกถูกบล็อก กล่าวอีกนัยหนึ่งการร้องขอไปยังอินเทอร์เน็ตจากBเกิดข้อผิดพลาด: เครือข่ายไม่สามารถเข้าถึงได้ ฉันสามารถเปลี่ยนเส้นทางคำขอทั้งหมดเหล่านี้เพื่อส่งผ่านคอมพิวเตอร์Aซึ่งมีการเข้าถึงอินเทอร์เน็ตแบบไม่ จำกัด ได้หรือไม่? เซิร์ฟเวอร์Bเป็นเซิร์ฟเวอร์ที่โฮสต์หนึ่งในเว็บไซต์ของฉัน ฉันต้องการดาวน์โหลดไฟล์เพื่อติดตั้งซอฟต์แวร์บางอย่าง แต่การเชื่อมต่อถูกบล็อก ผมสามารถที่จะถ่ายโอนไฟล์ แต่มันก็มีความซับซ้อนเพราะรุ่นจะแตกต่างกันในและBเพื่อการอ้างอิงที่แตกต่างกันและต้องไฟล์ที่แตกต่างกันในและB ฉันค้นหาบนอินเทอร์เน็ตและดูเหมือนว่าฉันต้องการอุโมงค์ย้อนกลับ แต่ผมพบว่าเพียงการแก้ปัญหาที่พอร์ตถูกเปลี่ยนเส้นทาง แต่ไม่ใช่สิ่งที่ฉันต้องการเนื่องจากฉันไม่ต้องการให้Bเข้าถึงAแต่เชื่อมต่อกับอินเทอร์เน็ต

1
ย้อนกลับ ssh tunnel ใน config
ฉันจะสร้างอุโมงค์ ssh แบบย้อนกลับด้วยไฟล์. / ssh/config ของฉันได้อย่างไร ฉันพยายามที่จะทำซ้ำคำสั่งนี้ ssh -R 55555:localhost:22 user@host ในไฟล์. ssh / config ของฉันเพื่อที่ว่าเมื่อฉันพิมพ์ssh hostฉันจะ ssh ไปยังโฮสต์ในฐานะผู้ใช้และมีอุโมงค์ย้อนกลับ คำสั่งที่ยอมรับโดยไฟล์กำหนดค่าเป็นคู่หู verbose เพิ่มเติมกับแฟล็กบรรทัดคำสั่ง ขึ้นอยู่กับ ssh manpage และ manpage สำหรับ ssh_config ดูเหมือนว่าการตั้งค่าที่เกี่ยวข้องคือ BindAddress ในไฟล์. ssh / config ของฉันมี: Host host Hostname host User user BindAddress 55555:localhost:22 รูปแบบที่แตกต่างกันเล็กน้อยนี้ส่งผลให้การเชื่อมต่อถูกปฏิเสธเมื่อฉันลอง ssh localhost -p 55555 เมื่อเข้าสู่ระบบในโฮสต์ …

2
ทำความเข้าใจอุโมงค์ SSH
ฉันมีเซิร์ฟเวอร์ linux (Ubuntu) ที่ฉันสามารถเข้าถึงรูทผ่าน ssh (พอร์ต 22) เท่านั้น บนเซิร์ฟเวอร์นั้นมีฐานข้อมูล MySQL กำลังรับฟังพอร์ต 3306 เป็นไปได้ไหมที่จะใช้ผงสำหรับอุดรู (บนเครื่องของฉัน) และการสร้างช่องสัญญาณ (บนเครื่อง linux) เพื่อสร้างช่องสัญญาณจากพอร์ตในเครื่องของฉัน (พูด 4000) เซิร์ฟเวอร์ linux ที่พอร์ต 22 และจากเซิร์ฟเวอร์ไปยังตัวเองที่พอร์ต 3306?

2
เดสก์ท็อประยะไกลผ่านอุโมงค์ย้อนกลับ SSH เพื่อแทนที่ TeamViewer
ฉันต้องการเปิดเซสชันเดสก์ท็อประยะไกลจากแล็ปท็อปของฉันไปยังเดสก์ท็อปผ่านอุโมงค์ SSH (ย้อนกลับ) ของฉัน นั่นควรจะง่าย (หรืออย่างน้อยก็ทำได้) ใช่ไหม? จนถึงตอนนี้ฉันใช้ Team Viewer เพื่อเข้าสู่เดสก์ท็อประยะไกล ฉันต้องการได้ผลลัพธ์ที่คล้ายกันโดยไม่มี Team Viewer นี่คือลักษณะ SSH อุโมงค์ของฉัน: laptop--->nat--->middleman<--nat<--desktop ทุกเครื่องใช้ลีนุกซ์ (ส่วนใหญ่เป็น Ubuntu 12.04 หรือ OpenSuse 12.3) ฉันไม่สามารถเปลี่ยนพอร์ตใด ๆ หรือทำการเปลี่ยนแปลงการกำหนดค่าใด ๆ บนเราเตอร์ nat ฉันจะอธิบายอุโมงค์ SSH ของฉันเพราะความเข้าใจที่ดูเหมือนมีความจำเป็นในการแก้ปัญหา VNC / เดสก์ท็อประยะไกลที่เป็นหัวใจของคำถามของฉัน เกี่ยวกับขานี้: middleman<--nat<--desktop ... นี่คือวิธีการจัดตั้ง: autossh -M 5234 -N -f -R 1234:localhost:22 user@middleman.com เกี่ยวกับขานี้: …

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