Skip to main content

ทั้งหมดเกี่ยวกับคำสั่ง Linux / Unix: sshd

3.Terminal - basic commands linux : คำสั่ง mkdir,touch,rmdir,rm,cp,mv,cat (เมษายน 2025)

3.Terminal - basic commands linux : คำสั่ง mkdir,touch,rmdir,rm,cp,mv,cat (เมษายน 2025)
Anonim

ชื่อ

sshd - ภูต SSH ของ OpenSSH

สรุป

sshd -deiqtD46 - เกร็ด - config_file -ก. login_grace_time -ชั่วโมง host_key_file -k key_gen_time -โอ ตัวเลือก -พี ท่าเรือ -ยู len

ลักษณะ

sshd (SSH Daemon) เป็นโปรแกรมภูตสำหรับ ssh (1) รวมโปรแกรมเหล่านี้เข้าด้วยกัน rlogin และ rshและให้การสื่อสารที่เข้ารหัสแบบปลอดภัยระหว่างโฮสต์ที่ไม่น่าเชื่อถือสองแห่งผ่านเครือข่ายที่ไม่ปลอดภัย โปรแกรมนี้มีวัตถุประสงค์เพื่อให้ติดตั้งและใช้งานได้ง่ายที่สุดเท่าที่จะเป็นไปได้

sshd เป็นภูตที่ฟังการเชื่อมต่อจากลูกค้า เป็นปกติเริ่มต้นที่บูตจาก / etc / rc มัน forks daemon ใหม่สำหรับการเชื่อมต่อขาเข้าแต่ละ Daemons forked จัดการการแลกเปลี่ยนคีย์การเข้ารหัสการตรวจสอบการเรียกใช้คำสั่งและการแลกเปลี่ยนข้อมูล การใช้งานของsshd รองรับโปรโตคอล SSH เวอร์ชัน 1 และ 2 พร้อมกัน

โปรโตคอล SSH เวอร์ชัน 1

โฮสต์แต่ละแห่งมีคีย์ RSA เฉพาะโฮสต์ (ปกติ 1024 บิต) ที่ใช้เพื่อระบุโฮสต์ นอกจากนี้เมื่อ daemon เริ่มทำงานจะสร้างคีย์ RSA ของเซิร์ฟเวอร์ (ปกติ 768 บิต) คีย์นี้จะถูกสร้างใหม่ทุกๆชั่วโมงหากมีการใช้และไม่เคยถูกเก็บไว้ในดิสก์

เมื่อใดก็ตามที่ไคลเอ็นต์เชื่อมต่อภูตเครื่องตอบรับกับโฮสต์และคีย์เซิร์ฟเวอร์ของโฮสต์ ไคลเอ็นต์เปรียบเทียบคีย์โฮสต์ RSA กับฐานข้อมูลของตนเองเพื่อยืนยันว่าไม่มีการเปลี่ยนแปลง จากนั้นไคลเอ็นต์จะสร้างหมายเลขสุ่ม 256 บิต จะเข้ารหัสตัวเลขสุ่มนี้โดยใช้ทั้งคีย์โฮสต์และคีย์เซิร์ฟเวอร์และส่งข้อมูลที่เข้ารหัสไปยังเซิร์ฟเวอร์ ทั้งสองฝ่ายใช้หมายเลขสุ่มนี้เป็นคีย์เซสชันซึ่งใช้เพื่อเข้ารหัสการสื่อสารเพิ่มเติมทั้งหมดในเซสชัน ส่วนที่เหลือของเซสชันจะถูกเข้ารหัสโดยใช้ตัวเลขแบบเดิมขณะนี้คือปักเป้าหรือ 3DES โดยมีการใช้ 3DES ตามค่าเริ่มต้น ไคลเอนต์เลือกอัลกอริทึมการเข้ารหัสลับเพื่อใช้จากเซิร์ฟเวอร์ที่นำเสนอโดยเซิร์ฟเวอร์

ถัดไปเซิร์ฟเวอร์และไคลเอ็นต์ป้อนโต้ตอบการตรวจสอบสิทธิ์ ไคลเอ็นต์พยายามตรวจสอบตัวเองโดยใช้. rhosts authentication, .rhosts authentication รวมกับการรับรองความถูกต้องของโฮสต์ RSA, การรับรองความถูกต้องของการตอบสนองความท้าทาย RSA หรือการตรวจสอบสิทธิ์ผ่านรหัสผ่าน

การตรวจสอบสิทธิ์ Rhosts ถูกปิดใช้งานโดยปกติเนื่องจากไม่ปลอดภัยโดยพื้นฐาน แต่สามารถเปิดใช้งานได้ในไฟล์การกำหนดค่าเซิร์ฟเวอร์หากต้องการ ความปลอดภัยของระบบจะไม่ดีขึ้นเว้นแต่ว่าrshdrlogind และ rexecd ถูกปิดใช้งาน (ดังนั้นการปิดใช้ rlogin และ rsh ลงในเครื่อง)

โปรโตคอล SSH เวอร์ชัน 2

เวอร์ชัน 2 ทำงานคล้าย ๆ กัน: แต่ละโฮสต์มีคีย์เฉพาะโฮสต์ (RSA หรือ DSA) ที่ใช้เพื่อระบุโฮสต์ อย่างไรก็ตามเมื่อ daemon เริ่มทำงานจะไม่สร้างคีย์เซิร์ฟเวอร์ การรักษาความปลอดภัยขั้นสูงผ่านข้อตกลงสำคัญของ Diffie-Hellman ข้อตกลงสำคัญนี้ส่งผลให้เกิดคีย์เซสชันที่ใช้ร่วมกัน

ส่วนที่เหลือของเซสชันจะถูกเข้ารหัสโดยใช้รหัสที่สมมาตรปัจจุบันคือ 128 บิต AES, Blowfish, 3DES, CAST128, Arcfour, 192 บิต AES หรือ 256 บิต AES ไคลเอนต์เลือกอัลกอริทึมการเข้ารหัสลับเพื่อใช้จากเซิร์ฟเวอร์ที่นำเสนอโดยเซิร์ฟเวอร์ นอกจากนี้ความสมบูรณ์ของเซสชันจะมีให้ผ่านรหัสการตรวจสอบความลับของข้อความเข้ารหัสลับ (hmac-sha1 หรือ hmac-md5)

รุ่น Protocol 2 มีวิธีการรับรองความถูกต้องของผู้ใช้คีย์สาธารณะ (PubkeyAuthentication) หรือโฮสต์ไคลเอ็นต์ (HostbasedAuthentication) การตรวจสอบรหัสผ่านแบบเดิมและวิธีการที่ใช้การตอบสนองตามความท้าทาย

การดำเนินการคำสั่งและการส่งต่อข้อมูล

ถ้าไคลเอ็นต์ตรวจสอบตัวเองเสร็จเรียบร้อยแล้วจะมีการป้อนกล่องโต้ตอบสำหรับเตรียมเซสชัน ในขณะนี้ลูกค้าอาจขอสิ่งต่างๆเช่นการจัดสรร pseudo-tty การส่งต่อการเชื่อมต่อ X11 การส่งต่อการเชื่อมต่อ TCP / IP หรือการส่งต่อการเชื่อมต่อตัวแทนการตรวจสอบผ่านแชนเนลที่ปลอดภัย

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

เมื่อโปรแกรมผู้ใช้สิ้นสุดลงและการส่งต่อ X11 และการเชื่อมต่ออื่น ๆ ทั้งหมดถูกปิดเซิร์ฟเวอร์จะส่งสถานะออกคำสั่งไปยังไคลเอ็นต์และทั้งสองฝ่ายออก

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

sshd rereads ไฟล์การกำหนดค่าของมันเมื่อได้รับสัญญาณ hangup,SIGHUP โดยเรียกใช้ตัวเองด้วยชื่อที่เริ่มต้นเป็นเช่น / usr / sbin / sshd

ตัวเลือกมีดังนี้:

-b เกร็ด

ระบุจำนวนบิตในรหัสเซิร์ฟเวอร์ชั่วคราวเวอร์ชัน 1 (ค่าเริ่มต้น 768)

-d

โหมดดีบัก เซิร์ฟเวอร์จะส่งข้อมูลการแก้ปัญหา verbose ไปยังบันทึกของระบบและไม่ได้วางตัวเองไว้เบื้องหลัง เซิร์ฟเวอร์จะไม่ทำงานและจะประมวลผลการเชื่อมต่อเดียวเท่านั้น ตัวเลือกนี้มีไว้สำหรับการดีบักสำหรับเซิร์ฟเวอร์เท่านั้น หลายตัวเลือก -d เพิ่มระดับการแก้จุดบกพร่อง สูงสุดคือ 3

-e

เมื่อระบุตัวเลือกนี้sshd จะส่งผลลัพธ์ไปยังข้อผิดพลาดมาตรฐานแทนการบันทึกระบบ

-f configuration_file

ระบุชื่อไฟล์การกำหนดค่า ค่าดีฟอลต์คือ / etc / ssh / sshd_configsshdปฏิเสธที่จะเริ่มต้นถ้าไม่มีแฟ้มการกำหนดค่า

-G login_grace_time

ให้เวลาผ่อนผันสำหรับลูกค้าในการตรวจสอบตัวเอง (ค่าเริ่มต้น 120 วินาที) หากไคลเอ็นต์ไม่สามารถตรวจสอบความถูกต้องของผู้ใช้ได้ภายในหลายวินาทีเซิร์ฟเวอร์จะยกเลิกการเชื่อมต่อและออกจากระบบค่าเป็นศูนย์แสดงว่าไม่มีขีด จำกัด

-h host_key_file

ระบุไฟล์จากที่อ่านคีย์โฮสต์ ต้องระบุตัวเลือกนี้หากsshd ไม่ทำงานเป็น root (เนื่องจากไฟล์สำคัญของโฮสต์ปกติไม่สามารถอ่านได้โดยทุกคนยกเว้น root) ค่าเริ่มต้นคือ / etc / ssh / ssh_host_key สำหรับโปรโตคอลเวอร์ชัน 1 และ / etc / ssh / ssh_host_rsa_key และ / etc / ssh / ssh_host_dsa_key สำหรับโปรโตคอลเวอร์ชัน 2. สามารถเก็บไฟล์คีย์หลักได้หลายไฟล์สำหรับโปรโตคอลเวอร์ชันต่างๆและคีย์โฮสต์ อัลกอริทึม

-ผม

ระบุว่าsshd กำลังทำงานจาก inetdsshd โดยปกติจะไม่ทำงานจาก inetd เนื่องจากจำเป็นต้องสร้างคีย์เซิร์ฟเวอร์ก่อนที่จะสามารถตอบสนองต่อไคลเอ็นต์และอาจใช้เวลาหลายสิบวินาที ลูกค้าจะต้องรอนานหากคีย์ถูกสร้างใหม่ทุกครั้ง อย่างไรก็ตามใช้ขนาดคีย์เล็ก (เช่น 512) โดยใช้sshd จาก inetd อาจเป็นไปได้

-k key_gen_time

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

-o ตัวเลือก

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

-p ท่าเรือ

ระบุพอร์ตที่เซิร์ฟเวอร์รับฟังการเชื่อมต่อ (ค่าเริ่มต้น 22) อนุญาตให้ใช้พอร์ตหลายพอร์ต พอร์ตที่ระบุในแฟ้มการกำหนดค่าจะถูกละเว้นเมื่อมีระบุพอร์ตบรรทัดคำสั่ง

-q

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

t-

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

-ยู len

ตัวเลือกนี้ใช้เพื่อระบุขนาดของฟิลด์ในฟิลด์utmp โครงสร้างที่เก็บชื่อโฮสต์ระยะไกล ถ้าชื่อโฮสต์ที่ได้รับการแก้ไขยาวกว่า len ค่าทศนิยมทศนิยมจะถูกนำมาใช้แทน ซึ่งจะช่วยให้โฮสต์ที่มีชื่อโฮสต์ที่ยาวมาก ๆ ที่มีการทับข้อมูลฟิลด์นี้จะยังคงมีการระบุที่ไม่ซ้ำกัน ระบุ -U0 ระบุว่าเฉพาะที่อยู่ทศนิยมทศนิยมควรจะใส่ลงในไฟล์ utmp -U0 นอกจากนี้ยังใช้เพื่อป้องกันsshd จากการร้องขอ DNS เว้นแต่ว่ากลไกการตรวจสอบสิทธิ์หรือการกำหนดค่าจะต้องใช้ กลไกการตรวจสอบสิทธิ์ที่อาจต้องใช้ DNSRhostsAuthenticationRhostsRSAAuthentication HostbasedAuthentication และใช้ aจาก = รูปแบบรายการในไฟล์สำคัญ ตัวเลือกการกำหนดค่าที่ต้องใช้ DNS รวมถึงการใช้ USER @ HOSTpattern ในAllowUsers หรือDenyUsers

-D

เมื่อเลือกตัวเลือกนี้sshd จะไม่ถอดออกและไม่ได้เป็นภูต ช่วยให้สามารถตรวจสอบได้ง่ายsshd

-4

กองกำลังsshd ใช้ที่อยู่ IPv4 เท่านั้น

-6

กองกำลังsshd ใช้ที่อยู่ IPv6 เท่านั้น

แฟ้มการกำหนดค่า

sshd อ่านข้อมูลการกำหนดค่าจาก / etc / ssh / sshd_config (หรือไฟล์ที่ระบุด้วย - ในบรรทัดคำสั่ง) รูปแบบไฟล์และตัวเลือกการกำหนดค่าจะอธิบายไว้ใน sshd_config5

ขั้นตอนการเข้าสู่ระบบ

เมื่อผู้ใช้เข้าสู่ระบบได้สำเร็จsshd ทำสิ่งต่อไปนี้:

  1. หากการเข้าสู่ระบบอยู่ใน tty และไม่มีการระบุคำสั่งพิมพ์ครั้งสุดท้ายในการล็อกอินและ / etc / motd (ยกเว้นกรณีที่ไม่สามารถป้องกันได้ในไฟล์คอนฟิกูเรชันหรือโดย $ HOME / .hushlogin ดูส่วน Sx FILES)
  2. หากการเข้าสู่ระบบอยู่ใน tty, บันทึกเวลาการเข้าสู่ระบบ
  3. ตรวจสอบ / etc / nologin ถ้ามีพิมพ์เนื้อหาและจบการทำงาน (ยกเว้นราก)
  4. การเปลี่ยนแปลงเพื่อให้ทำงานโดยใช้สิทธิ์ของผู้ใช้ตามปกติ
  5. ตั้งค่าสภาพแวดล้อมพื้นฐาน
  6. อ่าน $ HOME / .ssh / environment ถ้ามีอยู่และผู้ใช้สามารถเปลี่ยนแปลงสภาพแวดล้อมได้ ดูPermitUserEnvironment ใน sshd_config5
  7. การเปลี่ยนแปลงไดเรกทอรีบ้านของผู้ใช้
  8. ถ้า $ HOME / .ssh / rc อยู่ให้รัน; อื่นถ้า / etc / ssh / sshrc มีอยู่รัน; มิฉะนั้นจะเรียกใช้ xauth ไฟล์ `` rc '' จะได้รับโปรโตคอลการตรวจสอบสิทธิ์ X11 และคุกกี้ในอินพุตมาตรฐาน
  9. ใช้เปลือกหรือคำสั่งของผู้ใช้

Authorized_Keys รูปแบบไฟล์

$ HOME / .ssh / authorized_keys เป็นไฟล์ดีฟอลต์ที่แสดงคีย์สาธารณะที่ได้รับอนุญาตสำหรับการพิสูจน์ตัวตน RSA ในโปรโตคอลเวอร์ชัน 1 และสำหรับการตรวจสอบคีย์สาธารณะ (PubkeyAuthentication) ในโปรโตคอลเวอร์ชัน 2AuthorizedKeysFile อาจถูกใช้เพื่อระบุไฟล์สำรอง

แต่ละบรรทัดของไฟล์ประกอบด้วยคีย์เดียว (บรรทัดว่างและบรรทัดที่ขึ้นต้นด้วย `# 'จะถูกละเว้นเป็นความคิดเห็น) แต่ละคีย์สาธารณะ RSA ประกอบด้วยฟิลด์ต่อไปนี้คั่นด้วยช่องว่าง: ตัวเลือกบิตเลขยกกำลังโมดูลัสความคิดเห็น แต่ละโปรโตคอลรุ่น 2 คีย์สาธารณะประกอบด้วย: ตัวเลือก keytype, คีย์เข้ารหัส base64, comment ช่องตัวเลือกเป็นตัวเลือก; การแสดงตนจะขึ้นอยู่กับว่าบรรทัดนั้นเริ่มต้นด้วยตัวเลขหรือไม่ (ฟิลด์ตัวเลือกจะไม่ขึ้นต้นด้วยตัวเลข) บิตโมบิลิตี้เลขและโมเมนตัมและช่องแสดงความคิดเห็นให้คีย์ RSA สำหรับโปรโตคอลเวอร์ชัน 1; ช่องความคิดเห็นไม่ได้ถูกใช้เพื่ออะไร (แต่อาจสะดวกสำหรับผู้ใช้ในการระบุคีย์) สำหรับโปรโตคอลเวอร์ชัน 2 keytype คือ `` ssh-dss '' หรือ `` ssh-rsa ''

โปรดทราบว่าบรรทัดในไฟล์นี้มักมีความยาวหลายร้อยไบต์ (เนื่องจากขนาดของการเข้ารหัสคีย์สาธารณะ) คุณไม่ต้องการพิมพ์พวกเขา; แทนคัดลอก id id_dsa.pub identity.pub หรือไฟล์ id_rsa.pub และแก้ไข

sshd บังคับใช้โมดูลโมดูลัสโมดูล RSA ขั้นต่ำสำหรับโปรโตคอล 1 และโปรโตคอล 2 คีย์ 768 บิต

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

จาก = รูปแบบรายการ

ระบุว่านอกจากการตรวจสอบคีย์สาธารณะชื่อที่ยอมรับของโฮสต์ระยะไกลต้องอยู่ในรายการรูปแบบที่คั่นด้วยจุลภาค (`* 'และ`?' ใช้เป็นสัญลักษณ์แทน) รายการอาจมีรูปแบบที่ถูกลบล้างโดยนำหน้าด้วย `! ' ; ถ้าชื่อโฮสต์ตามรูปแบบที่ตรงกับรูปแบบที่ถูกปฏิเสธคีย์นี้ไม่ได้รับการยอมรับ วัตถุประสงค์ของตัวเลือกนี้คือการเพิ่มความปลอดภัยให้กับตัวเลือก: การตรวจสอบคีย์สาธารณะโดยตัวเองไม่เชื่อถือเครือข่ายหรือเซิร์ฟเวอร์ชื่อหรืออะไรก็ได้ (แต่คีย์); แต่ถ้าใครบางคนขโมยกุญแจคีย์จะอนุญาตให้ผู้บุกรุกเข้าสู่ระบบได้จากทุกที่ในโลก ตัวเลือกเพิ่มเติมนี้ทำให้การใช้กุญแจที่ถูกขโมยยากขึ้น (เซิร์ฟเวอร์ชื่อและ / หรือเราเตอร์จะต้องถูกบุกรุกนอกเหนือจากคีย์)

คำสั่งคำสั่ง =

ระบุว่าคำสั่งจะถูกดำเนินการเมื่อคีย์นี้ใช้สำหรับการตรวจสอบสิทธิ์ คำสั่งที่ผู้ใช้ (ถ้ามี) จะถูกละเลย คำสั่งจะทำงานบน pty ถ้าลูกค้าร้องขอ pty; มิฉะนั้นจะทำงานโดยไม่มี tty ถ้าจำเป็นต้องมีช่องสะอาด 8 บิตเราต้องไม่ร้องขอ pty หรือควรระบุไม่มี Pty คำพูดอาจรวมอยู่ในคำสั่งโดยการอ้างคำพูดด้วยเครื่องหมายแบ็กสแลช ตัวเลือกนี้อาจเป็นประโยชน์ในการ จำกัด บางคีย์สาธารณะเพื่อดำเนินการเฉพาะบางอย่าง ตัวอย่างอาจเป็นคีย์ที่อนุญาตให้มีการสำรองข้อมูลระยะไกล แต่ไม่มีอะไรอื่น โปรดทราบว่าไคลเอ็นต์อาจระบุการส่งต่อ TCP / IP และ / หรือ X11 เว้นแต่จะได้รับอนุญาตโดยชัดแจ้ง โปรดทราบว่าตัวเลือกนี้ใช้กับการดำเนินการของเชลล์คำสั่งหรือระบบย่อย

สภาพแวดล้อมที่ชื่อ = = ค่า

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

ไม่มีการส่งต่อพอร์ต

ห้ามส่งต่อ TCP / IP เมื่อใช้คีย์นี้สำหรับการตรวจสอบสิทธิ์ การร้องขอการส่งต่อพอร์ตจากไคลเอ็นต์จะส่งคืนข้อผิดพลาด ซึ่งอาจใช้เช่นเชื่อมต่อกับคำสั่ง ตัวเลือก

ไม่มี X11 การส่งต่อ

ห้ามส่งต่อ X11 เมื่อใช้คีย์นี้เพื่อรับรองความถูกต้อง คำขอส่งต่อ X11 ใด ๆ ของลูกค้าจะส่งคืนข้อผิดพลาด

ไม่มีตัวแทนการส่งต่อ

ยับยั้งการส่งต่อตัวแทนการตรวจสอบสิทธิ์เมื่อใช้คีย์นี้สำหรับการตรวจสอบสิทธิ์

ไม่มี Pty

ป้องกันการจัดสรร tty (คำขอจัดสรร pty จะล้มเหลว)

permitopen = โฮสต์: พอร์ต

จำกัด ท้องถิ่น`` ssh -L '' port forwarding เพื่อให้สามารถเชื่อมต่อกับโฮสต์และพอร์ตที่ระบุเท่านั้น ที่อยู่ IPv6 สามารถระบุได้ด้วยไวยากรณ์ทางเลือก: โฮสต์ / พอร์ต หลายอย่าง permitopen อาจใช้ตัวเลือกแยกจากกันโดยใช้เครื่องหมายจุลภาค ไม่มีการจับคู่รูปแบบกับชื่อโฮสต์ที่ระบุต้องเป็นโดเมนหรือที่อยู่ที่แท้จริง

ตัวอย่าง

1024 33 12121 … 312314325 [email protected]

จาก = "*. niksula.hut.fi,! pc.niksula.hut.fi" 1024 35 23 … 2334 ylo @ niksula

คำสั่ง = "dump / home", no-pty, no-port-forwarding 1024 33 23 … 2323 สำรองข้อมูล.hut.fi

permitopen = "10.2.1.55:80", permitopen = "10.2.1.56:25" 1024 33 23 … 2323

Ssh_Known_Hosts รูปแบบไฟล์

ไฟล์ / etc / ssh / ssh_known_hosts และ $ HOME / .ssh / known_hosts ประกอบด้วยคีย์สาธารณะของโฮสต์สำหรับโฮสต์ที่รู้จักทั้งหมด ผู้ดูแลระบบควรจัดทำไฟล์ทั่วโลก (ถ้ามี) และไฟล์ต่อผู้ใช้จะถูกเก็บไว้โดยอัตโนมัติ: เมื่อใดก็ตามที่ผู้ใช้เชื่อมต่อจากโฮสต์ที่ไม่รู้จักคีย์จะถูกเพิ่มลงในไฟล์ต่อผู้ใช้

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

ชื่อโฮสต์เป็นรายการรูปแบบที่คั่นด้วยเครื่องหมายจุลภาค ('*' และ '?' ทำหน้าที่เป็นสัญลักษณ์แทน) แต่ละรูปแบบจะตรงกันกับชื่อโฮสต์ตามบัญญัติ (เมื่อตรวจสอบสิทธิ์ไคลเอ็นต์) หรือเทียบกับชื่อผู้ใช้ที่ระบุ (เมื่อตรวจสอบความถูกต้องของเซิร์ฟเวอร์) รูปแบบอาจจะถูกนำหน้าด้วย `! ' เพื่อระบุการปฏิเสธ: ถ้าชื่อโฮสต์ตรงกับรูปแบบที่ไม่เป็นที่ยอมรับจะไม่ได้รับการยอมรับ (ตามบรรทัดนั้น) แม้ว่าจะตรงกับรูปแบบอื่นในบรรทัดก็ตาม

บิตเลขชี้กำลังและโมดูลัสจะถูกนำมาจากคีย์โฮสต์ RSA โดยตรง สามารถรับได้จาก /etc/ssh/ssh_host_key.pub ฟิลด์ความคิดเห็นที่ไม่บังคับยังคงอยู่ปลายสายและไม่ได้ใช้

บรรทัดที่ขึ้นต้นด้วย `# 'และบรรทัดที่ว่างเปล่าจะถูกละเว้นเป็นความคิดเห็น

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

โปรดทราบว่าบรรทัดในไฟล์เหล่านี้มักมีความยาวหลายร้อยอักขระและคุณไม่ต้องการพิมพ์คีย์โฮสต์ด้วยตนเอง สร้างไฟล์เหล่านั้นโดยใช้สคริปต์หรือโดยการ /etc/ssh/ssh_host_key.pub และเพิ่มชื่อโฮสต์ที่ด้านหน้า

ตัวอย่าง

closenet, … , 130.233.208.41 1024 37 159 … 93 closenet.hut.fi cvs.openbsd.org, 199.185.137.3 ssh-rsa AAAA1234 ….. =

ดูสิ่งนี้ด้วย

SCP (1), sftp (1), ssh (1), ssh-add1, ssh-agent1, ssh-keygen1, login.conf5, moduli (5), sshd_config5, sftp-server8

T. Ylonen T. Kivinen M. Saarinen T. Rinne S. Lehtinen "สถาปัตยกรรมโปรโตคอล SSH" draft-ietf-secsh-architecture-12.txt มกราคม 2002 งานในเอกสารความคืบหน้า

M. Friedl N. Provos W. อัลซิมป์สัน "การแลกเปลี่ยนกลุ่ม Diffie-Hellman สำหรับ SSH Transport Layer Protocol" draft-ietf-secsh-dh-group-exchange-02.txt มกราคม 2002 ทำงานในเอกสารความคืบหน้า

สำคัญ: ใช้ ชาย คำสั่ง ( % ชาย ) เพื่อดูว่ามีการใช้คำสั่งใดในคอมพิวเตอร์เครื่องใดเครื่องหนึ่งของคุณ