نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04
LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.
LibreNMS یک سیستم نظارت بر شبکه منبع باز کاملاً برجسته است. آن استفاده می کند SNMP
برای به دست آوردن داده ها از دستگاه های مختلف. دستگاه های مختلفی در LibreNMS مانند Cisco ، Linux ، FreeBSD ، Juniper ، Brocade ، Foundry ، HP و موارد دیگر پشتیبانی می شوند. این مکانیسم از تأیید هویت چندگانه پشتیبانی می کند و از تأیید هویت دو عاملی پشتیبانی می کند. این سیستم دارای یک سیستم هشدار قابل تنظیم است که می تواند از طریق ایمیل ، IRC یا Slack به مدیر شبکه هشدار دهد.
برای این آموزش ، ما به nms.example.com
عنوان نام دامنه که به سمت نمونه Vultr اشاره شده است ، استفاده خواهیم کرد. لطفاً حتماً تمام وقایع نام دامنه را با نمونه واقعی جایگزین کنید.
سیستم پایه خود را با استفاده از راهنمای نحوه به روزرسانی اوبونتو 16.04 به روز کنید . پس از به روزرسانی سیستم ، نصب وابستگی ها را انجام دهید.
قسمت جلویی LibreNMS با PHP نوشته شده است ، بنابراین به نصب وب سرور و PHP نیاز خواهیم داشت. در این آموزش ، Nginx را به همراه PHP 7.2 نصب می کنیم تا حداکثر امنیت و کارایی را بدست آوریم.
Nginx را نصب کنید.
sudo apt -y install nginx
Nginx را شروع کنید و آن را فعال کنید تا به طور خودکار در بوت شروع شود.
sudo systemctl start nginx
sudo systemctl enable nginx
مخزن Remi را اضافه و فعال کنید ، زیرا مخزن apt پیش فرض دارای نسخه قدیمی تر PHP است.
sudo add-apt-repository --yes ppa:ondrej/php
sudo apt update
نسخه PHP 7.2 را به همراه ماژول های مورد نیاز LibreNMS نصب کنید.
sudo apt -y install php7.2 php7.2-cli php7.2-common php7.2-curl php7.2-fpm php7.2-gd php7.2-mysql php7.2-snmp php7.2-mbstring php7.2-xml php7.2-zip zip unzip
پرونده پیکربندی لود شده را در یک ویرایشگر باز کنید.
sudo nano /etc/php/7.2/fpm/php.ini
سطرهای زیر را پیدا کنید.
;cgi.fix_pathinfo=1
;date.timezone =
در عوض از این مقادیر Uncomment و از این مقادیر استفاده Asia/Kolkata
کنید و منطقه زمانی محلی خود را جایگزین کنید.
cgi.fix_pathinfo=0
date.timezone = Asia/Kolkata
همچنین باید با اجرای دستور زیر ، منطقه زمانی سیستم را تغییر دهید.
sudo ln -sf /usr/share/zoneinfo/Asia/Kolkata /etc/localtime
PHP-FPM را مجدداً راه اندازی کنید.
sudo systemctl restart php7.2-fpm
MariaDB یک چنگال منبع آزاد از MySQL است. مخزن MariaDB را به سیستم خود اضافه کنید ، زیرا مخزن پیش فرض اوبونتو شامل نسخه قدیمی MariDB است.
sudo apt-key adv --yes --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mariadb.biz.net.id/repo/10.2/ubuntu xenial main'
sudo apt update
MariaDB را نصب کنید. در حین نصب ، نصب کننده رمزعبور root
کاربر MySQL را درخواست می کند. یک رمزعبور قوی تهیه کنید.
sudo apt -y install mariadb-server
قبل از شروع استفاده از MariaDB ، باید پیکربندی را کمی تغییر دهیم. پرونده پیکربندی را باز کنید.
sudo nano /etc/mysql/conf.d/mariadb.cnf
کد زیر را به انتهای پرونده اضافه کنید.
[mysqld]
innodb_file_per_table=1
sql-mode=""
lower_case_table_names=0
MariaDB را مجدداً راه اندازی کنید و آن را فعال کنید تا به طور خودکار در زمان بوت شروع شود.
sudo systemctl restart mariadb.service
sudo systemctl enable mariadb.service
قبل از پیکربندی پایگاه داده ، باید نمونه MariaDB را تأمین کنید.
sudo mysql_secure_installation
از شما خواسته می شود رمز عبوری ریشه MariaDB را دریافت کرده و از شما خواسته شود root
پسورد را تغییر دهید . از آنجا که قبلاً root
در هنگام نصب یک رمزعبور قوی برای کاربر تنظیم کرده ایم ، با پاسخ دادن " N
" آن را پرش کنید . برای همه سؤالات دیگر ، "" پاسخ دهید Y
. سؤالاتی که پرسیده می شود ، خود توضیح است
به عنوان root وارد پوسته MySQL شوید.
mysql -u root -p
برای ورود به سیستم کاربر رمز ورود MariaDB رمز ورود خود را تهیه کنید. برای ایجاد یک بانک اطلاعاتی و یک کاربر پایگاه داده برای نصب LibreNMS سؤالات زیر را اجرا کنید.
CREATE DATABASE librenms CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';
FLUSH PRIVILEGES;
EXIT;
می توانید نام librenms
و نام کاربری داده را librenms
مطابق انتخاب خود جایگزین کنید. لطفاً مطمئن شوید که StrongPassword
به یک رمزعبور بسیار قوی تغییر دهید .
جدا از وابستگیهای فوق ، LibreNMS به وابستگی های بیشتری نیاز دارد.
sudo apt -y install fping git imagemagick jwhois mtr graphviz nmap python-memcache python-mysqldb rrdtool snmp snmpd whois composer
یک کاربر جدید غیر شخصی برای برنامه LibreNMS اضافه کنید.
sudo useradd librenms -d /opt/librenms -M -r
sudo usermod -aG www-data librenms
LibreNMS را می توان مستقیماً با کلون کردن مخزن Github آن نصب کرد.
cd /opt
sudo git clone https://github.com/librenms/librenms.git librenms
تغییر مالکیت.
sudo chown librenms:librenms -R /opt/librenms
وابستگی های PHP را نصب کنید.
cd /opt/librenms
sudo su librenms -c "composer install"
LibreNMS برای بسیاری از کارها به SNMP متکی است. از آنجا که ما قبلاً SNMP را نصب کرده ایم ، پرونده پیکربندی نمونه را در محل آن کپی کنید.
sudo cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf
پرونده پیکربندی را در ویرایشگر باز کنید.
sudo nano /etc/snmp/snmpd.conf
این خط را پیدا کنید
com2sec readonly default RANDOMSTRINGGOESHERE
متن را ویرایش کنید RANDOMSTRINGGOESHERE
و رشته جامعه را با هر رشته دلخواه خود جایگزین کنید. مثلا.
com2sec readonly default my-org
وقتی اولین دستگاه SNMP را اضافه می کنیم ، رشته را به خاطر بسپارید.
SNMP همچنین به اطلاعات مربوط به نسخه توزیع نیاز دارد. اسکریپت را بارگیری و نصب کنید تا نسخه توزیع را پیدا کنید.
sudo curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro
sudo chmod +x /usr/bin/distro
سرویس Daemon SNMP را شروع کنید و آن را فعال کنید تا به طور خودکار در زمان بوت شروع شود.
sudo systemctl enable snmpd
sudo systemctl restart snmpd
اکنون برای اجرای کارهای برنامه ریزی شده باید برخی از نوشته های crontab را اضافه کنید. یک پرونده کار cron جدید ایجاد کنید.
sudo cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms
سرویس Cremon Daemon را مجدداً راه اندازی کنید.
sudo systemctl restart cron
به logrotate
گونه ای تنظیم کنید که پرونده های ورود به سیستم به طور خودکار با گذشت زمان تازه شوند.
sudo cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms
در آخر ، مالکیت و مجوزهای مناسب را تعیین کنید.
sudo chown -R librenms:www-data /opt/librenms
sudo chmod g+w -R /opt/librenms
sudo setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs
sudo setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs
اگر اتصال با SSL رمزگذاری نشده باشد ، ورود و سایر اطلاعات ارسال شده از طریق رابط وب LibreNMS تضمین نمی شوند. ما Nginx را پیکربندی می کنیم تا از SSL تولید شده با SSL رایگان رمزگذاری کنیم.
مخزن Certbot را اضافه کنید.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Certbot را نصب کنید ، که برنامه مشتری برای Let Encrypt CA است.
sudo apt -y install certbot
توجه : برای به دست آوردن گواهینامه ها از Let Encrypt CA ، دامنه تولید شده برای صدور گواهینامه ها باید به سمت سرور هدایت شود. در این صورت ، تغییرات لازم را در سوابق DNS دامنه ایجاد کرده و منتظر انتشار DNS قبل از درخواست مجوز مجدد باشید. Certbot قبل از ارائه گواهینامه ها ، دامنه را بررسی می کند.
صدور گواهینامه SSL را ایجاد کنید.
sudo certbot certonly --webroot -w /var/www/html -d nms.example.com
گواهینامه های تولید شده احتمالاً در /etc/letsencrypt/live/nms.example.com/
دایرکتوری ذخیره می شوند . گواهینامه SSL ذخیره می شود fullchain.pem
و کلید خصوصی نیز به عنوان ذخیره می شود privkey.pem
.
اجازه دهید صدور گواهینامه رمزگذاری در مدت 90 روز منقضی شود ، از این رو توصیه می شود با استفاده از یک کار cron ، تمدید خودکار را برای گواهینامه ها تنظیم کنید.
پرونده کار cron را باز کنید.
sudo crontab -e
در انتهای پرونده خط زیر را اضافه کنید.
30 5 * * 1 /usr/bin/certbot renew --quiet
کار cron فوق هر دوشنبه ساعت 5:30 صبح به وقت محلی انجام می شود. اگر گواهی برای انقضا موقت باشد ، به طور خودکار تمدید می شود.
یک میزبان مجازی جدید ایجاد کنید.
sudo nano /etc/nginx/sites-available/librenms
پرونده را جمع کنید.
server {
listen 80;
server_name nms.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name nms.example.com;
ssl_certificate /etc/letsencrypt/live/nms.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/nms.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /opt/librenms/logs/librenms.nginx.access.log;
root /opt/librenms/html;
index index.php;
charset utf-8;
gzip on;
gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location /api/v0 {
try_files $uri $uri/ /api_v0.php?$query_string;
}
location ~ \.php {
include fastcgi.conf;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
nms.example.com
دامنه واقعی خود را در پیکربندی فوق جایگزین کنید.
پیکربندی تازه ایجاد شده را فعال کنید.
sudo ln -s /etc/nginx/sites-available/librenms /etc/nginx/sites-enabled/librenms
Nginx را مجدداً راه اندازی کنید.
sudo systemctl restart nginx
برای اتمام نصب ، https://nms.example.com
روی مرورگر مورد علاقه خود باز کنید. خواهید دید که شرایط مورد نیاز راضی است. اطلاعات بانک اطلاعاتی خود را تهیه کرده و یک حساب اداری جدید ایجاد کنید. پس از نصب ، پیامی برای اعتبار سنجی نصب دریافت خواهید کرد. روی پیوند کلیک کنید و با استفاده از حساب سرپرست وارد شوید. باید دید که همه چیز به جز " Poller
" Ok
"وضعیت" "دارد.
اکنون ، برای افزودن دستگاه ، روی پیوند کلیک کنید. در Add Device
رابط کاربری ، نام میزبان را به عنوان localhost تهیه کنید و همه چیز را همانطور که هست بگذارید. رشته جامعه خود را در زمینه اجتماع ارائه دهید. این دقیقاً همان رشته ای است که شما در snmpd.conf
طول پیکربندی SNMP ارائه کرده اید.
پس از افزودن دستگاه ، می توانید با رفتن به Devices
برگه "" جزئیات را مشاهده کنید. به همین ترتیب ، می توانید دستگاه های بیشتری را برای نظارت بر "در حدود ساعت" به برنامه LibreNMS اضافه کنید.
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 است. این برنامه یک رابط لعنتی مینیمالیستی و زیبا با نمای سلسله مراتب فهرست ارائه می دهد