การพยายามโน้มน้าวsshd
daemon แบบสแตนด์อโลนเพื่อ จำกัด จำนวนเซสชันนั้นเต็มไปด้วยช่องโหว่ สิ่งต่าง ๆ เช่นMaxSessions
จำกัด สิ่งอื่นนอกเหนือจากที่ OP พูดถึง และsshd
ไม่สนใจlimits.conf
บน linux (คล้ายlogin.conf
กับ FreeBSD) เว้นแต่คุณจะกำหนดค่าสิ่งต่าง ๆ ให้ถูกต้องเพื่อกำหนดเส้นทางเซสชันที่เข้ามาทั้งหมดผ่าน PAM และใช้โมดูล PAM ที่กำหนดค่าอย่างเหมาะสมเพื่อตรวจสอบสิ่งต่าง ๆ เช่น limit.conf ก่อน มันยากที่จะทำให้มันทำงานถูกต้อง
ในทางตรงกันข้ามหากคุณไม่ได้เริ่มต้นsshd
เป็นภูตแบบสแตนด์อโลนคุณสามารถใช้คุณสมบัติการ จำกัด ใน "สิ่ง" ที่วางไข่sshd
ตามความต้องการ
ตัวอย่างเช่นinetd
และxinetd
มีคุณสมบัติการ จำกัด การเชื่อมต่อ (ซึ่งโดยปกติแล้วจะเป็นค่าเริ่มต้นที่จะไม่บังคับใช้ข้อ จำกัด ใด ๆ กับจำนวนของลูกที่มีการแยก) ในแบบคลาสสิกinetd
เรียกว่า "max-child" ด้วยxinetd
ให้มองหาinstances
ปุ่มปรับตั้งค่า ตัวอย่างเช่นinetd
สไตล์:
ssh stream tcp nowait/3 root /usr/sbin/sshd sshd -i -4
ที่ จำกัด จำนวนการเชื่อมต่อ ssh พร้อมกันถึง 3
สำหรับผู้ที่มีความโน้มเอียงดังนั้นsystemd
สามารถแทนที่ฟังก์ชั่นของinetd
และฉันเชื่อว่ามีวิธีที่จะ จำกัด จำนวนอินสแตนซ์ของบริการ แบบฝึกหัดที่เหลือให้ผู้อ่าน (หรือเพิ่มความคิดเห็นพร้อมรายละเอียด!)