ฉันอยากรู้อยากเห็น SSH บีบอัดข้อมูลก่อนที่จะส่ง / รับหรือไม่? หากไม่ได้เป็นค่าเริ่มต้นจะสามารถเปิดใช้งานได้หรือไม่
ฉันอยากรู้อยากเห็น SSH บีบอัดข้อมูลก่อนที่จะส่ง / รับหรือไม่? หากไม่ได้เป็นค่าเริ่มต้นจะสามารถเปิดใช้งานได้หรือไม่
คำตอบ:
ไม่และใช่ ชนิดของ ซึ่งก็คือมันรองรับการบีบอัด (zlib หรือ zlib-ish ตามที่ฉันจำได้) แต่สำเนาหุ้นของ OpenSSH ไม่ได้เปิดใช้งานโดยค่าเริ่มต้นแม้ว่าการกระจายบางอย่างอาจเปิดใช้งานตามค่าเริ่มต้น (ฉันไม่คิดว่า Ubuntu จะทำ )
ดูman ssh_config
รายละเอียดที่ คุณกำลังมองหาCompression
และตัวเลือกที่คุณสามารถตั้งค่าแล้วCompressionLevel
/etc/ssh/ssh_config
โปรดทราบว่ายังมีCompression
ตัวเลือกสำหรับฝั่งเซิร์ฟเวอร์sshd_config
ที่กำหนดว่าจะอนุญาตให้มีการบีบอัดหรือไม่ (โดยค่าเริ่มต้น) ดูman sshd_config
รายละเอียดอีกครั้ง
-C
นอกจากนี้คุณยังสามารถเปิดการบีบอัดบนพื้นฐานต่อเซสชั่นโดยใช้ตัวเลือกบรรทัดคำสั่ง
โปรดทราบว่าการบีบอัดจริงจะมีเล็กน้อยเชิงลบผลกระทบต่อประสิทธิภาพหากการเชื่อมต่อระหว่างคุณและเซิร์ฟเวอร์เป็นไปอย่างรวดเร็ว (เช่นใน LAN เดียวกันหรือเพียงแค่การเชื่อมต่อที่ดีจริงๆอินเทอร์เน็ต) หรือหนึ่งหรือทั้งสองฝ่ายมี CPU ช้า (กินบีบอัดยุติธรรมบิต ของเวลา CPU)
วันนี้สำหรับคนส่วนใหญ่ฉันขอแนะนำให้ใช้เท่าที่จำเป็น โดยทั่วไปแล้วสำหรับลิงค์ที่มีขนาดน้อยกว่า 5-10mbps และเฉพาะเมื่อส่งผ่านข้อมูลจำนวนมาก (ถ่ายโอนไฟล์ที่ไม่ได้บีบอัด, X11 หรือการส่งต่อ VNC สิ่งที่ต้องการ)
Compression
สามารถเป็นได้ทั้งyes
หรือno
หน้าคนกล่าวว่า ... ขอบคุณครับที่จำเป็นในการยกเลิกการบีบอัดมันสำหรับโทรศัพท์ Android ของฉัน ...
CompressionLevel
เป็นตัวเลือกที่ใช้ได้เฉพาะกับโปรโตคอล SSH 1 ซึ่งไม่ได้เปิดใช้งานตามค่าเริ่มต้นด้วย OpenSSH เวอร์ชันปัจจุบันอีกต่อไป
คุณสามารถเปิดการบีบอัด gzip บน SSH ใดก็ได้ ใส่Compression yes
ของคุณ~/.ssh/config
และมันควรจะทำงาน อีกวิธีหนึ่งคือลองใช้ssh
กับ-C
ตัวเลือก
จากหน้าคน ssh (พิมพ์man ssh
เพื่อดูทุกสิ่ง):
-C Requests compression of all data (including stdin, stdout,
stderr, and data for forwarded X11 and TCP connections). The
compression algorithm is the same used by gzip(1), and the
“level” can be controlled by the CompressionLevel option for pro-
tocol version 1. Compression is desirable on modem lines and
other slow connections, but will only slow down things on fast
networks. The default value can be set on a host-by-host basis
in the configuration files; see the Compression option.
ดังนั้นเพียงแค่เปลี่ยน:
ssh hostname
ไปที่:
ssh -C hostname
คุณสามารถเปิดการบีบอัดด้วย-C
แต่จะไม่ทำงานหากเซิร์ฟเวอร์ไม่ได้รับอนุญาตให้ใช้พลังงานเคอร์เนลโดยไม่อนุญาตให้ทำการบีบอัด ตัวอย่างเช่นฉันได้เปลี่ยนตำแหน่งโฮสต์ของข้อมูลของตัวเองจาก Strato เป็นเซิร์ฟเวอร์ของฉัน ฉันรับรู้ได้เนื่องจากการใช้งานการดาวน์โหลด 2Mbit ที่ช้าและการเชื่อมต่ออัปโหลดที่ 0,3Mbit และตรวจสอบความแตกต่างของความเร็วขึ้นอยู่กับระดับการบีบอัดเนื่องจากระดับที่สูงกว่านั้นไม่ได้รวดเร็วกว่าทุกประการ
แต่ในกรณีของฉันมันใช้งานได้ดีเพราะมันสั้นลงเวลาที่ต้องการเป็น 6 ของเวลาก่อน
เหตุผลที่ง่ายที่สุดคือการใช้อ็อพชัน -o บน cli มันสามารถใช้กับตัวเลือกการตั้งค่าใด ๆ เช่น
ssh -o "Compression no" -v <HOST>
# or
ssh -o "Compression yes" -v <HOST>