وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

نصب Caddy Server روی اوبونتو

0 6
زمان لازم برای مطالعه: 5 دقیقه


TLS برای همه وب‌سایت‌ها و برنامه‌های وب در آنجا مهم است. اگر برنامه ای وجود دارد که از HTTP یا ایمیل استفاده می کند، به TLS نیاز دارد. TLS تضمین می کند حریم خصوصی ، صداقت و اصالت از محتوای شما با مقامات گواهی رایگان TLS مانند Let’s Encrypt و CloudFlare، TLS بیشتر به یک هنجار تبدیل می شود تا یک مورد خاص. با این حال، تبدیل روی TLS اغلب بسیار پیچیده است process. همچنین پیامدهای امنیتی گسترده ای دارد، اگر تنظیمات اشتباه انجام شود، یا خدای نکرده، به طور تصادفی کلید TLS خصوصی خود را لو می دهید. برای کاهش برخی از این خطرات و همچنین برای آسان کردن زندگی ما، یک وب سرور جدید در شهر وجود دارد. Caddy به HTTP/2 صحبت می کند و با TLS فعال است. این بدان معنی است که شما مجبور نیستید به صورت دستی HTTP را به تغییر مسیرهای HTTPS تنظیم کنید یا نگران مجموعه های رمز گالیزیونی باشید که قبلاً هرگز ندیده اید.

با وب سرور Caddy، HTTPS دریافت می کنید یا هیچ. پس بیایید ببینیم چگونه می توانید Caddy را نصب کنید روی اوبونتو را پیکربندی کنید تا به برنامه وب شما سرویس دهد. ما گواهینامه های TLS خود را از LetsEncrypt دریافت خواهیم کرد.

برپایی

فرض کنید یک VPS با آدرس IP دارید: 10.20.30.40 و یک زیردامنه FQDN.example.com که یک رکورد است به این IP اشاره می کند.
VPS نسخه سرور Ubuntu 18.04 LTS را اجرا می کند و تنظیمات زیر به عنوان root کاربر.

مرحله 1: نصب وب سرور Caddy

Caddy در Go نوشته شده است و می تواند به عنوان یک باینری اجرایی مستقل اجرا شود. با این حال، پلاگین‌های مختلفی وجود دارد که می‌توانید برای سرورهای DNS خاص و غیره در آن بسازید.

برای دریافت باینری خود به آنها مراجعه کنید دانلودهای رسمی page و تمام پلاگین ها و تله متری مورد نیاز خود را انتخاب کنید. در زیر آن یک خواهد بود bash دستور دانلود و قرار دادن باینری سرور caddy در محل مناسب. مانند root کاربر، اجرا کنید:

$ حلقه https://getcaddy.com | bash -s شخصی

هنگامی که این کار انجام شد، می‌توانیم باینری را با اجرای:

$ کجاست کیدی
کیدی: /usr/محلی/صندوقچه/کیدی

اگر زمانی نیاز به حذف سرور یا به روز رسانی آن با فایل های اجرایی جدیدتر داشته باشید، اکنون می دانید کجا باید جستجو کنید.

مرحله 2: تست وب سایت شما

اگر وب سایت ندارید، فقط یک پوشه خالی ایجاد کنید و دستورات را در آنجا اجرا کنید. ممکن است با ارور 404 مواجه شوید روی مرورگر شما اما راه اندازی سرور همچنان قابل آزمایش است. اگر وب‌سایتی دارید به دایرکتوری که webroot وب‌سایت شما در آن قرار دارد می‌روید. به عنوان یک مثال معمولی، من آن را انتخاب خواهم کرد /var/www/mysite به عنوان مثال با index.html زیر در داخل آن ذخیره شده است.

/var/www/mysite/index.html

<html>
<سر>
<عنوان>این page توسط Caddy Server ارائه می شود</عنوان>
</سر>
<بدن>

پیشنهاد می‌کنیم بخوانید:  روش شبیه سازی اندروید روی اوبونتو 22.04 گام به گام

<h3>این page توسط Caddy Server ارائه می شود</h3>
<پ>این یک پاراگراف است.</پ>

</بدن>
</html>

این برای شروع کافی است. حالا در همان دایرکتوری این index.html page، دستور زیر را اجرا کنید:

کیدی دلار
فعال کردن ویژگی های حریم خصوصی… انجام شد.
http://:2015

اخطار: محدودیت 1024 توصیفگر فایل برای سرورهای تولیدی بسیار کم است. حداقل 8192 توصیه می شود. با «ulimit -n 8192» رفع کنید.

کادی را در این حالت در حال اجرا بگذارید.

برای تست این مورد می توانید به IP عمومی سرور خود در پورت شماره 2015 بروید: http://10.20.30.40:2015 مطمئن شوید که فایروال شما این پورت را مسدود نمی کند.

و خواهید دید که index.html به طور خودکار ارائه می شود. این از سنت قدیمی پیروی می کند که اولین وب سایت است page ایندکس است که اکثر وب سرورها مانند Nginx، Apache و حتی Caddy به عنوان اولین سرور از آن استفاده می کنند. page، حتی زمانی که شما این را مشخص نمی کنید page با استفاده از /index.html در انتهای URL.

مرحله 3: راه اندازی HTTPS

اکنون که تأیید کردید که وب‌سایت شما واقعاً با Caddy کار می‌کند و می‌توان با آن سرویس کرد، زمان راه‌اندازی HTTPS فرا رسیده است. برای انجام این کار می توانید از رابط خط فرمان استفاده کنید یا از یک فایل پیکربندی به نام Caddyfile استفاده کنید. ابتدا از خط فرمان استفاده می کنیم.

در همان دایرکتوری وب سایت خود، دستور زیر را اجرا کنید:

کیدی دلار -host subdomain.example.com
## برای اولین بار از شما آدرس ایمیل شما را می خواهد تا بتوانید دریافت کنید

اعلان تمدید گواهی از LetsEncrypt

خروجی:

فعال کردن ویژگی های حریم خصوصی…

سایت های شما به طور خودکار از طریق HTTPS با استفاده از Let’s Encrypt ارائه می شوند.
با ادامه، با قرارداد مشترک Let’s Encrypt در آدرس زیر موافقت می کنید:
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf
لطفا آدرس ایمیل خود را برای تایید موافقت و اطلاع رسانی وارد کنید
در صورت بروز مسائل می توانید آن را خالی بگذارید، اما ما آن را توصیه نمی کنیم.
آدرس ایمیل: john@mail.com

خودشه! وب سایت شما اکنون راه اندازی شده است. می‌توانید از subdomain.example.com دیدن کنید و به‌طور خودکار به HTTPS بدون شماره پورت سفارشی یا تفاوت‌های ظریف دیگر هدایت می‌شود.

به همین راحتی است! می توانید CTRL+C را برای متوقف کردن سرور، دفعه بعد که فقط از این گواهی استفاده مجدد می کند.

مرحله 4: نوشتن Caddyfile

روش فوق برای موارد استفاده آزمایشی که فقط در حال آزمایش آب هستید خوب است. اما اگر یک وب سرور در حال اجرا به عنوان پس زمینه می خواهید process شما باید یک Caddyfile بنویسید و به وب سرور بگویید که از این پیکربندی برای اجرای سرور شما استفاده کند.

پیشنهاد می‌کنیم بخوانید:  روش فعال کردن دسکتاپ از راه دور روی Ubuntu Desktop 22.04 LTS و دسترسی به آن از ویندوز

این ساده ترین مثال برای همان وب سایتی است که در بالا میزبانی کردیم:

subdomain.example.com {
root /var/www/مکان من
}

را root دستورالعمل به وب سرور می گوید که وب سایت در کجا قرار دارد. شما نمی توانید از سمت مشتری از این دایرکتوری خارج شوید. به طور کلی ایده خوبی است که فایل caddy خود را در هر جایی غیر از داخل این وبروت قرار دهید. می توانید آن را در پوشه /etc/ یا پوشه اصلی خود قرار دهید. به عنوان مثال، اگر فایل در /etc/Caddyfile ایجاد شده باشد، می توانید با اجرای دستور به سرور بگویید که از این پیکربندی استفاده کند:

$ کیدی -conf /و غیره/Caddyfile

دستورالعمل های متعددی وجود دارد که می توانید از آنها برای تنظیم دقیق سرور خود استفاده کنید. شما می توانید ورود به سیستم، فشرده سازی، پراکسی معکوس، و غیره را فعال کنید اسناد رسمی مکان خوبی برای شروع به جستجوی دستورالعمل های مربوط به مورد استفاده شما است. در اینجا مثال دیگری وجود دارد که در آن دو وب سایت با دو نام دامنه متفاوت ارائه می شوند:

subdomain.example.com {
root /var/www/مکان من
}

subdomain2.example.com {
root /var/www/mysite2
gzip

ورود به سیستم ../access.log
}

دستورالعمل gzip فشرده سازی را فعال می کند، اگر مشتری از آن پشتیبانی کند. این کار را بهبود می بخشد زیرا داده های بیشتری را می توان در پهنای باند و بازه زمانی مشابه ارسال کرد. ورود به سیستم به اشکال زدایی و پیگیری فعالیت شبکه کمک می کند.

نتیجه

بزرگترین نقطه قوت وب سرور Caddy، نوشتن و خواندن فایل پیکربندی آسان و انعطاف پذیری آن در چندین پلتفرم است. با این حال، به دلیل مجوزهای عجیب و غریب، سرور کاملاً منبع باز نیست. سورس کد منبع باز است و شما می توانید کاملاً خودتان آن را کامپایل کنید و از فایل اجرایی به دست آمده استفاده کنید، اما باینری که از سایت رسمی دریافت می کنید قرار نیست بدون مجوز مناسب برای مقاصد تجاری استفاده شود.

این ما را به موضوع پیچیدگی‌ها بازمی‌گرداند که در آن به جای پرداختن به فایل‌های پیکربندی، باید با کامپایل کد منبع سروکار داشته باشیم که هدف از استفاده آسان سرور وب را شکست می‌دهد. اگر نظری دارید به ما اطلاع دهید روی Caddy، و اگر هر یک از وب سایت های شما اجرا شود روی بالای آن

برای نگارش بخشهایی از این متن ممکن است از ترجمه ماشینی یا هوش مصنوعی GPT استفاده شده باشد
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم

زمان انتشار: 1403-01-05 14:17:05

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید