نحوه استقرار یک وب سایت در صفحات GitHub و AWS EC2: یک راهنمای گام به گام

توسط این نوع پیکربندی | بدون فناوری ابری
مقدمه
میزبانی یک وب سایت یک مهارت مهم برای توسعه دهندگان ، متخصصان امنیت سایبری و مهندسان ابر است. در این راهنما ، شما را از طریق دو روش پیاده می کنم:
✅ صفحات GitHub (برای وب سایت های استاتیک)
✅ AWS EC2 (برای برنامه های وب مقیاس پذیر)
در پایان ، شما یک وب سایت کاملاً مستقر خواهید داشت که بهترین شیوه های امنیتی اعمال می شود.
گزینه 1: میزبانی یک وب سایت استاتیک در صفحات GitHub
اگر وب سایت استاتیک دارید (HTML ، CSS ، JavaScript) ، صفحات github است روش سریع و رایگان برای استقرار آن.
مرحله 1: یک مخزن GitHub ایجاد کنید
- ورود به لوب و یک مخزن جدید (my-website) ایجاد کنید.
- آن را به دستگاه محلی خود کلون کنید:
git clone https://github.com/your-username/my-website.git
cd my-website
ایجاد و اضافه کردن HTML ، CSS و JavaScript پرونده ها
touch index.html style.css script.java
با استفاده از ویرایشگر نانو برای افزودن کد خود
nano (file name)
سپس کد خود را برای پرونده ای که باز کرده اید وارد کنید
ctrl+o برای صرفه جویی سپس فشار دهید “وارد کردن“
ctrl+x برای خروج
مرحله 2: صفحات GitHub را فعال کنید
- رفتن به تنظیمات → صفحات در مخزن شما
- زیر منبع، انتخاب کنید اصلی یا شعبهبشر
- تغییرات را ذخیره کنید و چند دقیقه صبر کنید.
مرحله 3: به وب سایت خود دسترسی پیدا کنید
وب سایت شما به صورت زنده خواهد بود:
https://your-username.github.io/my-website/
برای دامنه های سفارشی، پیکربندی سوابق CNAME در تنظیمات DNS شما.
گزینه 2: میزبانی یک وب سایت در AWS EC2 (برای وب سایت های پویا و کنترل کامل)
برای برنامه های پویا (node.js ، python ، php و غیره) ، AWS EC2 کنترل کامل بر روی سرور را فراهم می کند.
مرحله 1: یک نمونه EC2 را راه اندازی کنید
وارد AWS شوید → حرکت به EC2 → کلیک کنید نمونهبشر
انتخاب کردن آمازون لینوکس 2023 (یا اوبونتو 22.04 برای انعطاف پذیری).
نوع نمونه را انتخاب کنید:
• t2.micro (ردیف رایگان) برای میزبانی اساسی
• t3.small یا بالاتر برای تولید
پیکربندی گروه امنیتی:
• اجازه دهید HTTP (بندر 80) وت HTTPS (بندر 443)
• اجازه دهید SSH (بندر 22) (دسترسی به IP خود را برای امنیت محدود کنید)
کلیک کردن راه اندازی وت یک جفت کلید ایجاد کنید (بارگیری کنید .pem پرونده)
مرحله 2: به نمونه EC2 خود وصل شوید
- باز پایانه (لینوکس/مکوس) یا پودر (ویندوز).
- حرکت به پرونده PEM موقعیت مکانی و تنظیم مجوزهای صحیح:
chmod 400 my-key.pem
اتصال به EC2:
ssh -i my-key.pem ec2-user@your-ec2-public-ip
مرحله 3: یک سرور وب را نصب و پیکربندی کنید
برای آپاچی (برای سایت های PHP و استاتیک توصیه می شود)
به روزرسانی و نصب Apache:
sudo yum update -y
sudo yum install httpd -y
شروع و فعال کردن Apache:
sudo systemctl start httpd
sudo systemctl enable httpd
پرونده های وب سایت خود را در/var/www/html/بارگذاری کنید:
sudo mv * /var/www/html/
راه اندازی مجدد آپاچی:
sudo systemctl restart httpd
از طریق سایت خود دسترسی پیدا کنید http: // your-ec2-public-ip
برای چیز کوچک (توصیه می شود پروکسی و عملکرد معکوس)
نصب nginx:
sudo yum install nginx -y
NGINX را برای خدمت به سایت خود پیکربندی کنید:
sudo nano /etc/nginx/nginx.conf
ریشه را روی/var/www/html/تنظیم کنید
راه اندازی nginx:
sudo systemctl restart nginx
مرحله 4: وب سایت خود را با HTTPS (SSL/TLS) ایمن کنید
گزینه 1: SSL رایگان با Let's Encrypt
نصب کردن گواهی نامه:
sudo yum install epel-release -y
sudo yum install certbot python3-certbot-apache -y
یک گواهی SSL تولید کنید:
sudo certbot --apache
تمدید خودکار SSL:
sudo crontab -e
اضافه کنید: 0 0 1 * * Certbot تجدید -کویت
گزینه 2: از مدیر گواهی AWS (ACM) با بالانس بار استفاده کنید
- رفتن به مدیر گواهی AWS → درخواست گواهی عمومی
- آن را به یک تعادل بار برنامه (ALB) برای امنیت پیشرفته
مرحله 5: تنظیم دامنه سفارشی (اختیاری)
- یک دامنه بخرید مسیر 53 یا ارائه دهنده ای مانند Namecheap.
- ایجاد یک رکورد با اشاره به IP عمومی EC2 خود.
- در صورت استفاده خطوط ابری، DNS را با نقطه پایانی توزیع خود به روز کنید.
پایان
هر دو صفحات github وت AWS EC2 بسته به نیاز پروژه خود ، روشهای خوبی برای میزبانی وب سایت ها ارائه دهید.
✅ صفحات github برای بهترین است سایت های استاتیک ، اوراق بهادار شخصی و استقرار سریعبشر
✅ AWS EC2 ایده آل برای برنامه های وب پویا ، مقیاس پذیری و بار کار تولیدبشر
من به عنوان یک متخصص امنیت سایبری ، همیشه توصیه می کنم درخواست کنید بهترین روشهای امنیتی، از جمله:
• دسترسی SSH را هاردن (ورود به سیستم ریشه را غیرفعال کنید ، از تأیید اعتبار مبتنی بر کلید استفاده کنید).
• برای جلوگیری از حملات ، یک فایروال برنامه وب (AWS WAF) تنظیم کنیدبشر
• از ابزارهای نظارت مانند AWS CloudWatch و GuardDuty استفاده کنید برای تشخیص تهدیدها.
چه چیزی بعدی؟
من تخصص دارم امنیت ابر ، devsecops و آزمایش نفوذبشر برای بینش بیشتر در مورد من دنبال کنید بهترین روشهای امنیتی AWS ، اتوماسیون ابری و هک اخلاقی!
🚀 برای استقرار پروژه های ابری خود به کمک نیاز دارید؟ یک نظر را رها کنید!