เนื่องจากคุณไม่ได้พูดอะไรเลยฉันจะสมมติว่าคุณมีการติดตั้ง Ubuntu ค่อนข้างมากใน VM นั้น
มันทำให้น้ำขุ่นเล็กน้อยเมื่อคุณบอกว่าคุณใช้ที่อยู่ IP สาธารณะของ VM เพราะอาจหมายถึงบางสิ่งที่แตกต่างกัน
อย่างไรก็ตามมีสิ่งหนึ่งที่ควรค่าแก่การสังเกต: ข้อผิดพลาดดั้งเดิมของคุณ ("ข้อผิดพลาดเครือข่าย: การเชื่อมต่อถูกปฏิเสธ" เมื่อคุณลองเชื่อมต่อกับพอร์ต 22) จะบอกคุณว่า คุณสามารถเข้าถึงระบบที่กำลังทำงานอยู่ภายใน VM และระบบดังกล่าวกล่าวว่าไม่มีอะไรฟังที่อยู่ IP และการรวมกันของพอร์ตที่คุณเข้าใช้
ฉันค่อนข้างมั่นใจว่าการติดตั้งเวิร์กสเตชัน Ubuntu ไม่ได้จัดส่งเซิร์ฟเวอร์ SSH ที่ใช้งานอยู่เป็นค่าเริ่มต้น อย่างไรก็ตามตัวแปรของเซิร์ฟเวอร์อาจทำเช่นนั้นได้เป็นอย่างดี
ใช้คอนโซล VM เพื่อล็อกอินและตรวจสอบว่าเซิร์ฟเวอร์ SSH กำลังทำงานอยู่หรือไม่ ฉันไม่ได้มีระบบอูบุนตูที่มีประโยชน์ในขณะนี้ แต่ในเทอร์มินัลสิ่งนี้ควรคล้ายกับ
$ service sshd status
มันอาจจะเรียกว่าเป็นสิ่งที่ชอบ ssh
, ssh-server
, openssh-server
หรือบางสิ่งบางอย่างตามเส้นเหล่านั้นแทน sshd
แต่เปิดแท็บเสร็จสมบูรณ์ ssh
(ชนิด ssh
แถบ ) ควรให้คุณได้ใกล้ชิด คุณ อาจ จำเป็นต้อง sudo
สิ่งนี้เช่น sudo service sshd status
แต่ฉันคิดว่าการเข้าถึงของผู้ใช้เป็นประจำควรเพียงพอที่จะรับรายงานสถานะบริการ (เรียกใช้ / หยุด)
หากไม่มีเซิร์ฟเวอร์ SSH กำลังทำงานหรือติดตั้งอยู่นั่นจะอธิบายสาเหตุที่คุณได้รับข้อผิดพลาด "การเชื่อมต่อถูกปฏิเสธ" ติดตั้งเซิร์ฟเวอร์ SSH โดยใช้สิ่งต่อไปนี้:
$ sudo apt-get -u install openssh-server
ตรวจสอบว่ารายการแพ็กเกจที่จะติดตั้งนั้นดูมีเหตุผลและยืนยัน เซิร์ฟเวอร์ SSH จะเริ่มเมื่อสิ้นสุดกระบวนการติดตั้ง
ตอนนี้ดูที่ / etc / ssh / sshd_config มันจะมีศูนย์หรือมากกว่านั้น Port
และ ListenAddress
คำสั่งที่ให้ที่อยู่ IP หรือหมายเลขพอร์ต (หมายเลขพอร์ตจะมีค่าเริ่มต้นที่ 22 หากไม่ได้ระบุไว้และเซิร์ฟเวอร์จะรับฟังที่อยู่ IP ทั้งหมดหากคุณไม่ได้ระบุอย่างชัดเจน) นั่นคือที่อยู่ IP และพอร์ตที่คุณต้องการเชื่อมต่อ
หากไม่มีการระบุที่อยู่ IP ip addr show
จะแสดงอินเทอร์เฟซเครือข่ายภายใน VM และที่อยู่ IP ที่เกี่ยวข้อง เหล่านี้คือสิ่งที่เซิร์ฟเวอร์ SSH จะรับฟัง
ด้วยข้อมูลนี้คุณจะต้องใช้เวทมนต์เพื่อรับ PuTTY เพื่อเชื่อมต่อกับที่อยู่ IP และพอร์ตนี้ (ซึ่งอาจเกี่ยวข้องกับการเจาะรูหรือกำหนดค่าการส่งต่อพอร์ตใน NAT หรือไฟร์วอลล์เป็นต้น)
เมื่อทำเสร็จแล้ว คุณควรจะสามารถเชื่อมต่อโดยใช้ PuTTY และรับเทอร์มินัลเซสชันในฐานะผู้ใช้ที่ไม่ได้รับสิทธิพิเศษบน Ubuntu VM จากนั้นใช้ sudo
เพื่อยกระดับสิทธิ์ของคุณตามความต้องการเช่นเดียวกับที่คุณนั่งอยู่หน้าระบบร่างกาย
ฉันขอแนะนำให้ตั้งค่าการตรวจสอบสิทธิ์กุญแจสาธารณะและฉันขอแนะนำอย่างมาก ต่อต้าน อนุญาตให้รูทเข้าสู่ระบบโดยตรง อย่างไรก็ตามหากคุณอย่างแน่นอน ต้อง อนุญาตให้รูทเข้าสู่ระบบโดยตรงจากนั้นแก้ไข / etc / ssh / sshd_config และระบุ PermitRootLogin yes
จากนั้น sudo passwd root
และให้ราก ดี รหัสผ่านและรีสตาร์ท SSH daemon อีกครั้ง ฉันไม่แนะนำนี้
เมื่อพ้นทางแล้ว ปัญหาของการเชื่อมต่อกับพอร์ต 80 และ 443 ของคุณคืออะไร พอร์ต 80 เป็นพอร์ตเริ่มต้นสำหรับ HTTP และพอร์ต 443 เป็นพอร์ตเริ่มต้นสำหรับ HTTPS หากเว็บเซิร์ฟเวอร์กำลังทำงานอยู่อาจเป็นไปได้ว่ากำลังฟังทั้งสองพอร์ตเหล่านั้นและ เมื่อคุณเชื่อมต่อจะคาดหวังคำขอ HTTP; ในกรณีของพอร์ต 443 หลังจากการเจรจา SSL เป็นไปได้แน่นอนที่จะออกคำขอ HTTP ด้วยตนเอง แต่ไม่ใช่เซสชันล็อกอินเทอร์มินัลและเชลล์ โดยทั่วไปแล้วการเชื่อมต่อกับพอร์ตสุ่ม (แม้แต่พอร์ตที่รู้จักกันดี) ก็ไม่น่าจะทำให้คุณได้รับผลลัพธ์ที่ตามมา