ฉันทำซ้ำสองหรือสามครั้ง ดังนั้นฉันเดาว่ามีบางอย่างผิดปกติกับสิ่งที่ฉันทำ

นี่คือขั้นตอนของฉัน:

  1. เปิดใช้อินสแตนซ์ใหม่ผ่านคอนโซลการจัดการ EC2 โดยใช้: Ubuntu Server 13.10 - ami-ace67f9c (64-bit)
  2. เปิดตัวด้วยค่าเริ่มต้น (โดยใช้คู่คีย์ที่มีอยู่ของฉัน)
  3. อินสแตนซ์เริ่มต้น ฉันสามารถ SSH ได้โดยใช้ Putty หรือเทอร์มินัล Mac ความสำเร็จ!
  4. ฉันรีบูตอินสแตนซ์
  5. 10 นาทีต่อมา เมื่ออินสแตนซ์ควรสำรองและทำงาน การเชื่อมต่อเทอร์มินัลของฉันจะแสดง:

    stead:~ stead$ ssh -v -i Dropbox/SteadCloud3.pem [email protected]
    OpenSSH_5.6p1, Op`enSSL 0.9.8y 5 Feb 2013
    debug1: Reading configuration data /etc/ssh_config
    debug1: Applying options for *
    debug1: Connecting to 54.201.200.208 [54.201.200.208] port 22.
    debug1: connect to address 54.201.200.208 port 22: Connection refused
    ssh: connect to host 54.201.200.208 port 22: Connection refused
    stead:~ stead$
    

ไม่เป็นไร ฉันเข้าใจว่าที่อยู่ IP สาธารณะสามารถเปลี่ยนแปลงได้ ดังนั้นการตรวจสอบคอนโซลการจัดการ EC2 ฉันยืนยันว่ามันเหมือนกัน แปลก. เพื่อความสนุกสนาน ฉันลองเชื่อมต่อกับชื่อโฮสต์ DNS สาธารณะ: ec2-54-201-200-208.us-west-2.compute.amazonaws.com ไม่มีลูกเต๋าผลเหมือนกัน

แม้จะใช้ไคลเอ็นต์ Connect ผ่าน Java SSH ที่สร้างไว้ในคอนโซล EC2 ฉันก็ยังถูกปฏิเสธการเชื่อมต่อ

ฉันตรวจสอบกลุ่มความปลอดภัย อินสแตนซ์นี้อยู่ในกลุ่ม launch-wizard-4 เมื่อดูที่การกำหนดค่าขาเข้าสำหรับกลุ่มนี้ พอร์ต 22 จะได้รับอนุญาตตั้งแต่ 0.0.0.0/0 ดังนั้นควรอยู่ที่ใดก็ได้ ฉันรู้ว่าฉันกำลังโจมตีอินสแตนซ์ของฉัน และนี่คือกลุ่มความปลอดภัยที่เหมาะสม เพราะฉันไม่สามารถ ping อินสแตนซ์ได้ ถ้าฉันเปิดใช้งาน ICMP สำหรับกลุ่มความปลอดภัยนี้ ทันใดนั้น ping ของฉันก็จะผ่านไป

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

ฉันเดาว่ามีขั้นตอน EC2 ง่าย ๆ ที่ฉันขาดหายไป ขอบคุณสำหรับความช่วยเหลือที่คุณสามารถให้ได้ และเรายินดีที่จะให้ข้อมูลเพิ่มเติมหรือทดสอบเพิ่มเติม!

อัปเดต - นี่คือบันทึกระบบของฉันจากคอนโซล Amazon EC2: http://pastebin.com/4M5pwGRt

answer

วันนี้มีพฤติกรรมที่คล้ายกันในอินสแตนซ์ ec2 ของฉัน และติดตามสิ่งนี้: เมื่อฉันทำ sudo reboot now เครื่องค้างและฉันต้องรีสตาร์ทด้วยตนเองจากคอนโซลการจัดการ aws เมื่อฉัน sudo reboot รีบูต เครื่องก็ปกติดี เห็นได้ชัดว่า "ตอนนี้" ไม่ใช่ตัวเลือกที่ถูกต้องสำหรับการรีบูตตามที่ระบุไว้ที่นี่https://askubuntu.com/questions/397502/reboot-a-server-from-command-line

ความคิด?

จากโพสต์ AWS Developer Forum ในหัวข้อนี้ :

Try stopping the broken instance, detaching the EBS volume, and attaching it as a secondary volume to another instance. Once you've mounted the broken volume somewhere on the other instance, check the /etc/sshd_config file (near the bottom). I had a few RHEL instances where Yum scrogged the sshd_config inserting duplicate lines at the bottom that caused sshd to fail on startup because of syntax errors.

Once you've fixed it, just unmount the volume, detach, reattach to your other instance and fire it back up again.

มาทำลายสิ่งนี้ด้วยลิงก์ไปยังเอกสารของ AWS:

  1. หยุดอินสแตนซ์ที่เสียหายและถอดวอลลุม EBS (รูท) โดยไปที่ EC2 Management Console คลิกที่ "Elastic Block Store" > "Volumes" ซึ่งเป็นการคลิกขวาที่โวลุ่มที่เกี่ยวข้องกับอินสแตนซ์ที่คุณหยุด
  2. เริ่มตัวอย่างใหม่ในภูมิภาคเดียวกันและของระบบปฏิบัติการเดียวกันเป็นตัวอย่างเสียแล้วแนบเดิมปริมาณราก EBS เป็นปริมาณรองตัวอย่างใหม่ของคุณ คำสั่งในขั้นตอนที่ 4 ด้านล่างถือว่าคุณเมานต์โวลุ่มไปยังโฟลเดอร์ชื่อ "data"
  3. เมื่อคุณได้ติดตั้งที่ใดที่หนึ่งปริมาณเสียในกรณีอื่น ๆ ,
  4. ตรวจสอบไฟล์ "/etc/sshd_config" สำหรับรายการที่ซ้ำกันโดยใช้คำสั่งเหล่านี้:
    • cd /etc/ssh
    • sudo nano sshd_config
    • ctrl-v หลายครั้งเพื่อไปที่ด้านล่างของไฟล์
    • ctrl-k ทุกบรรทัดที่ด้านล่างระบุว่า "PermitRootLogin ไม่มีรหัสผ่าน" และ "ใช้ DNS ไม่ใช่"
    • ctrl-xและYเพื่อบันทึกและออกจากไฟล์ที่แก้ไข
  5. @Telegard ชี้ให้เห็น (ในความคิดเห็นของเขา)ว่าเราได้แก้ไขอาการเท่านั้น เราแก้ไขสาเหตุได้ด้วยการแสดงความคิดเห็น 3 บรรทัดที่เกี่ยวข้องในไฟล์ "/etc/rc.local" ดังนั้น:
    • cd /etc
    • sudo nano rc.local
    • มองหาบรรทัด "PermitRootLogin..." แล้วลบออก
    • ctrl-xและYเพื่อบันทึกและออกจากไฟล์ที่แก้ไข
  6. เมื่อคุณแก้ไขมันเพียงแค่เลิกเมานท์ไดรฟ์ ,
  7. ถอดออกโดยไปที่ EC2 Management Console คลิกที่ "Elastic Block Store" > "Volumes" การคลิกขวาที่โวลุ่มที่เกี่ยวข้องกับอินสแตนซ์ที่คุณหยุด
  8. แนบกับอินสแตนซ์อื่นของคุณและ
  9. ไฟมันกลับขึ้นมาอีกครั้ง

อาจไม่ช่วยสถานการณ์ใด ๆ แต่ฉันได้เห็นบางกรณีที่การรีบูตบน EC2 ได้รับ 'ค้าง' หากคุณทำการ 'รีเซ็ต' บน VM แล้วดึงบันทึกของระบบ การดำเนินการนี้อาจเปลี่ยนแปลงได้ ตรวจสอบให้แน่ใจว่าบันทึกมาจากการบู๊ตครั้งที่สองและไม่ใช่บันทึกแรก เนื่องจากมักจะล่าช้าในการอัพเดท

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

คุณยังสามารถลองเปิดพอร์ตทั้งหมดจากระบบทดสอบ และดูว่า 'nmap' แสดงอะไรให้คุณบ้าง - บริการอื่นๆ ตอบสนองบนอินสแตนซ์หรือไม่

คลิกขวาที่ชื่ออินสแตนซ์และคลิกที่ "เปลี่ยนกลุ่มความปลอดภัย" ตรวจสอบให้แน่ใจว่าได้ตรวจสอบกลุ่มความปลอดภัยที่คุณสร้างซึ่งอนุญาตให้ทุกคนจากทุกที่ไปยังพอร์ต 22 และนำไปใช้กับอินสแตนซ์นี้

ผมมีปัญหาที่คล้ายกันเช่น Amazon EC2 ลินุกซ์ของฉันคือไม่สามารถเข้าถึงได้อีกต่อไปหลังจากที่ทำงานมารีบูต sudo

ไม่มีการเข้าถึง SSH คำสั่งหยุด/เริ่ม/รีบูตจากคอนโซลผู้ดูแลระบบของ Amazon ก็ไม่ให้ผลลัพธ์เช่นกัน

ในที่สุดฉันก็สามารถรีสตาร์ทอินสแตนซ์โดยการสร้างอิมเมจผ่านคอนโซล Amazon กระบวนการสร้างภาพดูเหมือนจะแก้ไขสถานะอินสแตนซ์

หวังว่ามันจะช่วย ;)

ฉันมีปัญหาเดียวกันหลังจากรันsudo rebootคำสั่งวานิลลา ฉันพบว่าสามารถแก้ไขปัญหาได้โดยการหยุด (ไม่รีบูต) AMI ของฉันโดยใช้คอนโซล AWS แล้วเริ่มสำรองข้อมูล

ไม่ว่าจะด้วยเหตุผลใดก็ตาม การรีสตาร์ท AMI จากคอนโซล AWS เช่นเดียวกับการคลิกการดำเนินการรีสตาร์ท แทนที่จะหยุดแล้วเริ่มอินสแตนซ์ ก็ไม่สามารถแก้ปัญหาได้

ฉันได้รับปัญหานี้หลังจากทำsudo reboot nowผ่าน SSH บนเซิร์ฟเวอร์ EC2 ของฉันที่ใช้ Ubuntu 14.04 ทำงานได้ดีหลังจากรีบูตอีกครั้งโดยใช้ EC2 Management Console

ในกรณีของฉัน ฉันจะตั้งค่ากลุ่มความปลอดภัยเพื่ออนุญาตการเชื่อมต่อพอร์ต 22 จาก IP ของฉันเท่านั้น ไม่กี่วันต่อมา ISP ของฉันได้เปลี่ยนที่อยู่ IP ของฉัน ดังนั้นกลุ่มความปลอดภัยจึงจำเป็นต้องอัปเดต

ดังที่กล่าวไว้ คุณอาจยุ่งกับ /etc/fstab/

ฉันมีปัญหานี้ ก่อนอื่นคุณต้องเพิ่มโวลุ่มที่ /dev/sda1 อีกครั้งตามที่ข้อความเตือนระบุไว้

จากนั้นฉันก็ไม่สามารถ ssh ฉันรู้ว่าฉันต้องเพิ่มโวลุ่มอื่นที่ฉันสร้างขึ้นและนั่นก็แก้ไขปัญหา ssh

จากนั้นคุณสามารถเข้าสู่ระบบและแก้ไข fstab กลับเป็นต้นฉบับได้