เป็นความเข้าใจผิดทั่วไปว่าไม่มีไวรัสบน Linux ความจริงก็คือ:พวกเขามีอยู่จริง แม้ว่าคุณจะตรวจสอบไฟล์โปรแกรมของคุณเพื่อค้นหาไฟล์ที่ติดไวรัส แต่อาจใช้เวลาหลายเดือนกว่าที่คุณจะรู้ว่าระบบ Linux ของคุณถูกบุกรุก
ความไว้วางใจเป็นสิ่งที่ละเอียดอ่อน และคุณไม่ควรปล่อยมันไปง่ายๆ เพียงเพราะว่ามีบางอย่างให้ทางอินเทอร์เน็ตไม่ได้หมายความว่าคุณสามารถไว้วางใจได้ คุณต้องทำตามขั้นตอนบางอย่างเพื่อปกป้องระบบปฏิบัติการของคุณและตัวคุณเอง
ความเสี่ยงด้านความปลอดภัยจากความประมาทเลินเล่อมีตั้งแต่การขโมยข้อมูลและการรับไวรัส ไปจนถึงการที่ผู้ใช้ไม่ได้รับอนุญาตให้เข้าถึงเครื่อง Linux ของคุณ ดังนั้น บทความนี้จึงระบุวิธีที่ปลอดภัยในการดาวน์โหลดซอฟต์แวร์บน Linux
1. ตรวจสอบค่าแฮช
ค่าแฮช (หรือเช็คซัม) คือสตริงอักขระที่เป็นตัวอักษรและตัวเลขคละกันที่สร้างขึ้นเมื่อข้อมูลบางส่วนถูกส่งผ่านฟังก์ชันการเข้ารหัส ทำหน้าที่เป็นลายเซ็นดิจิทัลสำหรับไฟล์ของคุณ
เพื่อให้แน่ใจว่าคุณไม่ได้ดาวน์โหลดไฟล์ที่เสียหาย ไซต์โอเพนซอร์สจำนวนหนึ่งมักจะจัดเตรียมแฮชที่คุณควรได้รับหลังจากคุณดาวน์โหลดไฟล์เสร็จแล้ว มาดูตัวอย่างกัน
สมมติว่าคุณกำลังดาวน์โหลด Tomcat 10 ซึ่งเป็นเว็บเซิร์ฟเวอร์ยอดนิยม ค่าแฮชสำหรับ Tomcat เวอร์ชัน 10.0.6 คือ:
3d39b086b6fec86e354aa4837b1b55e6c16bfd5ec985a82a5dd71f928e3fab5370b2964a
5a1098cfe05ca63d031f198773b18b1f8c7c6cdee6c90aa0644fb2f2 *apache-tomcat-10.0.6.tar.gz
ส่วน *apache-tomcat-10.0.6.tar.gz เป็นเพียงชื่อไฟล์ ค่าจาก 3d39...2f2 ประกอบด้วยค่าแฮช
ในการรับค่านี้ คุณต้องไปที่ไดเร็กทอรีที่คุณดาวน์โหลดไฟล์เก็บถาวรแล้วรันคำสั่งต่อไปนี้:
sha512sum apache-tomcat-10.0.6.tar.gz
คุณควรได้รับค่าแฮชที่กล่าวถึงข้างต้น หากคุณได้รับค่าอื่น แสดงว่าการดาวน์โหลดของคุณเสียหาย และคุณจำเป็นต้องลบออกทันที
ในตัวอย่างนี้ ฟังก์ชันการแฮชที่เราใช้คือ sha512 นั่นเป็นเพราะว่านี่เป็นฟังก์ชันที่มูลนิธิ Apache Tomcat ตัดสินใจใช้เพื่อปกป้องความสมบูรณ์ของการดาวน์โหลด
เว็บไซต์อื่นๆ อาจใช้ฟังก์ชันการแฮชที่แตกต่างกัน เช่น ฟังก์ชัน sha256 และ sha384 ยอดนิยม
ในกรณีที่เว็บไซต์ใช้ฟังก์ชันการแฮชอื่น ๆ สิ่งที่คุณต้องทำคือเปลี่ยนชื่อคำสั่งด้วยฟังก์ชันการแฮช
sha256sum filename-of-download
sha384sum filename-of-download
เป็นที่น่าสังเกตว่าไฟล์ที่เราใช้คือ TAR ไฟล์ (เช่นไฟล์เก็บถาวร) แต่ถ้าคุณดาวน์โหลดไฟล์ไบนารีแทนล่ะ ข่าวดีก็คือบน Linux คุณจะได้ผลลัพธ์แฮชที่เหมือนกันโดยไม่คำนึงถึงประเภทไฟล์
โหมดเริ่มต้นของฟังก์ชันแฮชบน Linux คือข้อความ ดังนั้น หากต้องการเปลี่ยนเป็นโหมดไบนารี ให้ใช้ -b ตัวเลือกดังต่อไปนี้:
sha256sum -b filename
2. ใช้ Safe Sites
การดาวน์โหลดจากเว็บไซต์ที่ปลอดภัยช่วยลดความเสี่ยงในการรับมัลแวร์ได้อย่างมาก ตามหลักการทั่วไป คุณควรใช้เว็บไซต์ดาวน์โหลดอย่างเป็นทางการของซอฟต์แวร์ที่คุณต้องการดาวน์โหลดเสมอ หากไม่สามารถหาเว็บไซต์อย่างเป็นทางการได้ด้วยเหตุผลบางประการ ให้พิจารณาใช้เว็บไซต์ที่เชื่อถือได้
ไซต์ดาวน์โหลด เช่น FileHorse และ SourceForge คือตัวอย่างไซต์ที่เชื่อถือได้ซึ่งคุณสามารถเยี่ยมชมได้ ไซต์เหล่านี้มีมานานแล้วและได้รับความไว้วางใจจากผู้ใช้
3. รวบรวมซอร์สโค้ดด้วยตัวคุณเอง
สาเหตุหลักประการหนึ่งที่ทำให้ชุมชนโอเพนซอร์สมีอยู่ก็คือ คุณไม่จำเป็นต้องไว้วางใจบริษัทซอฟต์แวร์ขนาดใหญ่ และหวังว่าพวกเขาจะไม่ได้ทำอะไรที่ไม่ได้รับอนุญาตบนพีซีของคุณ
เมื่อคุณดาวน์โหลดไฟล์ไบนารี คุณได้ให้อำนาจแก่ใครก็ตามที่คอมไพล์โค้ด แต่หากคุณเข้าถึงซอร์สโค้ดได้ คุณก็ดึงพลังกลับคืนมาในมือของคุณเองได้
เมื่อใช้โอเพนซอร์ส คุณจะตรวจสอบได้โดยอิสระว่าซอฟต์แวร์ทำตามที่ผู้เขียนบอก ข้อเสียเปรียบเพียงอย่างเดียวคือคุณต้องมีทักษะการเขียนโปรแกรมที่สูงกว่าค่าเฉลี่ย คุณจะต้องเรียนรู้อย่างดีในสาขาวิชาที่กำหนด
คุณยังตัดสินใจได้ว่าจะใช้กลยุทธ์และตรวจสอบเฉพาะไฟล์สำคัญๆ ที่สนใจเท่านั้น
ตัวอย่างเช่น สมมติว่าคุณมีซอร์สโค้ด C ที่คัดลอกมาจากที่เก็บ GitHub ด้านล่างนี้คือวิธีที่คุณจะคอมไพล์ด้วยตัวเอง
เรียกใช้คำสั่งด้านล่างเพื่อติดตั้ง build-essential บรรจุุภัณฑ์. แพ็คเกจประกอบด้วยเครื่องมือสำคัญที่จำเป็นต่อการสร้างซอฟต์แวร์บน Linux
sudo apt-get install build-essential
ตอนนี้คอมไพล์โค้ด C โดยใช้คอมไพเลอร์ gcc
gcc program-name.c -o program-name
หลังจากคอมไพล์แล้ว คุณสามารถรันโปรแกรมโดยพิมพ์:
./program-name
4. ใช้ตัวจัดการแพ็คเกจอย่างเป็นทางการ
วิธีที่ง่ายที่สุดในการติดตั้ง อัพเดต และถอนการติดตั้งซอฟต์แวร์คือการใช้ตัวจัดการแพ็คเกจ มีหลายประเภทเช่น pacman, dpkg, DNF และ APT ผู้จัดการแพ็กเกจทำงานโดยตรงกับที่เก็บซอฟต์แวร์และร้านแอปอย่างเป็นทางการ
ผู้จัดการบรรจุภัณฑ์ช่วยงานคุณหนักมาก พวกเขาจัดการการดำเนินการมาตรฐาน เช่น การจัดการการพึ่งพาที่ซอฟต์แวร์ต้องการ รับรองความสมบูรณ์และความถูกต้องของการดาวน์โหลด และการจัดการเวอร์ชัน
ข้อดีอีกอย่างคือ distro ของคุณมักจะมาพร้อมกับตัวจัดการแพ็คเกจที่ติดตั้งไว้ล่วงหน้า ตัวอย่างเช่น Debian 10 มาพร้อมกับ APT และระบบที่ใช้ Arch มาพร้อมกับ pacman
5. การวิจัยส่วนบุคคล
โลกของซอฟต์แวร์เป็นสถานที่ที่เปลี่ยนแปลงตลอดเวลาและการรักษาให้ทันกับแนวโน้มด้านความปลอดภัยถือเป็นส่วนสำคัญในการปกป้องตัวคุณเอง มีตัวเลือกการติดตั้งหลายตัวที่คุณสามารถเลือกได้ในสถานการณ์ต่างๆ เช่น การติดตั้งซอฟต์แวร์บนเครื่องเสมือนหรือใช้คอนเทนเนอร์แอป
คอนเทนเนอร์แอปเป็นเทรนด์ที่น่าตื่นเต้นเป็นพิเศษ เพราะช่วยให้แน่ใจว่าแอปของคุณทำงานในลักษณะเดียวกันในสภาพแวดล้อมการทำงานที่แตกต่างกัน
ความสามารถในการแยกการดำเนินการของแกนซอฟต์แวร์และการพึ่งพาจากโครงสร้างพื้นฐานพื้นฐานนั้นให้การรักษาความปลอดภัยที่ไม่เคยมีมาก่อน ตัวอย่างเช่น คุณต้องกังวลเกี่ยวกับการยืนยันความปลอดภัยของการขึ้นต่อกันของคุณเพียงครั้งเดียว จากนั้น คาดว่าสิ่งนี้จะสะท้อนในสภาพแวดล้อมที่แตกต่างกัน
แนวทางปฏิบัติที่ดีในการดูบทวิจารณ์ซอฟต์แวร์และติดตามการสนทนาบน GitHub ถือเป็นแนวทางปฏิบัติที่ดี การตรวจสอบซอฟต์แวร์ช่วยให้คุณเห็นภาพที่ดีว่าคุณควรคาดหวังอะไรหลังจากดาวน์โหลด พฤติกรรมที่ไม่คาดคิดซึ่งผู้ใช้อาจสังเกตเห็น และคำแนะนำของพวกเขา
การสนทนา GitHub ยังทำให้คุณทราบว่าคุณควรใช้มาตรการเชิงรุกแบบใดหลัง/ระหว่างการติดตั้งซอฟต์แวร์ นอกจากนี้คุณยังสามารถรับข้อควรพิจารณาด้านความปลอดภัยอื่นๆ ที่ไม่รวมอยู่ในเอกสารอย่างเป็นทางการได้อีกด้วย
คุณควรสังเกตส้อมที่มีผู้ร่วมให้ข้อมูลจำนวนมากบน GitHub อาจมีการเปลี่ยนแปลงโปรโตคอลเกิดขึ้น และการที่คุณไม่สามารถติดตามการอัปเดตเหล่านี้ได้จะทำให้ความปลอดภัยของคุณลดลง
คำแนะนำและแนวทางปฏิบัติที่ดี
ถือเป็นแนวทางปฏิบัติที่ดีเสมอที่จะอัปเดตแพ็คเกจและรายการพื้นที่เก็บข้อมูลของระบบก่อนดาวน์โหลดซอฟต์แวร์หลัก ตัวจัดการแพ็คเกจทุกตัว เช่น pacman ใน Arch Linux เสนอตัวเลือกให้คุณในการติดตั้ง อัปเดต และลบแพ็คเกจ
หลังจากตรวจสอบให้แน่ใจว่าแพ็คเกจที่ติดตั้งนั้นเป็นเวอร์ชั่นล่าสุดแล้ว คุณสามารถดำเนินการต่อไปและดาวน์โหลดซอฟต์แวร์ที่คุณต้องการ เมื่อใดก็ตามที่เป็นไปได้ หากคุณสามารถดาวน์โหลดแพ็คเกจโดยใช้ตัวจัดการแพ็คเกจ ให้ดำเนินการดังกล่าว นี่เป็นวิธีที่ง่ายและปลอดภัยที่สุดในการติดตั้งและอัปเดตซอฟต์แวร์บน Linux