OpenSSH: วิธีสิ้นสุดบล็อกการแข่งขัน


49

ฉันใช้Matchบล็อกใน OpenSSH ของ/etc/ssh/sshd_config(บนเดเบียน) เพื่อ จำกัด ผู้ใช้บางคนไปยัง SFTP:

# my stuff
Match group sftponly
    X11Forwarding no
    AllowTcpForwarding no
    ForceCommand internal-sftp -u 0002
    ChrootDirectory %h

อย่างที่คุณเห็นฉันใช้#my stuffความคิดเห็นในไฟล์ปรับแต่งที่กำหนดเองเพื่อแยกแยะการกำหนดค่าเริ่มต้นจากสิ่งที่ฉันทำได้อย่างง่ายดาย
ตอนนี้ผมอยากจะต่อท้ายคำสั่งUseDNS noเพื่อกำหนดค่า (เพื่อเพิ่มความเร็วในการเข้าสู่ระบบ) แต่ OpenSSH Directive 'UseDNS' is not allowed within a Match blockกล่าวว่า

ตอนนี้ฉันสงสัยว่ามีไวยากรณ์ที่ต้องการEnd Matchจบบล็อกการแข่งขันเหล่านั้นหรือไม่

คำตอบ:


30

ในการจบบล็อกการแข่งขันด้วย openssh 6.5p1 หรือสูงกว่าให้ใช้บรรทัด: Match all

นี่คือรหัสส่วนหนึ่งนำมาจาก/etc/ssh/sshd_configไฟล์ของฉัน:

# Change to no to disable tunnelled clear text passwords
PasswordAuthentication no

Match host 192.168.1.12
    PasswordAuthentication yes
Match all

X11Forwarding yes
X11DisplayOffset 10

บรรทัดที่มีพื้นรองเท้าMatchจะไม่ทำงาน (มันไม่ได้ผลสำหรับฉัน sshd ปฏิเสธที่จะเริ่ม)


2
เจ๋งฉันเพิ่งลองออกมาหนึ่งครั้งและดูเหมือนว่าจะทำงานได้ตามที่คาดไว้ (ฉันสามารถใช้UseDNSคำสั่ง (ซึ่งไม่ได้ผลมาก่อน) ยอมรับว่านี่เป็นคำตอบใหม่ - เวอร์ชั่นใหม่กว่าของ OpenSSH จะไม่ได้ เริ่มต้นด้วยว่างMatch: รายการ. mindrot.org/pipermail/openssh-unix-dev/2014-April/ …
mreithub

42

ดูเหมือนว่าไม่มีวิธีใดที่จะจบการแข่งขันบล็อกอย่างชัดเจน จากหน้าคู่มือ sshd_config :

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

ดังนั้นMatchบล็อกจะต้องอยู่ที่ท้ายsshd_configไฟล์


7
อีกทางเลือกหนึ่งคือการมีเส้นที่ไม่มีอะไรเลยนอกจากMatchมันซึ่งตรงกับทุกอย่างได้อย่างมีประสิทธิภาพดังนั้นจึงเหมือนกับ 'สิ้นสุด' บล็อก สิ่งนี้จะไม่อนุญาตให้คุณใช้คำสั่งที่ไม่ได้รับอนุญาตในการจับคู่บล็อกดังนั้นมันจะไม่ช่วยในสถานการณ์เฉพาะของคุณ
นาธาน Bouscal

4
"บล็อกการแข่งขันจะต้องอยู่ท้ายไฟล์ sshd_config" มีประโยชน์มากสำหรับฉันและไม่ได้อธิบายอย่างชัดเจนพอ (สำหรับฉัน) ในหน้าคน ฯลฯ ขอบคุณ
MountainX

0

ฉันคิดว่าเราควรพูดถึงMatchและที่Hostสำคัญในเวลาเดียวกัน

Host

จำกัด การประกาศดังต่อไปนี้ (ไม่เกินคำHostหรือ ถัดไปMatch) เป็นเฉพาะสำหรับโฮสต์ที่ตรงกับหนึ่งในรูปแบบที่กำหนดไว้หลังจากคำหลัก

Match

จำกัด การประกาศดังต่อไปนี้ (สูงสุดถัดไปHostหรือ Matchคำหลัก) ที่จะใช้เฉพาะเมื่อตรงตามเงื่อนไขต่อไปนี้คำหลักที่ตรงกัน

การอ่านคู่มือของman ssh_configทั้งสองHost *และMatch allจะรีเซ็ตบล็อกการ จำกัด เดิมไม่ว่าจะเป็นMatchบล็อกหรือHostบล็อก

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