Tag: Source Code

  • CentOS คือ อะไร ? ระบบปฏิบัติการ Linux สำหรับจัดทำ Server ยอดนิยม

    CentOS คือ อะไร ? ระบบปฏิบัติการ Linux สำหรับจัดทำ Server ยอดนิยม

    CentOS คือ อะไร ?

    CentOS คือ ระบบปฏิบัติการ Community Enterprise Operating System หรือ ระบบปฏิบัติการ Linux สำหรับองค์กรที่เน้นเรื่องความเสถียรและมีการอัปเดตความปลอดภัยระดับสูง โดย CentOS มีเวอร์ชันใหม่ประมาณทุก 2 ปี โดยแต่ละเวอร์ชันมีอายุการใช้งานสูงสุด 10 ปี หรือตามข้อกำหนดระยะเวลาการสนับสนุนของ Red Hat Enterprise Linux (RHEL) และในแต่ละเวอร์ชันได้รับการอัปเดตประมาณทุก 6 เดือน ทำให้ระบบ Linux มีความปลอดภัยและมีความน่าเชื่อถือ  

    CentOS เปิดตัวอย่างเป็นทางการครั้งแรกในปี ค.ศ. 2004 โดย Gregory Kurtze เป็นผู้ก่อตั้ง ซึ่ง CentOS เป็น Open Source ที่พัฒนามาจากโค้ดต้นฉบับ (Source Code) ของ RedHat Enterprise Linux (RHEL) ระบบปฏิบัติการที่มีความเสถียร รองรับ Workload ที่หลากหลาย สามารถนำไปพัฒนาซอฟต์แวร์ Open Source อื่น ๆ ได้ ซึ่งเป็นลิขสิทธิ์แบบ GNU General Public License (GNU-GPL) หมายถึง สัญญาอนุญาตให้นักพัฒนาสามารถใช้ซอฟต์แวร์ หรือ License รวมถึงสามารถทำซ้ำ เผยแพร่ และดัดแปลงซอฟต์แวร์นั้นได้ เพื่อทำให้นักพัฒนาทุกคนสามารถใช้งานซอฟต์แวร์ดังกล่าวได้อย่างอิสรเสรีและถูกต้องตามกฎหมาย

    ในปัจจุบัน CentOS นิยมนำมาใช้ในการทำ Web Hosting หรือพื้นที่รับฝากเว็บไซต์ เพื่อใช้ออนไลน์บนอินเทอร์เน็ต รวมถึงการทำ Server สำหรับการวางระบบในองค์กรที่ได้รับความนิยมเป็นอย่างมาก เนื่องจากเป็นระบบปฏิบัติการที่ใช้ต้นแบบจาก Red Hat สามารถทำการติดตั้งแพ็กเกจย่อยภายในได้ทั้ง RPM (RPM Package Manager), TAR (Tape Archive), APT (Advanced Packaging Tool) หรือใช้คำสั่ง YUM (Yellow Dog Updater Modified) ในการอัปเดตซอฟต์แวร์ได้แบบอัตโนมัติ


    CentOS Stream คืออะไร ?

    CentOS เป็นการนำโค้ดต้นฉบับ (Source Code) ของ Red Hat Enterprise Linux (RHEL) มาเผยแพร่ให้ใช้ฟรีโดยไม่ต้องซื้อ Subscription จาก Red Hat โดยเวอร์ชันของ CentOS เท่ากับ RHEL หรือล่าช้ากว่า RHEL เพียงเล็กน้อย

    แต่ CentOS Stream คือ Upstream ของ RHEL โดยอยู่ตรงกลางระหว่าง Fedora ที่เป็น Linux Distribution จาก Red Hat Enterprise Linux สำหรับเชิงธุรกิจที่ออกเวอร์ชันใหม่ในทุก 6 เดือน กับ RHEL ที่ออกเวอร์ชันล่าช้ากว่า โดยทีมพัฒนาของ Red Hat นำ CentOS Stream 9 ไปพัฒนาเป็น RHEL 9.x ซึ่งในปัจจุบันสถานะคือ RHEL 9.0 Beta โดย CentOS Stream 9 มีอายุการอัปเดตและการบำรุงรักษาไปจนถึงประมาณปี ค.ศ. 2027 หรือเทียบเท่ากับระยะการดูแลรักษาของ RHEL 9

    ภาพประกอบ 1 CentOS คือ

    เครดิตภาพ : blog.centos.org


    CentOS Version มีอะไรบ้าง ?

    ปัจจุบัน CentOS มีระบบปฏิบัติการทั้งหมด 4 เวอร์ชัน ทั้ง CentOS เวอร์ชันเดิม และ CentOS Stream เวอร์ชันใหม่ โดยคุณยังสามารถเลือกใช้งาน CentOS เวอร์ชันเก่าได้ แต่อาจมีข้อจำกัดบางอย่างเมื่อเทียบกับ CentOS เวอร์ชันรุ่นที่ใหม่กว่า เนื่องจากมีการปรับปรุงข้อบกพร่องที่พบในเวอร์ชันเก่าให้ดียิ่งขึ้น อีกทั้งยังมีการอัปเดตและการบำรุงรักษาให้ทันสมัยอยู่เสมอ โดยแต่ละเวอร์ชันมีระยะ End of Life ดังนี้

    ภาพประกอบ 2 CentOS คือ

    • CentOS Linux 7 EOL : 2024-06-30 (ระยะเวลาการอัปเดตและการบำรุงรักษาเท่าเดิม)
    • CentOS Linux 8 EOL : 2021-12-31 (ระยะเวลาการอัปเดตและการบำรุงรักษาถูกตัดให้สั้นลงกว่าเวอร์ชันอื่น)
    • CentOS Stream 8 EOL : 2024-05-31 (ระยะเวลาการอัปเดตและการบำรุงรักษาเท่าเดิม)
    • CentOS Stream 9 EOL : 2027 (ระยะเวลาการอัปเดตและการบำรุงรักษาเทียบเท่าของ RHEL 9)


    6 ประโยชน์ที่ได้จากการใช้ CentOS

    ภาพประกอบ 3 CentOS คือ

    1. ใช้งานได้ Free !

    ช่วยประหยัดงบประมาณโดยไม่จำเป็นต้องจ่ายค่าลิขสิทธิ์ซอฟต์แวร์ เพราะ CentOS เป็นซอฟต์แวร์ Open Source ที่มีประสิทธิภาพสูงและสามารถใช้งานได้ฟรี ! 

    2. มี Package ให้ใช้งานมากมาย 

    CentOS มีแพ็กเกจย่อยที่สามารถนำมาใช้ทำ Server สำหรับใช้งานในองค์กรได้เป็นจำนวนมาก เช่น

    • Antivirus Server (ClamAV)
    • Control Panel (ISPConfig)
    • Database Server (MySQL / PostgreSQL)
    • DHCP Server (DHCPd)
    • DNS Server (BIND)
    • File and Printer Server (Samba)
    • FTP Server (ProFTPd / VSFTPd)
    • Mail Server (Sendmail / Postfix / Dovecot)
    • Proxy Server (Squid)
    • RADIUS Server (FreeRADIUS)
    • Web Server (Apache)

    3. พร้อม Support เมื่อเจอข้อบกพร่อง

    หากพบข้อบกพร่องในการใช้งาน CentOS สามารถส่งเรื่องไปยัง bugs.centos.org เพื่อรับการแก้ไขปัญหาได้โดยตรง

    4. รวม Technology ที่ทันสมัยมาให้ใช้งาน

    เวอร์ชันล่าสุดของ CentOS รวมเทคโนโลยี Virtual Machine และ Hypervisor เช่น Xen, oVirt และ Docker เป็นต้น

    5. จัดทำ Private IP Address ไว้ใช้ในองค์กรได้

    CentOS สามารถนำมาทำเป็นระบบ Server สำหรับ Private IP Address ใช้ในองค์กร รวมทั้งจัดตั้งเป็นระบบเก็บ Log Files สำหรับผู้ใช้งาน เพื่อให้สอดคล้องกับพระราชบัญญัติว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ. 2560

    6. มีการ Update ความปลอดภัยในการใช้งานอยู่เสมอ

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


    คุณพร้อมใช้งาน CentOS แล้วหรือยัง ?

    หากคุณต้องการระบบที่มีความมั่นคงและสามารถใช้งานได้อย่างมีประสิทธิภาพ CentOS เป็นตัวเลือกที่ดี อีกทั้งยังได้รับความนิยมสำหรับการนำมาใช้สร้าง Server สำหรับองค์กร นอกจากนี้แอปพลิเคชันและคุณสมบัติด้านความปลอดภัยทั้งหมดเป็น Open Source ซึ่งมีความปลอดภัยและสามารถใช้งานฟรีได้ทั้งหมด ! 

    โดยคุณสามารถติดตั้งและใช้งานบน OpenLandscape Cloud ได้เลยที่ https://gate.openlandscape.cloud


    ข้อมูลอ้างอิง

    https://www.mindphp.com/

    https://hmong.in.th/wiki/CentOS

    https://secure.jvh.co.th

    https://blog.centos.org/

  • Open Source คือ อะไร ? มาทำความรู้จักซอร์ฟแวร์ยอดนิยมที่สามารถนำไปพัฒนาต่อให้ดีกว่าเดิมได้ !

    Open Source คือ อะไร ? มาทำความรู้จักซอร์ฟแวร์ยอดนิยมที่สามารถนำไปพัฒนาต่อให้ดีกว่าเดิมได้ !

    Open Source คือ อะไร ?

    Open Source คือ การพัฒนาซอฟต์แวร์ตามแนวคิดที่อาศัยความร่วมมือของนักพัฒนาทั่วโลก เพื่อสร้างซอฟต์แวร์ที่ดีกว่าเดิม โดยซอฟต์แวร์ดังกล่าวสามารถเปิดเผยโค้ดต้นฉบับ (Source Code) ซึ่งถูกเขียนขึ้นโดยภาษาคอมพิวเตอร์ต่าง ๆ โดยมีวัตถุประสงค์เพื่อสร้างโปรแกรมสำหรับควบคุมการทำงานของคอมพิวเตอร์หรือการใช้งานทั่วไป ตลอดจนงานเฉพาะด้าน ซึ่งนักพัฒนาโปรแกรมจะเป็นผู้เขียนชุดคำสั่งขึ้นมา ก่อนทำการแปลงเป็นภาษาเครื่องที่คอมพิวเตอร์สามารถเข้าใจได้ และสามารถทำตามคำสั่งด้วยการใช้ตัวแปล (Compiler) ช่วยแปลโค้ดต้นฉบับ (Source Code) ทั้งโปรแกรมให้เป็นลำดับของคำสั่งหรือคำสั่งในภาษาคอมพิวเตอร์ (Object Code) นอกจากนี้โปรแกรมดังกล่าวยังเปิดโอกาสให้ผู้อื่นสามารถดาวน์โหลด แก้ไข ดัดแปลง และเผยแพร่ได้อย่างอิสระ เพื่อให้นักพัฒนาได้นำไปใช้พัฒนาซอฟต์แวร์ต่อได้หรือร่วมกันพัฒนาจนเกิดเป็นสังคมนักพัฒนาซอฟต์แวร์ที่ทำงานด้วยกันอย่างไร้พรมแดน ภายใต้เงื่อนไขที่มีข้อตกลงร่วมกัน 


    ทำไม Open Source ถึงได้รับความนิยม ?

    Open Source ที่ร่วมแชร์โค้ดต้นฉบับ (Source Code) แบบสมบูรณ์สู่สาธารณะ โดยทั่วไปจะทำการแชร์ผ่านแพลตฟอร์มออนไลน์สำหรับแชร์โค้ด เช่น GitHub ที่อนุญาตให้ทุกคนตรวจสอบและเปลี่ยนแปลงโค้ดได้ ทำให้นักพัฒนาสามารถเข้าถึงข้อมูล พร้อมได้รับคำแนะนำ รวมถึงความช่วยเหลือต่าง ๆ และการทำงานร่วมกันจากกลุ่มนักพัฒนาที่กว้างมากขึ้น ทั้งจากผู้ที่มีความเชี่ยวชาญที่แตกต่างกัน หรือบุคคลที่มีประสบการณ์ที่หลากหลาย ทำให้ได้รับผลลัพธ์ที่ดีขึ้นในเวลาอันสั้น รวมถึงดำเนินการแก้ไขปัญหาต่าง ๆ ที่พบ ทำให้มีความปลอดภัยมากขึ้น เพราะยิ่งมีการตรวจสอบและทำงานกับโค้ดมากเท่าไหร่ ยิ่งมีโอกาสพบข้อผิดพลาดหรือช่องโหว่ด้านความปลอดภัยที่อาจเกิดขึ้นได้มากขึ้นเท่านั้น ทำให้ Open Source ได้รับการพัฒนาต่อจนสมบูรณ์และมีประสิทธิภาพในการใช้งานมากขึ้น


    ประวัติความเป็นมาของ Open Source

    Open Source เป็นแนวคิดที่เกิดขึ้นในยุคเริ่มต้นของการพัฒนาซอฟต์แวร์ โดยมีกลุ่มนักวิทยาศาสตร์ นักวิจัยและนักวิชาการ รวมไปถึงนักพัฒนาที่ได้ร่วมทำงานด้วยกัน บนพื้นที่ของการแบ่งปันความรู้และข้อมูลแบบอิสรเสรีอย่างเปิดเผย โดยนักพัฒนามีวิธีแบ่งปันโค้ดต้นฉบับ (Source Code) ผ่านทางหนังสือและนิตยสารคอมพิวเตอร์ ซึ่งมีการทำสำเนาโค้ดต้นฉบับ (Source Code) อย่างเต็มรูปแบบ เพื่อให้ผู้อ่านสามารถคัดลอกและนำไปใช้งานได้ ซึ่งได้รับความนิยมเป็นพิเศษส่งผลให้คอมพิวเตอร์ยุคแรก อย่างเช่น Commodore 64 ซึ่งเป็นคอมพิวเตอร์ตั้งโต๊ะเครื่องแรก ๆ ของโลกและ ZX Spectrum คอมพิวเตอร์แบบ 8 bit ซึ่งสามารถใช้สร้างเกมพื้นฐานมีจำนวนการใช้งานเพิ่มมากขึ้น

    เมื่อการพัฒนาซอฟต์แวร์กลายเป็นเชิงพาณิชย์และมีการแข่งขันระหว่างนักพัฒนาเพิ่มมากขึ้น การแบ่งปันโค้ดต้นฉบับ (Source Code) ของ Open Source จึงลดลง แต่สำหรับนักพัฒนาบางกลุ่มยังมีการเขียนซอฟต์แวร์ Open Source และแบ่งปันอย่างต่อเนื่อง ถึงแม้ว่าบริษัทซอฟต์แวร์ขนาดใหญ่จะถือเป็นทรัพย์สินทางปัญญา และเป็นโอกาสทำเงินทางธุรกิจ

    แต่เมื่อถึงยุคที่คอมพิวเตอร์สามารถเชื่อมต่อผ่านอินเทอร์เน็ตได้อย่างมีประสิทธิภาพมากขึ้น นักพัฒนาจึงเริ่มแบ่งปันโค้ดต้นฉบับ (Source Code) ผ่านช่องทางออนไลน์ ทำให้ Open Source เพิ่มขึ้นจากเดิมเป็นจำนวนมาก และในที่สุดก็นำไปสู่การสร้าง Linux Kernel โดย ลินุส โตร์วัลดส์ (Linus Torvalds) ขึ้นมาเป็นครั้งแรก ซึ่งเป็นโปรแกรมพื้นฐานภายใต้ระบบปฏิบัติการคอมพิวเตอร์ (OS) ทำหน้าที่เป็นสื่อกลางระหว่างฮาร์ดแวร์กับซอฟต์แวร์ และช่วยจัดการทรัพยากรในคอมพิวเตอร์ต่าง ๆ เช่น การใช้พื้นที่หน่วยความจำ (RAM), การใช้หน่วยประมวลผลกลาง (CPU), การจัดการไฟล์ และระบบอื่น ๆ เป็นต้น นอกจากนี้ยังมีหน้าที่เป็นตัวควบคุมอุปกรณ์ Input / Output และอุปกรณ์ต่อพ่วงอื่น ๆ อย่าง เมาส์ (Mouse), จอมอนิเตอร์ (Monitor), แป้นพิมพ์ (Keyboard) เป็นต้น

    คำว่า ‘โอเพนซอร์ส’ (Open Source) ถูกนำมาใช้ครั้งแรกในปี 1998 และได้รับความนิยมมากขึ้นเรื่อย ๆ ถึงแม้ว่าซอฟต์แวร์ Open Source เป็นที่รู้จักในเฉพาะกลุ่มผู้ชื่นชอบการประมวลผล (Data Processing) และผู้ที่ให้ความสนใจในการเขียนโปรแกรมมาก่อน แต่ในปัจจุบัน Open Source ได้รับการยอมรับในระดับวงกว้าง ทั้งในสายตาของสาธารณชนทั่วไปและภายในระดับองค์กร


    บริษัทสามารถทำเงินจาก Open Source ได้อย่างไร ?

    เนื่องจาก Open Source เปิดให้ใช้งานได้ฟรี หลายคนอาจสงสัยว่าบริษัทต่าง ๆ เช่น Red Hat และ Canonical สามารถสร้างรายได้อย่างไร ?

    บริษัทที่เชี่ยวชาญในผลิตภัณฑ์ Open Source จะไม่สามารถสร้างรายได้จากการขายซอฟต์แวร์ Open Source ได้โดยตรง เพราะมีการเปิดให้ดาวน์โหลดใช้งานได้ฟรี แต่หลาย ๆ บริษัทจะนำเสนอผลิตภัณฑ์เวอร์ชันที่ได้รับการปรับปรุงและพัฒนาเพิ่มเติมเรียบร้อยแล้ว ส่งผลให้ซอฟต์แวร์เหล่านี้มีความยืดหยุ่น มีคุณสมบัติครบถ้วนตามความต้องการในการใช้งาน รวมถึงการจัดการและการบำรุงรักษาที่มีประสิทธิภาพ นอกจากนี้ยังสามารถทำงานร่วมกันได้ดีขึ้นกับแพลตฟอร์มและบริการอื่น ๆ ที่หลากหลายมากยิ่งขึ้น


    ทำไมต้องนักพัฒนาถึงควรใช้ Open Source ?

    นักพัฒนาส่วนใหญ่มีเหตุผลหลากหลายที่เลือกใช้ Open Source แต่สิ่งสำคัญที่สุด คือ การแบ่งปันข้อมูลความรู้ระหว่างกันเพื่อให้ได้ผลลัพธ์ที่ดีที่สุด นักพัฒนาหลายคนเพียงต้องการช่วยสร้างสิ่งที่ดีขึ้นและสนับสนุนโครงการที่มีประโยชน์และคุ้มค่าสำหรับการพัฒนา เพื่อให้มีประสิทธิภาพที่ดีขึ้นอยู่เสมอ 


    Open Source คือ รูปประกอบ

    Open Source ปลอดภัยหรือไม่ ?

    ในทางทฤษฎี ยิ่งมีการตรวจสอบโค้ดมากขึ้นเท่าไหร่ นักพัฒนาจะพบช่องโหว่ทางด้านความปลอดภัยและข้อผิดพลาดต่าง ๆ ทำให้สามารถแก้ไขให้มีประสิทธิภาพที่ดีได้มากขึ้น แต่ถึงจะได้รับการตรวจสอบจากผู้เชี่ยวชาญหลาย ๆ คนแล้ว ความผิดพลาดสามารถเกิดขึ้นได้เสมอ ดังนั้นจึงไม่ควรละเลยเรื่องของความปลอดภัยและควรตรวจสอบความถูกต้องอยู่เป็นประจำ

    ข้อควรระวังจากการใช้โค้ดฟรีและการแบ่งปันกันอย่างกว้างขวาง คือ ช่องโหว่ที่พบจะถูกนำกลับมาใช้ใหม่ตามค่าเริ่มต้น และ Open Source Library ที่ได้รับความนิยมมากที่สุด ยังถูกฝังอยู่ภายในแอปพลิเคชันจำนวนมาก และหากโค้ดหนึ่งบรรทัดภายในไลบรารีมีช่องโหว่ เพียงแค่จุดเดียวสามารถกลายเป็นข้อบกพร่องของระบบที่ทำให้ผู้ไม่ประสงค์ดีเข้ามาใช้ระบบ เพื่อทำให้เกิดความเสียหายหรือเอาข้อมูลส่วนตัวไปใช้ในทางที่ไม่ดีได้ 

    ดังนั้นนักพัฒนาควรทำการตรวจสอบแหล่งที่มาของโค้ดที่นำมาใช้และอย่าเพิ่งไว้วางใจ ถึงแม้โค้ดจะนำมาจากแหล่งที่มีความน่าเชื่อถือ และควรตรวจสอบหาข้อผิดพลาดและอันตรายอื่น ๆ ที่อาจถูกมองข้ามด้วยความระมัดระวังเพื่อความปลอดภัยอยู่เสมอ

    นอกจากนี้ในปัจจุบันยังมี Tooling ต่าง ๆ เข้ามาช่วยสร้างความปลอดภัย และตรวจสอบช่องโหว่ เพื่อป้องกันภัยคุกคามได้อย่างเต็มประสิทธิภาพ รวมถึงยังได้รับความช่วยเหลือจากนักพัฒนาในการช่วยสร้างความปลอดภัย ส่งผลให้เทคโนโลยีในปัจจุบันก้าวหน้าขึ้นไปอีกมาก ทำให้นักพัฒนาสามารถมั่นใจในเรื่องของความปลอดภัยได้มากขึ้น

    ส่งผลให้ Open Source ได้รับความนิยมใช้กันทั่วโลก จากการสำรวจกลุ่มผู้เชี่ยวชาญด้าน Open Source Software (OSS) จำนวน 2,660 ราย โดย OpenLogic ของ Perforce และ Open Source Initiative ในปี 2022 พบว่า 77% ขององค์กร นิยมใช้งาน OSS มากกว่าเมื่อปีที่ผ่านมา โดย 36% พบว่ามีจำนวนการใช้งานที่เพิ่มมากขึ้นจากเดิม และยังมีบริษัทใหญ่ ๆ ที่ให้การสนับสนุนและผลิตโปรเจกต์ Open Source มากมาย ยกตัวอย่าง Open Source จาก Facebook คือ React, Flux, Flow, Jest, React Native, GraphQL & Relay, HHVM, Nuclide และ Open Source จาก Google คือ Android, Angular, Dart, Polymer, Golang. Kubernetes (K8S), TensorFlow เป็นต้น


    ข้อมูลอ้างอิง

    https://www.itpro.co.uk/software/28109/what-is-open-source

    www.techtalkthai.com/open-source-software-oss/

    https://www.devahoy.com/blog/2018/01/open-source-project-in-tech-company