จะสร้าง ssh ได้อย่างไรในฐานะผู้ใช้ที่ถูกต้อง?


8

ฉันใช้ ssh กับเครื่องที่หลากหลายซึ่งส่วนใหญ่คือ linux บัญชีในเครื่องเหล่านี้มีรูปแบบการตั้งชื่อที่แตกต่างกัน: ถ้าชื่อของฉันคือชื่อสุดท้ายฉันก็มีบัญชี: ชื่อแรก, คำย่อ, last_f, lastf และบางครั้งฉันต้องเข้าสู่ระบบในฐานะ root สำหรับเครื่องที่ฉันใช้แต่ละเครื่องฉันต้องการให้ไคลเอ็นต์ openssh รู้ว่าจะใช้บัญชีใดเมื่อไม่ได้ระบุในบรรทัดคำสั่ง

ดังนั้นคำถามคือฉันจะทำให้ssh serverสิ่งที่ถูกต้องได้อย่างไรเมื่อไม่ได้ระบุชื่อผู้ใช้

คำตอบ:


18

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

ตัวอย่างเช่นคุณสามารถใส่สิ่งนี้ลงใน~/.ssh/configไฟล์:

Host example
    HostName example.com
    User first_last
    IdentityFile ~/.ssh/example_rsa
    Port 22
    RSAAuthentication yes
    PubkeyAuthentication yes

Host example2
    HostName example2.com
    User last_first
    # other parameters as needed

จากนั้นคุณสามารถพิมพ์ssh exampleหรือssh example2บนบรรทัดคำสั่งเพื่อเชื่อมต่อ

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

มีข้อมูลเพิ่มเติมและรายละเอียดของสิ่งที่คุณสามารถระบุในไฟล์ config ในหน้าคน ssh_config


3
แน่นอนคุณสามารถระบุได้มากเท่าที่คุณต้องการในไฟล์. config เดียวกัน ฉันมีมากกว่า 20 ในเหมืองไม่มีปัญหา ฉันเพิ่งเว้นช่องว่างระหว่างโฮสต์ที่แตกต่างกันซึ่งอาจไม่จำเป็น แต่ทำให้อ่านง่ายขึ้น
Rich Adams

1
ไม่ควรเป็นconfigไฟล์? ไม่มีจุดที่จุดเริ่มต้น?
danadam

1
@rich พยายามให้คุณแสดงเว็บไซต์อื่นในตัวอย่างของคุณ หวังว่าคุณจะไม่รังเกียจฉันที่จะไปข้างหน้าและขว้างมันออกมา
quack quixote

4
การเยื้องทุกอย่างยกเว้นบรรทัดที่มี "Host foo" เป็นอย่างมากจะช่วยให้การบำรุงรักษาเกิดขึ้นอย่างมาก
innaM

1
@CristianCiupitu: เมื่อพิจารณาถึงคำถาม Linux ฉันแทบจะไม่เรียกหน้า man ของ OpenBSD เป็นทางการ มีตัวเลือกในsshของ Linux (เช่นGSSAPIKeyExchange ) ที่ไม่สามารถใช้ได้ในรุ่น BSD
Dennis

1

ตามคำตอบของ Rich Adamฉันค้นพบ PuTTY ที่เก็บการตั้งค่าไว้

ทุกอย่างถูกเก็บไว้ในแผนผังรีจิสตรีคุณจะพบว่าใต้HKEY_CURRENT_USER\Software\SimonTatham(Simon Tatham เป็นผู้พัฒนา PuTTY)
ที่นั่นคุณสามารถดูวิธีการกำหนดโฮสต์


1

ถ้าคุณต้องการที่จะเปลี่ยนมันสำหรับเว็บไซต์ทุกคน:

แก้ไขของคุณ~/.ssh/configเพื่อรับสิ่งนี้:

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