scp ระหว่างเซิร์ฟเวอร์ AWS EC2 linux กับเครื่องที่บ้านของฉัน


1

ฉันกำลังพยายามดึงไฟล์จากเซิร์ฟเวอร์ AWS EC2 Linux ของฉันไปยังพีซีที่ใช้ Windows 7 ของฉัน scp

ฉันเป็นน้องใหม่ของ Linux และจากเซิร์ฟเวอร์ฉันกำลังลองทำสิ่งต่อไปนี้เช่น:

scp transferMe.tar Username@publicIP/lanIP/C:/

แต่ดูเหมือนจะไม่เป็นไปด้วยดีฉันก็ลองทำแบบนี้ tcp คำสั่ง filezilla และ winSCP เพื่อเรียกคืนไฟล์เหล่านี้ แต่พวกเขายังพบบล็อกสะดุดที่ฉันจะไม่เข้าไปที่นี่

ฉันคิดว่าวิธีที่ฉันพยายามใช้ scp คำสั่งไม่ถูกต้อง ฉันควรจัดโครงสร้างคำสั่งอย่างไร

คำตอบ:


2

คุณมีปัญหาสองสามข้อที่นี่ อย่างแรกอย่างที่ลอเรนซ์ชี้ให้เห็นก็คือ scp ไม่ทำงานนอกกรอบด้วย Windows คุณต้องใช้ซอฟต์แวร์เฉพาะเช่น pscp จากเครื่องมือโป๊ว เมื่อคุณติดตั้งแล้วคุณสามารถเรียกใช้คำสั่งนี้จากบรรทัดคำสั่ง Windows:

pscp user@linux.server.com:/home/user/transferMe.tar C:\

ปัญหาที่สองคือแม้ว่าคุณจะมีเซิร์ฟเวอร์ ssh ในเครื่อง windows ของคุณการคัดลอกจากเซิร์ฟเวอร์ไปยังเครื่องคอมพิวเตอร์จะไม่ทำงานตามที่คุณพยายาม คุณอาจไม่สามารถเข้าถึง IP ส่วนตัวของคุณจากนอกเครือข่ายในบ้านของคุณคุณต้องกำหนดค่าเราเตอร์ของคุณ ข้างหน้า พอร์ต 22 ไปยัง IP ส่วนตัวของคอมพิวเตอร์ของคุณ รายละเอียดเกี่ยวกับวิธีการทำนั้นขึ้นอยู่กับเราเตอร์ของคุณ ดังนั้นแม้ว่าคุณพยายามที่จะคัดลอกไปยังเครื่อง Linux อื่นมันจะไม่ทำงาน คุณไม่สามารถใช้ IP เช่นชื่อโฟลเดอร์ public_ip/private_ip เป็นข้อสมมติฐานที่สมเหตุสมผล แต่นั่นไม่ใช่วิธีการทำงานที่น่าเสียดาย


คุณจำเป็นต้องติดตั้ง pscp เพียงแค่มีผงสำหรับอุดรูก็ไม่ช่วยอะไร
galuano1

1
ขอบคุณ @ galuano1 ทำให้ชัดเจนยิ่งขึ้น คุณสามารถดาวน์โหลดหนึ่งตัวติดตั้งสำหรับเครื่องมือโป๊วทั้งหมด (ยกเว้นตัวเดียว) ซึ่งรวมถึง pscp
terdon

ขอบคุณคุณฉันได้ทำการส่งต่อพอร์ตมาก่อนมันสมเหตุสมผลแล้วที่จะใช้ในสถานการณ์นี้
Kris Welsh

ฉันไม่สามารถทำงานนี้ได้คุณสามารถแนะนำวิธีอื่นในการรับข้อมูลของฉันจากอินสแตนซ์ได้หรือไม่?
Kris Welsh

ฉันอยากจะแนะนำคุณโพสต์คำถามใหม่ที่มีข้อความผิดพลาดที่คุณได้รับ สิ่งนี้จะทำงานได้หากทำอย่างถูกต้องตราบใดที่เซิร์ฟเวอร์ linux สามารถเข้าถึงได้ผ่าน ssh
terdon

1

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

  1. คุณไม่มี SSH daemon ที่ทำงานบนเครื่อง windows ของคุณ
  2. คุณอยู่หลัง NAT ไม่สามารถเริ่มการเชื่อมต่อจากอินเทอร์เน็ตได้เว้นแต่ว่าคุณจะส่งต่อพอร์ต

แต่ตามที่คนอื่นแนะนำคุณสามารถเริ่มการเชื่อมต่อจากเครื่อง Windows ของคุณไปยังอินสแตนซ์ EC2 โดยใช้เครื่องมือต่าง ๆ เช่น WinSCP หรือ pscp

ส่วนตัวฉันจะใช้ pscp.


1

เท่าที่ฉันรู้ scp ไม่ทำงานกับ windows คุณต้องใช้ WinSCP ( รู้เบื้องต้นเกี่ยวกับ winscp ) หรือใช้ Cygwin .

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

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