Ubuntu üzerinde Django uygulamanızı çalıştırmak ve bu uygulamayı SSL sertifikaları ile korumak için aşağıdaki adımları izleyebilirsiniz. Bu rehberde, “sistemkosesi.com.tr” alan adı üzerinde SSL ile çalışan bir Django uygulaması için adım adım talimatlar yer alacaktır.
Not: Bu rehber, Django uygulamanızın ve projenizin spesifik ihtiyaçlarına bağlı olarak ayarlanmalıdır.
Adım 1: Sunucu Hazırlığı
Ubuntu sunucusunu güncelleyin ve gerekli paketleri yükleyin:
sudo apt update
sudo apt upgrade
sudo apt install python3-pip python3-venv ngianx
Adım 2: Django Uygulamanızı Yükleyin ve Ayarlayın
Django uygulamanızı sunucuya kopyalayın ve bir sanal ortamda çalıştırmak için bir sanal çevre oluşturun:
python3 -m venv myenv
source myenv/bin/activate
cd /path/to/your/django/app
pip install -r requirements.txt
Django ayarlarınızı yapılandırın (örneğin, settings.py) ve veritabanı gibi bağlantıları güncelleyin.
Gunicorn’u yükleyin ve Django uygulamanızı çalıştırın:
pip install gunicorn
gunicorn –workers 3 myapp.wsgi:application
myapp kısmını kendi Django uygulamanızın adı ile değiştirin.
Adım 3: Nginx Konfigürasyonu
Nginx sitesini oluşturun:
sudo nano /etc/nginx/sites-available/sistemkosesi
Aşağıdaki örnekte, “sistemkosesi.com.tr” için bir Nginx konfigürasyonu bulunmaktadır:
nginx
server {
listen 80;
server_name sistemkosesi.com.tr www.sistemkosesi.com.tr;
location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {
root /path/to/your/static/files;
}
location / {
include proxy_params;
proxy_pass http://unix:/path/to/your/socket.sock;
}
}
Bu konfigürasyonu kendi ihtiyaçlarınıza göre düzenleyin ve /path/to/your/socket.sock kısmını Gunicorn soketi ile değiştirin.
Nginx sitesini etkinleştirin:
sudo ln -s /etc/nginx/sites-available/sistemkosesi /etc/nginx/sites-enabled
Adım 4: SSL Sertifikası Oluşturma ve Ayarları
Certbot aracını kullanarak Let’s Encrypt tarafından sağlanan ücretsiz bir SSL sertifikası oluşturun ve ayarlayın:
sudo certbot –nginx -d sistemkosesi.com.tr -d www.sistemkosesi.com.tr
Bu komut sizi sertifika oluşturma süreci boyunca yönlendirecektir. SSL sertifikalarını otomatik olarak Nginx yapılandırma dosyasına ekleyecektir.
Adım 5: Güvenlik Ayarları
Güvenlik için, sadece HTTPS trafiğine izin vermek için aşağıdaki komutları kullanarak ufw (Uncomplicated Firewall) kullanın:
sudo ufw allow ‘Nginx Full’
Adım 6: Nginx ve Gunicorn’u Yeniden Başlatma
sudo systemctl restart nginx
Not: SSL sertifikalarınızın düzgün çalıştığından ve sürekli olarak güncellendiğinden emin olun. Ayrıca Django uygulamanızın ve sunucunuzun güvenliğini sağlamak için gereken güvenlik önlemlerini alın.
Artık Django web uygulamanız, “sistemkosesi.com.tr” alan adı üzerinde HTTPS üzerinden güvende bir şekilde çalışmaktadır. Bu rehberdeki adımları takip ederek, Django uygulamanızı SSL ile çalıştırabilirsiniz.