ไม่สามารถ ssh ลงในเซิร์ฟเวอร์ Ubuntu โดยใช้ชื่อโฮสต์


16

ฉันเพิ่งติดตั้ง Ubuntu 12.04 Server บนกล่องเก่า ๆ ที่เชื่อมต่อกับเราเตอร์ของฉันผ่านทางอีเธอร์เน็ต ฉันตั้งค่า openssh-server ตามคำแนะนำสำหรับการเข้าถึงระยะไกล แต่ฉันไม่สามารถ ssh จากแล็ปท็อปของฉันโดยใช้ชื่อโฮสต์

แม้ว่าแปลกฉันสามารถ ssh มันโดยใช้ที่อยู่ IP ฉันต้องการแก้ไขปัญหานี้เพื่อความสะดวก ฉันสังเกตเห็นว่ามีคำถามที่คล้ายกันสองสามข้อ แต่ดูเหมือนว่าทุกคนเหล่านี้มีความคิดว่าควรเข้าไปในทิศทางใดในการแก้ไขปัญหา

ในฐานะผู้เริ่มต้นในการสร้างเครือข่ายในบ้านที่สมบูรณ์แบบฉันจะยินดีอย่างยิ่งหากใครบางคนจะบอกฉันว่าจะไปที่ไหนจากที่นี่


คำตอบ:


15

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

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

การแก้ปัญหาที่เป็นไปได้:

  • บนแล็ปท็อปของคุณ (คุณไม่ได้บอกว่าใช้ OS ใดอยู่) เพิ่มบรรทัดในไฟล์ / etc / hosts สำหรับที่อยู่ IP ของเซิร์ฟเวอร์ Ubuntu ของคุณบางอย่างเช่นนี้ (ใช้ IP จริงจากเซิร์ฟเวอร์ Ubuntu ของคุณ):

    10.15.30.41 ubuntu-server

    จากนั้นคุณสามารถทำssh ubuntu-serverและมันควรจะทำงาน โปรดทราบว่าตำแหน่งของไฟล์โฮสต์นั้นขึ้นอยู่กับระบบปฏิบัติการแล็ปท็อปของคุณ ฉันไม่แน่ใจว่าอยู่บน Windows หรือไม่

  • ติดตั้งแพ็คเกจ avahi-daemon บนเซิร์ฟเวอร์ Ubuntu ของคุณ วิธีนี้ใช้โปรโตคอล mDNS เพื่อ "โฆษณา" ชื่อโฮสต์บนเครือข่ายท้องถิ่นของคุณ เมื่อติดตั้งและใช้งานแล้วคุณควรจะสามารถssh ubuntu-server.local(สังเกต.localโดเมน) และเข้าถึงเซิร์ฟเวอร์ ถ้าแล็ปท็อปของคุณใช้ Windows ฉันไม่สามารถบอกได้ว่ามันรองรับ mDNS หรือไม่ ฉันรู้ว่า Ubuntu (และ Linux อื่น ๆ ที่ติดตั้ง avahi-daemon) และ Mac OS X รองรับได้ทันที


1
การตั้งค่า DNS ก็เป็นตัวเลือกเช่นกัน แต่มันก็เหมือนกับการใช้มือระเบิดมือบนถนน (และไม่สามารถทำได้เสมอไป)
jackweirdy

2

ฉันมีปัญหาที่คล้ายกันและพยายามที่จะแก้ปัญหาการติดตั้ง Avahi-daemon เช่นเดียวกับ roadmr แนะนำ แต่เห็นได้ชัดว่าไม่มีผล จากนั้นฉันก็พิมพ์

host myhostname

และอาคารผู้โดยสารตอบฉัน:

myhostname.lan has address 192.168.1.68
Host myhostname.lan not found: 3(NXDOMAIN)

ในเครื่องของแขกฉันใช้เป็นชื่อโฮสต์ myhostname.lan และมันใช้งานได้ จนกว่าฉันจะเชื่อมต่อกับ DHCP ด้วย IP ที่ได้รับมอบหมายมันไม่ทำงาน ...


ฉันได้พบว่าคำสั่ง "host" ไม่ทำงานกับโฮสต์ <system> หรือกับโฮสต์ <system> .local แม้ในขณะที่ติดตั้ง avahi-daemon อย่างไรก็ตามฉันสามารถทำssh <system>.localมันได้และมันได้ผล ดังนั้นฉันคิดว่าคำสั่ง host ไม่ทำงานกับสิ่ง mDNS / avahi
bgoodr
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.