0% found this document useful (0 votes)
2 views

message

This document outlines the steps to set up a web application using Ctrlpanel, including creating a directory, cloning the repository, configuring MySQL, and setting up Nginx with SSL. It details the creation of a user and database for Ctrlpanel, as well as the necessary server configuration for handling HTTP and HTTPS requests. Additionally, it includes commands for testing the Nginx configuration and installing the Certbot for SSL certificate management.

Uploaded by

Lakshmi Bhaskar
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

message

This document outlines the steps to set up a web application using Ctrlpanel, including creating a directory, cloning the repository, configuring MySQL, and setting up Nginx with SSL. It details the creation of a user and database for Ctrlpanel, as well as the necessary server configuration for handling HTTP and HTTPS requests. Additionally, it includes commands for testing the Nginx configuration and installing the Certbot for SSL certificate management.

Uploaded by

Lakshmi Bhaskar
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 3

mkdir -p /var/www/ctrlpanel && cd /var/www/ctrlpanel

-----------------------

git clone https://github.com/Ctrlpanel-gg/panel.git ./

--------------------------

mysql -u root -p

--------------------------

CREATE USER 'ctrlpaneluser'@'127.0.0.1' IDENTIFIED BY 'TON_MOT_DE_PASSE';

------------------------------

CREATE DATABASE ctrlpanel;

--------------------------------

GRANT ALL PRIVILEGES ON ctrlpanel.* TO 'ctrlpaneluser'@'127.0.0.1';

---------------------------------

FLUSH PRIVILEGES;

---------------------------------

EXIT;

--------------------------------

cat /etc/nginx/sites-enabled/ctrlpanel.conf

-------

rm /etc/nginx/sites-available/ctrlpanel.conf

nano /etc/nginx/sites-available/ctrlpanel.conf

------

server {
# Replace YOUR.DOMAIN.HERE with your domain.
listen 80;
server_name client.king-host.fr;
return 301 https://$server_name$request_uri;
}

server {
# Replace client.king-host.fr with your domain.
listen 443 ssl http2;
server_name client.king-host.fr;

root /var/www/ctrlpanel/public;
index index.php;

access_log /var/log/nginx/ctrlpanel.app-access.log;
error_log /var/log/nginx/ctrlpanel.app-error.log error;

# Allow large upload sizes


client_max_body_size 100m;
client_body_timeout 120s;

sendfile off;

# SSL Configuration - Replace any YOUR.DOMAIN.HERE with the domain you're using
for your Ctrlpanel setup.
ssl_certificate /etc/letsencrypt/live/client.king-host.fr/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/client.king-host.fr/privkey.pem;
ssl_session_cache shared:SSL:10m;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-
ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-
POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-
SHA384";
ssl_prefer_server_ciphers on;

# See https://hstspreload.org/ before uncommenting the line below.


# add_header Strict-Transport-Security "max-age=15768000; preload;";
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header X-Robots-Tag none;
add_header Content-Security-Policy "frame-ancestors 'self'";
add_header X-Frame-Options DENY;
add_header Referrer-Policy same-origin;

location / {
try_files $uri $uri/ /index.php?$query_string;
}

location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param PHP_VALUE "upload_max_filesize = 100M \n post_max_size=100M";
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param HTTP_PROXY "";
fastcgi_intercept_errors off;
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
include /etc/nginx/fastcgi_params;
}

location ~ /\.ht {
deny all;
}
}
--------

sudo ln -s /etc/nginx/sites-available/ctrlpanel.conf
/etc/nginx/sites-enabled/ctrlpanel.conf

----

sudo nginx -t

----

certbot certonly --nginx -d client.king-host.fr

----

sudo apt remove python3-certbot-nginx

---

sudo apt remove python3-certbot-nginx

---

sudo apt install python3-certbot-nginx

-----

You might also like