اپن سورس چیست؟ منظور از سیستم Open Source یا متن باز
- امنیت وردپرس مقالات آموزشی
- بروزرسانی شده در
مطمئناً تا حالا بارها و بارها شنیدید که میگن وردپرس یه سیستم متنباز یا همون Open Source هست. اما تا حالا فکر کردید که چرا یکی از محبوبترین ابزارهای ساخت سایت در دنیا، باید کدهای گرانقیمتش رو کاملاً رایگان و باز بذاره؟ در این آموزش قصد داریم دقیقاً روی همین موضوع دست بذاریم و ببینیم اصلاً به چه سیستمی اپن سورس میگن و سیستم ما باید چه ویژگیها و قابلیتهایی داشته باشه تا بتونیم بهش بگیم متنباز. پس با ما همراه باشید.
برای اینکه مفهوم اپن سورس رو خیلی راحت درک کنیم، در این آموزش از سایت ویکیپدیا کمک گرفتیم؛ اما یادتون باشه که لزوماً تمام اطلاعات موجود در این سایت قابلاعتماد نیست و ما به عنوان کاربران و مدیران باهوشِ وب، نباید ۱۰۰ درصد بهش تکیه کنیم.
آنچه در این مقاله میخوانید
مفهوم اپن سورس چیست؟
اگه بخوایم طبق تعریف سایت ویکیپدیا پیش بریم، مفهوم اپن سورس یا متنباز به سیستمی اشاره دارد که به دست ما رو باز میذاره که به راحتی به سورس کد، داکیومنتهای طراحی یا محتوای اصلی دسترسی داشته باشیم. پس با یه محصول یا نرمافزاری طرف هستیم که دست ما رو کاملاً باز میذاره تا کدها، مستندات طراحی و محتواش رو به دلخواه خودمون تغییر بدیم.
بیاین برای درک بهتر این موضوع، یه مثال ملموس در دنیای واقعی بزنیم. فرض کنید شما یه خودرو میخرید؛ این خودرو یه دفترچه راهنما داره که وقتی بازش میکنید، نحوه انجام یه سری کارهای اولیه و ساده رو یاد میگیرید.
. این دفترچه اطلاعات عجیبوغریب یا تخصصی زیادی رو در اختیارتون نمیذاره.
حالا اگه یه سرچ ساده تو اینترنت بزنید، میبینید دفترچههای تعمیرات تخصصی زیادی برای این خودرو وجود داره که حتی نقشه کامل سیمکشی رو هم داره. شما این حق رو دارید که هر تغییری دلتون خواست در این سیمکشیها ایجاد کنید؛ البته خب مشخصه که با این کار، گارانتی خودرو باطل میشه و دیگه نمیتونید از خدماتش استفاده کنید.
دقیقاً همین حالت رو در سیستمهای کامپیوتری هم داریم. مثلاً وقتی شما از شرکت اپل یه مکبوک میخرید که سیستمعامل مکاواس روش نصبه، باید بدونید که این سیستمها اصلاً اپن سورس نیستند. شما به هیچ وجه نمیتونید تغییری در کدها، ظاهر یا طراحی اصلیشون ایجاد کنید. در واقع کدهای این سیستمعاملها اصلاً در اختیار ما قرار نداره و صرفاً میتونیم بر اساس دسترسیها و Roleهایی که مدیر سیستم یا برنامهنویس سیستم مشخص کرده، یه سری نرمافزار نصب کنیم و تغییرات خیلی جزئی بدیم.
در این حالت شما اختیارات کاملاً محدودی دارید، نمیتونید هر چیزی رو عوض کنید و سورس اصلی سیستم دستتون نیست. حالا فکر کنید اگه سورس سیستم در اختیار بقیه قرار میگرفت چی میشد؟ هر شرکتی میتونست طبق سلیقه خودش توش تغییرات ایجاد کنه و یه نسخه جدید ازش بفرسته بازار؛ دقیقاً مثل همون اتفاقی که سالهاست داریم در سیستمعامل لینوکس میبینیم.
وردپرس متن باز است
وقتی وارد وبسایت WordPress.org میشید، میبینید که همون اول صفحه یه عبارت مهم نوشته شده: wordpress is Open Source Software you Can Use to Create a Beautiful Website, Blog, or App این جمله دقیقاً نشوندهندهی متنباز بودن وردپرسه. البته بعضی از افراددر زبان فارسی بهش «باز متن» هم میگن که اون هم کاملاً درسته.
وردپرس یه نرمافزار کاملاً متنبازه که ما میتونیم برای راهاندازی و ساخت سایت ازش استفاده کنیم. پس تا اینجا طبق تعریف سایت ویکیپدیا نتیجه میگیریم که ما به عنوان کاربران این سیستم، میتونیم به راحتی به کدهای وردپرس دسترسی داشته باشیم. حالا بیاین تا مزیتهای اصلی استفاده از سیستمهای اپن سورس رو با هم بررسی کنیم.
مزیت استفاده از سیستمهای متن باز
اگه همین حالا وارد سایت گیتهاب (Github) بشید و کلمه wordpress رو سرچ کنید، یه صفحه براتون باز میشه که توسط خود تیم WordPress.org مدیریت میشه.

حالا اگه در این صفحه مثلاً روی یکی از فایلها کلیک کنید، میبینید که خیلی راحت به کدهای اون فایل دسترسی دارید. در صفحهای که براتون باز میشه، میتونید تغییرات دلخواه و حتی خیلی جزئی رو روی کدها اعمال کنید. گیت در اصل یه ابزار و متده که باهاش میتونید کدها رو بگیرید، تغییراتتون رو روشون اعمال کنید و دوباره بفرستید روی گیتهاب یا هر سیستم گیت دیگه.

با این قابلیت، شما اگه یه برنامهنویس باشید میتونید هر تغییر دلخواهی رو در وردپرس ایجاد کنید. مثلاً میتونید ایراداتش رو رفع کنید، باگهای مربوط به زبان فارسی رو برطرف کنید یا حتی ظاهر یه دکمه رو تغییر بدید. بعد از اینکه تغییرات مورد نظرتون رو ایجاد کردید و اون رو به گیت فرستادید، کاربران و مدیران پروژه وردپرس میآن و کد شما رو دقیق بررسی میکنن؛ اگه تغییرات شما درست و مناسب بود، تاییدش میکنن و در نسخههای بعدی منتشر میشه. اینجوری شما هم رسماً میشید جزئی از تیم توسعهدهنده وردپرس!
بررسی وردپرس در گیت هاب
در این بخش میبینید که بیش از ۱۰۰ نفر توسعهدهنده اصلی در آینه رسمی گیتهاب وردپرس وجود دارند که شبانهروز دارن روی وردپرس کار میکنن و تا الان تغییرات خیلی زیادی رو روش به وجود آوردن. در واقع وقتی یه نسخه جدید از وردپرس منتشر میشه، به این معنی نیست که فقط آقای مت مولنوگ (سازنده وردپرس) این تغییرات رو ایجاد کرده؛ بلکه جمعی از Contributions (مشارکتکنندگان) دستبهدست هم میدن تا نسخه جدید منتشر بشه و وردپرس روزبهروز امنتر و بهتر بشه.
مثلاً اگه نگاه کنید، میبینید که آخرین Commits (ثبت تغییرات) مربوط به همین چند ساعت گذشته بوده و تا الان بیش از ۵۵,۰۰۰ کامیت ثبت شده. اگه روی آخرین کامیتها کلیک کنید، دقیقاً مشخص میشه که چه کسی چه تغییری در کدها داده. مدیران وردپرس این تغییرات رو بررسی میکنن و در آپدیتهای جدید اعمالش میکنن. مسلماً با همین مشارکتهاست که وردپرس دائم داره به سیستم بهتری تبدیل میشه.
تفاوت سیستمهای متنباز و متنبسته چیست؟
همه ما نرمافزار معروف فتوشاپ رو میشناسیم و شاید هر روز داریم باهاش کار میکنیم. اما تا حالا براتون پیش اومده که حین کار باهاش، دلتون بخواد یه قابلیت خاص یا یه ابزار جدید که خیلی به کارتون میآد بهش اضافه بشه ولی ببینید هیچ راهی نداره؟ دلیلش چیه؟ دلیلش اینه که فتوشاپ اصلاً یه سیستم متنباز نیست و شما به عنوان کاربران این برنامه نمیتونید تغییرات دلخواهتون رو برای رفع نیازها و مشکلات روزمرهتون در کداش ایجاد کنید. اگه فتوشاپ اپن سورس بود، شما میتونستید خیلی راحت کد اون ابزار جدید رو بنویسید، یه Commits به مدیران شرکت ادوبی بفرستید و اون ویژگی رو خودتون به برنامه اضافه کنید.
اما از اونجایی که ادوبی یه تیم برنامهنویسی اختصاصی داره، اونا شاید اصلاً متوجه یکسری از نیازهای خاص کاربران در کشورهای مختلف نشن یا اولویتهای دیگهای داشته باشن و به این زودیا سراغ حل کردنش نرن. پس مزیت بزرگ وردپرس نسبت به بقیه سیستمها اینه که در سیستمهای اختصاصی و متنبسته، فقط یک شرکت یا یه تیم محدود دارن همهچیز رو اداره میکنن. در اینجور سیستمها ممکنه مشکلات دقیقاً مشخص نشن، دیده نشن، یا اینکه اصلاً با سیاستهای اون شرکت جور در نیان و در نهایت دست مدیران و کاربران برای توسعه کاملاً بسته بمونه.
ولی در وردپرس اصلاً اینطوری نیست؛ ما کلی Contributions یا مشارکتکننده داریم و روزانه تعداد زیادی Commits ارسال میشه که سیستم رو زنده نگه میداره.
بررسی سیستم بیت کوین
یه سیستم دیگه که مثل وردپرس کاملاً متنبازه، بیتکوین هست که اگه در گوگل سرچش کنید میتونید کداش رو در گیت ببینید. یه فرد ناشناس به اسم ساتوشی چند سال پیش اومد بیتکوین رو نوشت و رایگان در اختیار مردم گذاشت. این فرد اجازه داد که مردم بتونن روی این سیستم تغییرات ایجاد کنن و بهبودش بدن تا روزبهروز بیتکوین به سیستم قویتری تبدیل بشه.
پس بیتکوین هم یه سیستم اپن سورسه که شما میتونید یه نسخه کپی ازش بگیرید، تغییرش بدید و مثلاً اسمش رو بذارید رضا کوین! البته اگه بتونید ارزشش رو پایین بیارید و به قیمتهای اولیه یا محدوده چند هزار دلاری سابق برسونید؛ چون الان ارزش هر سکهاش داره در کانال دهها هزار دلار (مثلاً ۶۰ تا ۷۰ هزار دلار) معامله میشه.
سیستم وردپرس هم دقیقاً همینطوریه؛ شما میتونید یه کپی کامل از وردپرس بگیرید، اسمش رو مثلاً بذارید رادپرس و به کل تغییرش بدید. در این حالت سازندههای وردپرس حتی نمیتونن از شما شکایت کنن! چرا؟ چون شما در واقع یه فورک (Fork) از سیستم وردپرس گرفتید و این قانون اصلی و پایه سیستمهای اپن سورس هست.
شما میتونید از این سیستمها کپی بگیرید و طبق سلیقه خودتون تغییرش بدید، اما به یه شرط: اینکه تغییراتی که ایجاد میکنید رو دوباره به صورت رایگان در اختیار دیگران هم بگذارید. اینها دقیقاً همون دلایلی هستند که ما به خاطرشون به وردپرس میگیم اپن سورس.
بررسی امنیت یک سیستم اپن سورس
خیلی از کاربران و مدیران سایتها همیشه یه دغدغه بزرگ دارن؛ اونا میگن: «وقتی کد یک سیستم کاملاً بازه و همه دارن میبیننش، پس هک کردنش هم راحتتر نیست؟ چطور میتونیم به امنیتش اعتماد کنیم؟» در نگاه اول شاید این حرف منطقی به نظر برسه، اما واقعیت دقیقاً برعکسه! در دنیای متنباز، امنیت به خاطر پنهانکاری تامین نمیشه، بلکه به خاطر شفافیت بالا شکل میگیره. وقتی کدها شفاف باشن، هزاران برنامهنویس و متخصص امنیت دارن همزمان اون رو بررسی میکنن و قبل از اینکه هکرها بخوان از یه باگ سوءاستفاده کنن، اون باگ کشف و برطرف میشه.
حالا راهکار چیه؟ چطوری خودمون امنیت یه ابزار اپن سورس رو بسنجیم؟ کافیه به میزان فعالیت کامیونتی یا همون انجمن اون نرمافزار نگاه کنیم. هر چقدر تعداد کاربران فعال بیشتر باشه و آپدیتهای منظمتری منتشر بشه، یعنی اون سیستم امنتره. مثلاً در گیتهاب میتونید بخش گزارش باگهای امنیتی رو چک کنید تا ببینید مدیران پروژه چقدر سریع به مشکلات واکنش نشون میدن.
درآمد شرکتهای اپن سورس
یه سوال گنگ و ابهامبرانگیز دیگه که برای خیلی از کاربران پیش میآد اینه که: «وقتی یه نرمافزار کاملاً رایگان و متنبازه و همه میتونن دانلودش کنن، پس سازندههاش چطوری پول درمیارن؟ اصلاً درآمدشون کجاست و چرا باید وقتشون رو روی این کار بذارن؟»
باید بدونید که شرکتها و توسعهدهندههای این پروژهها، از راههای هوشمندانه و راهکارمحور زیادی درآمد کسب میکنن. یکی از رایجترین روشها، ارائه خدمات پشتیبانی تخصصی، نصب و راهاندازی برای شرکتهای بزرگه؛ یعنی خود نرمافزار رایگانه، اما اگه خدمات VIP بخواید باید هزینه پرداخت کنید. روش دوم، مدل تجاری پرمیوم (Freemium) هست؛ یعنی هسته اصلی ابزار رایگانه، اما برای دسترسی به قابلیتهای پیشرفتهتر، افزونهها یا قالبهای خاص باید لایسنس بخرید (دقیقاً مثل اکوسیستم وردپرس). علاوه بر اینها، خیلی از این پروژهها از طریق دونیشن (حمایت مالی مالی) کاربران یا اسپانسرهای گردنکلفت دنیای فناوری تامین میشن.
معرفی معروفترین ابزارهای اپن سورس دنیا
شاید براتون جالب باشه اگه بدونید همین الان که دارید این مقاله رو میخونید، احتمالاً دارید از چندین ابزار اپن سورس استفاده میکنید بدون اینکه خودتون متوجه شده باشید! اگه سیستمهای متنباز نبودن، دنیای ما اصلاً جلو نمیرفت.
بیاین چندتا از معروفترینها رو با هم مرور کنیم. اول از همه، سیستمعامل اندروید روی گوشیهای موبایله که بر پایه لینوکس (که خودش پادشاه اپن سورسه) ساخته شده و دست شرکتها رو برای تغییرات باز گذاشته. دومی، مرورگر محبوب فایرفاکس (Firefox) هست که سالهاست به عنوان یه رقیب متنباز و امن برای مرورگرهای متنبسته کار میکنه. یا مثلاً نرمافزار معروف VLC Player که تقریباً روی سیستم همه ما برای پخش فیلم نصب شده. این ابزارها به خوبی نشون میدن که سیستمهای متنباز چقدر میتونن باکیفیت، پایدار و قدرتمند باشن و کاربران زیادی رو در کل دنیا به خودشون جذب کنن. شاد و پیروز باشید. 🙂
بسیار عالی
سپاس از توجه شما
سلام وقت بخیر
پلاگین های وردپرس هم میتونند اپن سورس باشن هم بسته؟ میشه گفت المنتور اپن سورسه دیگه.
مثلا پلاگین یوزر اپن سورسه یا نه؟
سلام
بله اپن سورس هستن