การบันทึกอุโมงค์ SSH?


13

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


คุณต้องการที่จะไม่อนุญาตการเข้าถึงอินเทอร์เน็ตทั้งหมดสำหรับผู้ใช้เหล่านั้นหรือแค่ส่งต่อพอร์ต?
JanC

1
ฉันต้องการไม่อนุญาตการส่งต่อพอร์ตและ SOCKS ผู้รับมอบฉันทะผ่าน SSH
Frxstrem

คำตอบ:


10

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

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

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


9

คุณต้องการให้แน่ใจว่า / etc / ssh / sshd_config มี

AllowTcpForwarding no

จากนั้นในตอนท้ายของไฟล์ใส่

Match User yourusername
    AllowTcpForwarding yes

สิ่งนี้จะช่วยให้คุณและคุณเพียงคนเดียวที่จะส่งต่อไปยังเนื้อหาในใจของคุณ แต่อย่างที่Joãoกล่าวว่าคุณจะไม่สามารถป้องกันไม่ให้พวกเขาเรียกใช้โปรแกรมของตนเองเว้นแต่ว่าคุณจะปิดการเข้าถึงเชลล์ด้วย


8

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

ตัวอย่างเช่นหากพวกเขาสามารถ scp ไฟล์ไปยังเซิร์ฟเวอร์และเรียกใช้ไฟล์ใน / home พวกเขาสามารถอัปโหลด pppd binary และใช้เพื่อเรียกใช้ PPP ผ่าน SSH หากคุณอนุญาตให้มีการเชื่อมต่อเข้ามาพวกเขาสามารถเรียกใช้/usr/sbin/sshd -p 9999 -f special_sshd_configและใช้เซิร์ฟเวอร์ของคุณผ่าน sshd นั้นได้

คุณอาจต้องการดูโมดูลเจ้าของ iptables (man iptables ค้นหาเจ้าของ) และ chroot jails แต่นี่เป็นเรื่องยากที่จะแก้ไขโดยไม่ทำลายประสบการณ์เชลล์ของพวกเขา


1

ตัวเลือกเดียวที่ฉันเป็นคือการปิดใช้งานการขุดที่ระดับระบบ

แก้ไข / etc / ssh / sshd_config และเปลี่ยน / เพิ่ม

AllowTcpForwarding no

โปรดทราบว่าในขณะที่มีการเข้าถึงเชลล์ไม่มีวิธีที่จะป้องกันผู้ใช้จากการใช้ไบนารีของตนเองสำหรับการส่งต่อการเชื่อมต่อ


1
นี่ไม่ใช่ทางออกที่ยอมรับได้เพราะฉันต้องใช้ SSH tunneling ตัวเอง (ดังที่ฉันพูดในคำถามของฉัน)
Frxstrem

นั่นคือการปิดใช้งานจริงในระดับแอปพลิเคชัน
chiggsy


0

การทำซ้ำครั้งแรก:

ปิดใช้งานการส่งต่อ ssh สำหรับพวกเขา ใน ssh

คุณเปิดใช้งาน IPSec สำหรับตัวคุณเองและ VPN ไปยังเซิร์ฟเวอร์ของคุณ IPSec เป็นระดับเครือข่ายจึงไม่ได้รับผลกระทบจากการตั้งค่าแอปพลิเคชัน SSH

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