نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04
LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.
TLS 1.3 نسخه ای از پروتکل Transport Layer Security (TLS) است که در سال 2018 به عنوان استاندارد پیشنهادی در RFC 8446 منتشر شد . این سیستم امنیت و عملکرد را نسبت به پیشینیان خود بهبود می بخشد.
این راهنما نحوه فعال سازی TLS 1.3 را با استفاده از سرور وب Nginx در اوبونتو 18.04 LTS نشان می دهد.
1.13.0
یا بیشتر.1.1.1
یا بیشتر.A
/ AAAA
/ CNAME
DNS به درستی پیکربندی شده برای دامنه شما.نسخه اوبونتو را بررسی کنید.
lsb_release -ds
# Ubuntu 18.04.1 LTS
non-root
با sudo
دسترسی یک حساب کاربری جدید ایجاد کنید و به آن تغییر دهید.
adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe
توجه: با نام کاربری خود جایگزین johndoe
کنید.
منطقه زمانی را تنظیم کنید.
sudo dpkg-reconfigure tzdata
اطمینان حاصل کنید که سیستم شما به روز است.
sudo apt update && sudo apt upgrade -y
نصب build-essential
، socat
و git
بسته.
sudo apt install -y build-essential socat git
Acme.sh را بارگیری و نصب کنید .
sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail [email protected]
cd ~
source ~/.bashrc
نسخه را بررسی کنید.
acme.sh --version
# v2.8.0
گواهینامه های RSA و ECDSA را برای دامنه خود بدست آورید.
# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --ocsp-must-staple --keylength 2048
# ECDSA
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --ocsp-must-staple --keylength ec-256
توجه: دستورات را با نام دامنه خود جايگزين example.com
کنيد.
بعد از اجرای دستورات قبلی ، گواهینامه ها و کلیدهای شما در دسترس خواهند بود:
/etc/letsencrypt/example.com
فهرست./etc/letsencrypt/example.com_ecc
فهرست.Nginx پشتیبانی از TLS 1.3 را در نسخه 1.13.0 اضافه کرد. در اکثر توزیع های لینوکس ، از جمله اوبونتو 18.04 ، Nginx با نسخه قدیمی OpenSSL ساخته شده است ، که از TLS 1.3 پشتیبانی نمی کند. در نتیجه ، ما به ساخت Nginx دلخواه خود وابسته به نسخه OpenSSL 1.1.1 نیاز داریم ، که شامل پشتیبانی از TLS 1.3 است.
آخرین نسخه اصلی کد منبع Nginx را بارگیری کرده و آن را استخراج کنید.
wget https://nginx.org/download/nginx-1.15.5.tar.gz && tar zxvf nginx-1.15.5.tar.gz
کد منبع OpenSSL 1.1.1 را بارگیری کرده و آن را استخراج کنید.
# OpenSSL version 1.1.1
wget https://www.openssl.org/source/openssl-1.1.1.tar.gz && tar xzvf openssl-1.1.1.tar.gz
همه .tar.gz
پرونده ها را حذف کنید ، زیرا دیگر به آنها نیازی نخواهید داشت.
rm -rf *.tar.gz
وارد فهرست منبع Nginx شوید.
cd ~/nginx-1.15.5
Nginx را پیکربندی ، کامپایل و نصب کنید. به خاطر سادگی ، ما فقط ماژول های اساسی را که برای کار TLS 1.3 لازم است ، کامپایل می کنیم. اگر به ساخت کامل Nginx احتیاج دارید ، می توانید این راهنمای Vultr را در مورد تلفیق Nginx بخوانید .
./configure --prefix=/etc/nginx \
--sbin-path=/usr/sbin/nginx \
--modules-path=/usr/lib/nginx/modules \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--pid-path=/var/run/nginx.pid \
--lock-path=/var/run/nginx.lock \
--user=nginx \
--group=nginx \
--build=Ubuntu \
--builddir=nginx-1.15.5 \
--http-log-path=/var/log/nginx/access.log \
--http-client-body-temp-path=/var/cache/nginx/client_temp \
--http-proxy-temp-path=/var/cache/nginx/proxy_temp \
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp \
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp \
--http-scgi-temp-path=/var/cache/nginx/scgi_temp \
--with-compat \
--with-http_ssl_module \
--with-http_v2_module \
--with-openssl=../openssl-1.1.1 \
--with-openssl-opt=no-nextprotoneg \
--without-http_rewrite_module \
--without-http_gzip_module
make
sudo make install
گروه و کاربر سیستم Nginx ایجاد کنید.
sudo adduser --system --home /nonexistent --shell /bin/false --no-create-home --disabled-login --disabled-password --gecos "nginx user" --group nginx
نماد لینک /usr/lib/nginx/modules
به /etc/nginx/modules
فهرست. etc/nginx/modules
یک مکان استاندارد برای ماژول های Nginx است.
sudo ln -s /usr/lib/nginx/modules /etc/nginx/modules
دایرکتوری های حافظه نهان Nginx ایجاد کرده و مجوزهای مناسب را تنظیم کنید.
sudo mkdir -p /var/cache/nginx/client_temp /var/cache/nginx/fastcgi_temp /var/cache/nginx/proxy_temp /var/cache/nginx/scgi_temp /var/cache/nginx/uwsgi_temp
sudo chmod 700 /var/cache/nginx/*
sudo chown nginx:root /var/cache/nginx/*
نسخه Nginx را بررسی کنید.
sudo nginx -V
# nginx version: nginx/1.15.5 (Ubuntu)
# built by gcc 7.3.0 (Ubuntu 7.3.0-27ubuntu1~18.04)
# built with OpenSSL 1.1.1 11 Sep 2018
# TLS SNI support enabled
# configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx . . .
# . . .
پرونده واحد systemd Nginx را ایجاد کنید.
sudo vim /etc/systemd/system/nginx.service
پرونده را با پیکربندی زیر جمع کنید.
[Unit]
Description=nginx - high performance web server
Documentation=https://nginx.org/en/docs/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t -c /etc/nginx/nginx.conf
ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID
[Install]
WantedBy=multi-user.target
Nginx را شروع و فعال کنید.
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
درست conf.d
، sites-available
و sites-enabled
دایرکتوری ها در /etc/nginx
دایرکتوری.
sudo mkdir /etc/nginx/{conf.d,sites-available,sites-enabled}
اجرا sudo vim /etc/nginx/nginx.conf
و اضافه کردن دو دستورالعمل زیر را به انتهای فایل، درست قبل از بسته شدن }
.
. . .
. . .
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*.conf;
}
پرونده و خروج با صرفه جویی در :+ W+ Q.
اکنون که Nginx را با موفقیت ساختیم ، آماده هستیم تا آن را پیکربندی کنیم تا شروع به استفاده از TLS 1.3 در سرور خود کنیم.
sudo vim /etc/nginx/conf.d/example.com.conf
پرونده را با پیکربندی زیر اجرا و جمع کنید.
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;
# ECDSA
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
}
پرونده و خروج با صرفه جویی در :+ W+ Q.
به TLSv1.3
پارامتر جدید این ssl_protocols
بخشنامه توجه کنید. این پارامتر برای فعال کردن TLS 1.3 ضروری است.
پیکربندی را بررسی کنید.
sudo nginx -t
بارگیری مجدد Nginx
sudo systemctl reload nginx.service
برای تأیید TLS 1.3 ، می توانید از ابزار dev مرورگر یا سرویس آزمایشگاه SSL استفاده کنید. تصاویر زیر برگه امنیتی Chrome را نشان می دهد که نشان می دهد TLS 1.3 در حال کار است.
تبریک می گویم! شما با موفقیت TLS 1.3 را در سرور وب Ubuntu 18.04 خود فعال کرده اید.
LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.
با استفاده از یک سیستم متفاوت؟ Anchor CMS یک سیستم مدیریت محتوا (CMS) بسیار ساده و بسیار سبک ، بسیار آزاد و آزاد است.
NFS یک سیستم فایل مبتنی بر شبکه است که به رایانه ها اجازه می دهد تا از طریق شبکه رایانه ای به فایلها دسترسی پیدا کنند. این راهنما توضیح می دهد که چگونه می توانید پوشه ها را روی NF قرار دهید
هنگام راه اندازی سرور جدید لینوکس ، به روزرسانی سیستم های هسته و سایر بسته ها تا آخرین نسخه پایدار یک روش توصیه شده است. در این مقاله
با استفاده از یک سیستم متفاوت؟ Matomo (سابقا پیویک) یک بستر تحلیلی منبع باز است ، یک جایگزین باز برای Google Analytics. منبع Matomo میزبان o
TeamTalk یک سیستم کنفرانس است که به کاربران امکان می دهد مکالمات صوتی / تصویری با کیفیت بالا ، چت متنی ، انتقال فایل ها و صفحه های به اشتراک بگذارند. من
Vultr یک ویژگی را فراهم می کند که به شما امکان می دهد با ایجاد یک نمونه جدید ، کلیدهای SSH را از قبل نصب کنید. این اجازه می دهد تا به کاربر root دسترسی داشته باشید ، با این حال ، th
با استفاده از یک سیستم متفاوت؟ NodeBB یک نرم افزار انجمن مبتنی بر Node.js است. از سوکت های وب برای تعامل فوری و اعلامیه های زمان واقعی استفاده می کند. NodeB
ZNC یک پیشرانه پیشرفته شبکه IRC است که تمام وقت بهم متصل می شود تا مشتری IRC بتواند بدون از دست دادن جلسه گپ قطع یا وصل شود.
رنجر یک مدیر فایل مبتنی بر خط فرمان است که دارای کلیدهای اتصال VI است. این برنامه یک رابط لعنتی مینیمالیستی و زیبا با نمای سلسله مراتب فهرست ارائه می دهد