วิธีการตั้งชื่อเซิร์ฟเวอร์ผู้ใช้แทน ip เมื่อเชื่อมต่อผ่าน SSH


11

ฉันมี virtualbox ที่ติดตั้ง Ubuntu 12.04 คอมพิวเตอร์แม่ข่ายของฉันคือ Mac OS (mavericks) ฉันคัดลอกคีย์ SSH ไปยังรีโมทของฉัน (ซึ่งเป็นเซิร์ฟเวอร์อูบุนตูและฉันเรียกว่า myubuntu)

เมื่อฉันทำ

ssh username@myubuntu
ssh: Could not resolve hostname ubuntuhadoop: nodename nor servname provided, or not known

แต่เมื่อฉันพยายาม:

ssh username@66.90.115.178

ฉันสามารถเข้าสู่เซิร์ฟเวอร์ระยะไกล (ซึ่งเป็น myubuntu)

เหตุใดฉันจึงต้องให้ที่อยู่ IP เชื่อมต่ออย่างถูกต้อง แต่ไม่ใช่ชื่อเซิร์ฟเวอร์

ฉันไม่แน่ใจว่าเป็นไปได้หรือไม่ แต่ฉันพบในหนึ่งในบทเรียนของ YouTube ssh myubuntu(ไม่ใช่ชื่อผู้ใช้ @ myubuntu) และเข้าสู่เซิร์ฟเวอร์ระยะไกลโดยไม่มีชื่อผู้ใช้ เป็นไปได้ไหม


1
สิ่งนี้อาจให้คำตอบกับคุณในส่วนสุดท้ายของคำถามของคุณ: askubuntu.com/questions/257472/host-alias-for-ssh
Takkat

ตรวจสอบคำตอบนี้: stackoverflow.com/a/45927052/249697
Ka

คำตอบ:


14

คุณมีตัวเลือกน้อย

หากคุณต้องการการเข้าถึงจากสถานที่เพียงไม่กี่แห่งหรือเป็นสถานที่เดียวให้อัปเดต / etc / hosts

sudo nano /etc/hosts

เพิ่มรายการสำหรับเซิร์ฟเวอร์ของคุณ

66.90.115.178 myubuntu

ประการที่สองซื้อหรือค้นหาบริการ DNS ฟรีhttp://www.noip.com/free/หรือที่คล้ายกัน

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

ssh your_server

คุณจะต้องระบุชื่อผู้ใช้หากชื่อนั้นแตกต่างกันหรือคุณต้องการผู้ใช้ใหม่

ssh new_user@your_server

ฉันติดตามตัวเลือกแรกเพราะมันง่ายตอนนี้ ฉันต้องรีสตาร์ทคอมพิวเตอร์หรือไม่ ตอนนี้มันแขวนไว้เมื่อฉันลองssh myubuntuแล้วฉันget operation timed out
พายุสมอง

ไม่แน่ใจเกี่ยวกับการแขวนดูที่ผลลัพธ์ของssh -vvv myubuntu
Panther

ssh -vvvขอโทษฉันมีคำสะกดผิดเกี่ยวกับทรัพย์สินทางปัญญาซึ่งผมพบว่าการใช้ หลังจากฉันแก้ไขมันใช้งานได้ดี! if you need access from only a few locations or a single location update /etc/hostsหนึ่งคำถามว่าทำไมคุณพูด หากคุณให้หนึ่งหรือสองบรรทัดสำหรับสองวิธีที่คุณอธิบายและเมื่อพวกเขาจะมีประโยชน์พวกเขาจะเป็นประโยชน์สำหรับผู้เริ่มต้นเช่นฉัน ขอบคุณมาก!!!!
พายุสมอง

มันเป็นสัดส่วนกับจำนวนเครื่องที่คุณต้องแก้ไข / etc / hosts เทียบกับเวลาที่ใช้ในการกำหนดค่าเซิร์ฟเวอร์ DNS
Panther

นอกจากนี้ยังมีตัวเลือกอื่นสำหรับเครือข่ายท้องถิ่น: Avahi (ซึ่งติดตั้งโดยค่าเริ่มต้นบน Ubuntu Desktops)
Andrea Corbellini

0

ฉันยังมีปัญหานี้ ฉันได้กำหนดโฮสต์อื่นดังนี้ (ใน / etc / hosts):

hostname1 IP1
hostname2 IP2

ฉันเปลี่ยนเป็น:

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