- ใช้ SCP คำสั่งใน SSH
- โดยใช้ เน็ตแคท
- โดยใช้ FTP
- โดยใช้ เซิร์ฟเวอร์ HTTP อย่างง่ายของ Python
การใช้ SCP (SSH)
SCP เป็นยูทิลิตี้ที่ใช้ในการย้ายไฟล์และไดเร็กทอรีอย่างปลอดภัยผ่าน SSH กับ SCP คำสั่ง คุณสามารถถ่ายโอนไฟล์จากคอมพิวเตอร์ของคุณไปยังเซิร์ฟเวอร์ Linux และในทางกลับกัน เนื่องจากยูทิลิตีนี้ใช้ SSH เพื่อย้ายไฟล์ คุณจะต้องมีข้อมูลประจำตัว SSH ของเซิร์ฟเวอร์ของคุณเพื่อโอนไฟล์
SSH มาพร้อมกับการติดตั้งล่วงหน้าบนเซิร์ฟเวอร์ Linux ส่วนใหญ่ แต่ถ้าไม่ใช่ คุณสามารถติดตั้งและเปิดใช้งานได้โดยใช้ขั้นตอนต่อไปนี้
เปิดเทอร์มินัล Ubuntu แล้วพิมพ์
$ sudo apt install -y openssh-server
$ sudo service ssh start
อัปโหลดไฟล์ผ่านSCP
Scp คำสั่งตามรูปแบบนี้
$ scp [ตัวเลือก] [ที่มา] [ปลายทาง]ในการถ่ายโอนไฟล์จากคอมพิวเตอร์ของคุณไปยังเซิร์ฟเวอร์ linux ให้เขียนคำสั่งเหล่านี้
$scp /path/of/your/local/file.ext [ป้องกันอีเมล] :/path/of/ file.ext -i key.pem
ในคำสั่งข้างต้น ก่อนอื่น คุณต้องระบุเส้นทางของไฟล์ที่คุณต้องการคัดลอกจากคอมพิวเตอร์ของคุณไปยังเซิร์ฟเวอร์ Linux จากนั้นระบุชื่อผู้ใช้และที่อยู่ IP ของเซิร์ฟเวอร์ Linux และเส้นทางที่คุณต้องการคัดลอกไฟล์ เซิร์ฟเวอร์ Linux ที่มีรูปแบบนี้ ( [email protected] : path/of/remote/file.ext)
หลังจากรันคำสั่งนี้แล้ว มันจะต้องใช้รหัสผ่านของบัญชีผู้ใช้เซิร์ฟเวอร์ Linux
$ [ป้องกันอีเมล] รหัสผ่าน :หลังจากป้อนรหัสผ่าน ไฟล์จะถูกอัปโหลด
ดาวน์โหลดไฟล์ผ่านSCP
ในการดาวน์โหลดไฟล์จากเซิร์ฟเวอร์ Linux ไปยังคอมพิวเตอร์ของคุณ คุณต้องระบุเส้นทางภายในของไฟล์หรือไดเรกทอรีของ SCP และเส้นทางบนเซิร์ฟเวอร์ Linux ที่คุณต้องการให้อัปโหลดไฟล์ของคุณ
$ scp [ป้องกันอีเมล] :/path/of/file.ext /path/to/destinationหลังจากรันคำสั่งนี้ จะต้องใช้รหัสผ่านการตรวจสอบสิทธิ์ของเซิร์ฟเวอร์ linux เมื่อคุณป้อนรหัสผ่านแล้ว ไฟล์จะถูกคัดลอกอย่างปลอดภัยไปยังคอมพิวเตอร์ของคุณ
ตัวเลือกบรรทัดคำสั่งของ SCP
คุณสามารถใช้แฟล็กต่างๆ (เรียกว่าตัวเลือกบรรทัดคำสั่ง) ในการ SCP สั่งการ.
-NS แฟล็กใช้เพื่อเปลี่ยนพอร์ต ตามค่าเริ่มต้น ssh ใช้พอร์ต 22 แต่ด้วยแฟล็ก -p เราสามารถเปลี่ยนพอร์ต 22 เป็นอย่างอื่นได้ เช่น 2222
$ scp -p 2222 path/of/your/local/file.ext [ป้องกันอีเมล] : path/of/file.ext-NS แฟล็กใช้เพื่อคัดลอกโฟลเดอร์และเนื้อหาทั้งหมด
$ scp -r /path/of/your/local/folder [ป้องกันอีเมล] : /path/of/folder-ผม แฟล็กใช้เพื่อรับรองความถูกต้องของการเชื่อมต่อโดยใช้คู่คีย์เข้ารหัสที่จัดเก็บไว้ในไฟล์แทนชื่อผู้ใช้และรหัสผ่าน
$ scp -i path/of/your/local/file.ext [ป้องกันอีเมล] : path/of/file.ext-ค ธงใช้ในการบีบอัดข้อมูลที่คุณต้องการโอน
$ scp -c path/of/your/local/file.ext [ป้องกันอีเมล] : path/of/file.ext-NS แฟล็กใช้เพื่อระงับข้อความที่ไม่แสดงข้อผิดพลาดและตัววัดความคืบหน้า
$ scp -q /path/of/your/local/file.ext [ป้องกันอีเมล] : /path/of/file.extถ่ายโอนไฟล์โดยใช้ Netcat
Netcat เป็นยูทิลิตี้ Linux ที่ใช้สำหรับการสื่อสาร tcp/ip แบบ raw การถ่ายโอนไฟล์ การสแกนพอร์ต และการแก้ไขปัญหาเครือข่าย ฯลฯ โดยติดตั้งมาล่วงหน้าในระบบที่ใช้ Linux หลายระบบ และผู้ดูแลระบบเครือข่ายใช้เป็นหลัก
หากยังไม่ได้ติดตั้ง คุณสามารถติดตั้ง Netcat ได้โดยพิมพ์คำสั่งต่อไปนี้
$ sudo apt-get ติดตั้ง netcatในการถ่ายโอนไฟล์โดยใช้ Netcat คุณต้องพิมพ์คำสั่งเหล่านี้ เปิดเซิร์ฟเวอร์ Netcat ในโหมดฟังบนพอร์ตใดก็ได้ เช่น (พอร์ต 4747) และพิมพ์เส้นทางของไฟล์ที่คุณต้องการส่ง
$ nc -l -p 4747บันทึก: ไฟล์ที่ส่งเซิร์ฟเวอร์จะใช้น้อยกว่าการลงชื่อเข้าใช้คำสั่ง '' ในคำสั่ง netcat
คุณยังสามารถถ่ายโอนไดเร็กทอรี ตั้งค่าโฮสต์รับเพื่อฟังบนพอร์ตเช่น (4747)
$ nc -l -p 4747 | tar -zxfv /path/of/directoryส่งไปยังรายการโฮสต์ที่ได้รับบนท่าเรือ
$ tar czvf - /path/of/directory | nc รับ hast.url.com 4747ไดเรกทอรีจะถูกโอน ในการปิดการเชื่อมต่อ ให้กด CTRL+C
ถ่ายโอนไฟล์โดยใช้ FTP
FTP (โปรโตคอลการถ่ายโอนไฟล์) ใช้ในการถ่ายโอนไฟล์ระหว่างคอมพิวเตอร์หรือไคลเอนต์และเซิร์ฟเวอร์ มันเร็วกว่า HTTP และโปรโตคอลอื่น ๆ ในแง่ของการถ่ายโอนไฟล์เพราะได้รับการออกแบบมาโดยเฉพาะเพื่อจุดประสงค์นี้ ช่วยให้คุณสามารถถ่ายโอนไฟล์และไดเร็กทอรีได้หลายไฟล์ และหากมีการหยุดชะงักในการเชื่อมต่อระหว่างการถ่ายโอน ไฟล์จะไม่สูญหาย แต่จะดำเนินการถ่ายโอนต่อเมื่อถูกทิ้ง
คุณสามารถติดตั้งเซิร์ฟเวอร์ FTP เช่น vsftpd โดยใช้ apt โดยเรียกใช้คำสั่งนี้
$ sudo apt ติดตั้ง -y vsftpdหลังจากติดตั้งแพ็คเกจแล้ว คุณต้องเริ่มบริการโดยพิมพ์
$ sudo systemctl start vsftpd$ sudo systemctl เปิดใช้งาน vsftpd
จากนั้นคุณสามารถเชื่อมต่อกับเซิร์ฟเวอร์ FTP โดยพิมพ์คำสั่ง FTP และที่อยู่ IP
$ ftp [IP_Address]จะถามชื่อผู้ใช้และรหัสผ่านของเซิร์ฟเวอร์ FTP หลังจากที่คุณป้อนชื่อผู้ใช้และรหัสผ่าน คุณจะเชื่อมต่อกับเซิร์ฟเวอร์ FTP ของคุณ
คุณสามารถแสดงรายการเนื้อหาทั้งหมดของเซิร์ฟเวอร์โดยดำเนินการคำสั่งนี้
ftp> ls
ดาวน์โหลดผ่าน FTP
หากคุณต้องการดาวน์โหลดไฟล์ใด ๆ จากเซิร์ฟเวอร์ FTP คุณสามารถทำได้โดยพิมพ์คำสั่ง
ftp> รับเส้นทาง/ของ/ไฟล์ไฟล์จะถูกดาวน์โหลด คุณยังสามารถใช้สัญลักษณ์แทนที่แตกต่างกันเพื่อดาวน์โหลดไฟล์หลายไฟล์ในไดเร็กทอรี ตัวอย่างเช่น ;
ftp> mget *.htmlมันจะดาวน์โหลดไฟล์ทั้งหมดที่มีนามสกุล .html
คุณยังสามารถตั้งค่าไดเร็กทอรีในเครื่องสำหรับไฟล์ที่ดาวน์โหลดจากเซิร์ฟเวอร์ FTP โดยใช้ปุ่ม จอแอลซีดี สั่งการ.
ftp> lcd /home/user/directory-nameอัพโหลดไฟล์ผ่าน FTP
ในการอัปโหลดไฟล์บนเซิร์ฟเวอร์ FTP ให้พิมพ์คำสั่งต่อไปนี้
ftp> ใส่เส้นทาง/ของ/ท้องถิ่น/ไฟล์ไฟล์จะถูกอัปโหลดไปยังเซิร์ฟเวอร์ FTP หากต้องการอัปโหลดหลายไฟล์ ให้พิมพ์คำสั่ง
ftp> mput *.htmlมันจะอัปโหลดไฟล์ทั้งหมดที่มีนามสกุล .html
การดาวน์โหลดไฟล์โดยใช้ Python
Python มีโมดูลที่เรียกว่า 'http.server' ซึ่งใช้ในการถ่ายโอนไฟล์ แต่ด้วยโมดูลนี้ คุณสามารถดาวน์โหลดไฟล์ได้เท่านั้น
หากคุณไม่ได้ติดตั้ง python ไว้ ให้พิมพ์คำสั่งต่อไปนี้
$ sudo apt ติดตั้ง -y python3หากต้องการเปิดเซิร์ฟเวอร์ python ให้ใช้คำสั่ง
$ sudo python3 -m http.เซิร์ฟเวอร์ 4747 # [พอร์ตเช่น (4747)]ตอนนี้เซิร์ฟเวอร์ python กำลังฟังบนพอร์ต 4747
ไปที่เว็บเบราว์เซอร์ของคุณและพิมพ์ที่อยู่ IP และหมายเลขพอร์ต ที่เซิร์ฟเวอร์หลามกำลังฟังอยู่
หน้าจะเปิดขึ้นซึ่งมีไฟล์และไดเร็กทอรีทั้งหมดบนเซิร์ฟเวอร์หลาม คุณสามารถไปที่ไดเร็กทอรีใดก็ได้และดาวน์โหลดไฟล์
คุณสามารถไปที่ไดเร็กทอรีใดก็ได้และดาวน์โหลดไฟล์ใดก็ได้
บทสรุป
SCP, Netcat, FTP และ Python เป็นวิธีที่ใช้กันทั่วไปในการถ่ายโอนไฟล์ วิธีการถ่ายโอนไฟล์และไดเร็กทอรีข้างต้นทั้งหมดนั้นรวดเร็ว เชื่อถือได้ และใช้งานในยุคปัจจุบัน มีเทคนิคอื่นๆ อีกมากมายเช่นกัน คุณสามารถใช้วิธีการใดก็ได้ที่คุณต้องการ