ตั้งค่า NFS Share บน Debian
NFS เป็นระบบไฟล์บนเครือข่ายที่อนุญาตให้คอมพิวเตอร์เข้าถึงไฟล์ผ่านเครือข่ายคอมพิวเตอร์ คู่มือนี้จะอธิบายวิธีการเปิดเผยโฟลเดอร์ผ่าน NF
Wiki.jsเป็นแหล่งฟรีและเปิดแอปพลิเควิกิพีเดียที่ทันสมัยที่สร้างขึ้นบนNode.js , GitและMarkdown รหัสที่มา Wiki.js เป็นเจ้าภาพสาธารณะบนGithub คู่มือนี้จะแสดงวิธีการติดตั้ง Wiki.js บนอินสแตนซ์ Ubuntu 18.04 LTS Vultr ใหม่โดยใช้ Node.js, MongoDB, PM2, Nginx, Git และ Acme.sh
ข้อกำหนดในการเรียกใช้ Wiki.js และทำตามคู่มือนี้ให้เสร็จสิ้นมีดังนี้:
A
/ AAAA
บันทึกการตั้งค่าตรวจสอบเวอร์ชั่นของ Ubuntu
lsb_release -ds
# Ubuntu 18.04.4 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
ติดตั้งแพ็คเกจที่จำเป็น
sudo apt install -y build-essential apt-transport-https
Git 2.7.4 มาติดตั้งไว้แล้วบน Ubuntu Server edition ดังนั้นเราไม่จำเป็นต้องติดตั้ง หากคุณต้องการติดตั้งเวอร์ชันที่ใหม่กว่าคุณสามารถใช้ PPA ของบุคคลที่สามหรือรวบรวม Git รุ่นล่าสุดจากแหล่งที่มา
คุณสามารถตรวจสอบเวอร์ชัน Git ที่ติดตั้งอยู่ในปัจจุบันได้โดยการเรียกใช้:
git --version
# git version 2.7.4
หากคุณต้องการติดตั้งซอฟต์แวร์ Git เวอร์ชันใหม่คุณสามารถใช้สิ่งต่อไปนี้
# Remove existing git package
sudo apt remove -y git
sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:git-core/ppa
sudo apt update && sudo apt upgrade -y
sudo apt install -y git
ตรวจสอบรุ่น Git
git --version
# git version 2.17.0
ติดตั้ง Node.js โดยใช้ที่เก็บ NodeSource APT สำหรับ Node.js
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt install -y nodejs
ตรวจสอบรุ่น Node.js และ NPM
node -v && npm -v
# v8.11.2
# 5.6.0
เราจะใช้คลังเก็บ MongoDBอย่างเป็นทางการซึ่งได้รับการปรับปรุงให้ทันสมัยด้วยการเปิดตัว MongoDB รุ่นใหญ่และรุ่นรองล่าสุด
ติดตั้ง MongoDB Community Edition
sudo apt install -y mongodb
ตรวจสอบเวอร์ชั่น
mongo --version | head -n 1 && mongod --version | head -n 1
# MongoDB shell version v3.6.3
# db version v3.6.3
ติดตั้ง Nginx
wget https://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
rm nginx_signing.key
sudo -s
printf "deb https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\ndeb-src https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit
sudo apt update
sudo apt install -y nginx
ตรวจสอบเวอร์ชั่น
sudo nginx -v
# nginx version: nginx/1.15.0
เปิดใช้งานและเริ่ม Nginx
sudo systemctl enable nginx.service
sudo systemctl start nginx.service
กำหนดค่า Nginx เป็น reverse proxy สำหรับแอปพลิเคชั่น Wiki.js
รันsudo vim /etc/nginx/conf.d/wiki.js.conf
และเติมด้วยการกำหนดค่าพร็อกซีย้อนกลับพื้นฐานด้านล่าง
server {
listen [::]:80;
listen 80;
server_name wiki.example.com;
root /usr/share/nginx/html;
charset utf-8;
client_max_body_size 50M;
location /.well-known/acme-challenge/ {
allow all;
}
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_next_upstream error timeout http_502 http_503 http_504;
}
}
สิ่งเดียวที่คุณต้องเปลี่ยนในการตั้งค่าด้านบนคือserver_name
คำสั่งและคำสั่งที่อาจเกิดขึ้นproxy_pass
หากคุณตัดสินใจที่จะกำหนดค่าพอร์ตอื่นนอกเหนือจาก3000
นี้ Wiki.js ใช้พอร์ต3000
ตามค่าเริ่มต้น
ตรวจสอบการกำหนดค่า
sudo nginx -t
โหลดซ้ำ Nginx
sudo systemctl reload nginx.service
การรักษาความปลอดภัย wiki ของคุณด้วยHTTPS
ไม่จำเป็น แต่มันจะรักษาความปลอดภัยการเข้าชมเว็บไซต์ของคุณ Acme.sh เป็นซอฟต์แวร์เชลล์ unix บริสุทธิ์สำหรับการรับใบรับรอง SSL จาก Let's Encrypt โดยไม่ต้องพึ่งพาศูนย์
ดาวน์โหลดและติดตั้ง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 ~
ตรวจสอบเวอร์ชั่น
/etc/letsencrypt/acme.sh --version
รับใบรับรอง RSA และ ECDSA สำหรับwiki.example.com
โดเมน / ชื่อโฮสต์
# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt -d wiki.example.com --webroot /usr/share/nginx/html --reloadcmd "sudo systemctl reload nginx.service" --accountemail [email protected] --ocsp-must-staple --keylength 2048
# ECDSA/ECC P-256
sudo /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt -d wiki.example.com --webroot /usr/share/nginx/html --reloadcmd "sudo systemctl reload nginx.service" --accountemail [email protected] --ocsp-must-staple --keylength ec-256
หลังจากเรียกใช้คำสั่งข้างต้นใบรับรองและคีย์ของคุณจะอยู่ใน:
/etc/letsencrypt/wiki.example.com
ไดเร็กทอรี/etc/letsencrypt/wiki.example.com_ecc
ไดเรกทอรีหลังจากได้รับใบรับรองจาก Let's Encrypt เราต้องกำหนดค่า Nginx เพื่อใช้งาน
รันsudo vim /etc/nginx/conf.d/wiki.js.conf
อีกครั้งและกำหนดค่า Nginx เป็นHTTPS
พร็อกซีย้อนกลับ
server {
listen [::]:443 ssl http2;
listen 443 ssl http2;
listen [::]:80;
listen 80;
server_name wiki.example.com;
root /usr/share/nginx/html;
charset utf-8;
client_max_body_size 50M;
location /.well-known/acme-challenge/ {
allow all;
}
# RSA
ssl_certificate /etc/letsencrypt/wiki.example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/wiki.example.com/wiki.example.com.key;
# ECDSA
ssl_certificate /etc/letsencrypt/wiki.example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/wiki.example.com_ecc/wiki.example.com.key;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_next_upstream error timeout http_502 http_503 http_504;
}
}
ตรวจสอบการกำหนดค่า
sudo nginx -t
โหลดซ้ำ Nginx
sudo systemctl reload nginx.service
สร้างโฟลเดอร์รูทเอกสารเปล่าที่ควรติดตั้ง Wiki.js
sudo mkdir -p /var/www/wiki.example.com
นำทางไปยังโฟลเดอร์รูทเอกสาร
cd /var/www/wiki.example.com
เปลี่ยนความเป็นเจ้าของของโฟลเดอร์ให้กับผู้ใช้/var/www/wiki.example.com
johndoe
sudo chown -R johndoe:johndoe /var/www/wiki.example.com
จาก/var/www/wiki.example.com
โฟลเดอร์ให้รันคำสั่งต่อไปนี้เพื่อดาวน์โหลดและติดตั้ง Wiki.js
curl -sSo- https://wiki.js.org/install.sh | bash
หากต้องการดู Wiki.js รุ่นที่ติดตั้งอยู่ในปัจจุบันคุณสามารถเรียกใช้คำสั่งต่อไปนี้
node wiki --version
# 1.0.78
เมื่อการติดตั้งเสร็จสิ้นคุณจะได้รับแจ้งให้เรียกใช้ตัวช่วยสร้างการกำหนดค่า
เริ่มตัวช่วยสร้างการกำหนดค่า
node wiki configure
สิ่งนี้จะแจ้งให้คุณเรียกดูhttp://localhost:3000
เพื่อกำหนดค่า Wiki.js ถ้าคุณมี Nginx ในด้านหน้าของ Wiki.js คุณสามารถเปิดชื่อโดเมนของคุณ (เช่นhttp://wiki.example.com
) localhost
แทนที่จะไป
ใช้เว็บเบราว์เซอร์นำทางhttp://wiki.example.com
และทำตามคำแนะนำบนหน้าจอ การตั้งค่าทั้งหมดที่ป้อนระหว่างตัวช่วยสร้างการกำหนดค่าจะถูกบันทึกไว้ในconfig.yml
ไฟล์ วิซาร์ดการตั้งค่าจะเริ่มต้น Wiki.js ให้คุณโดยอัตโนมัติ
ตามค่าเริ่มต้น Wiki.js จะไม่เริ่มทำงานโดยอัตโนมัติหลังจากรีบูตระบบ เพื่อให้มันเริ่มต้นการบู๊ตเราจำเป็นต้องตั้งค่า PM2 PM2 มาพร้อมกับ Wiki.js เป็นโมดูล NPM ในระบบดังนั้นเราไม่จำเป็นต้องติดตั้ง PM2 ทั่วโลก
บอก PM2 เพื่อกำหนดค่าตัวเองเป็นบริการเริ่มต้น
/var/www/wiki.example.com/node_modules/pm2/bin/pm2 startup
สุดท้ายให้บันทึกการกำหนดค่า PM2 ปัจจุบัน
/var/www/wiki.example.com/node_modules/pm2/bin/pm2 save
Wiki.js ทำงานเป็นกระบวนการพื้นหลังโดยใช้ PM2 เป็นผู้จัดการกระบวนการ
NFS เป็นระบบไฟล์บนเครือข่ายที่อนุญาตให้คอมพิวเตอร์เข้าถึงไฟล์ผ่านเครือข่ายคอมพิวเตอร์ คู่มือนี้จะอธิบายวิธีการเปิดเผยโฟลเดอร์ผ่าน NF
ใช้ระบบที่แตกต่างกันอย่างไร Directus 6.4 CMS เป็นระบบการจัดการเนื้อหาแบบไม่มีหัว (Headless Content Management: CMS) ที่ทรงพลังและยืดหยุ่นซึ่งให้ผู้พัฒนา
TeamTalk เป็นระบบการประชุมที่ช่วยให้ผู้ใช้สามารถสนทนาด้วยเสียง / วิดีโอคุณภาพสูงสนทนาผ่านข้อความถ่ายโอนไฟล์และแชร์หน้าจอ มันฉัน
ใช้ระบบที่แตกต่างกันอย่างไร Pagekit เป็น CMS โอเพนซอร์สที่เขียนด้วย PHP ซอร์สโค้ดของ Pagekit นั้นโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า
สฟิงซ์เป็นเครื่องมือค้นหาข้อความแบบโอเพนซอร์ซฟรีและโอเพนซอร์สซึ่งสามารถรวมเข้ากับเว็บแอปพลิเคชั่นต่าง ๆ เพื่อให้ได้คุณภาพที���รวดเร็วและสูง
Vultr มีคุณสมบัติที่อนุญาตให้คุณติดตั้งคีย์ SSH ล่วงหน้าเมื่อสร้างอินสแตนซ์ใหม่ สิ่งนี้อนุญาตให้คุณเข้าถึงผู้ใช้รูทเซิร์ฟเวอร์อย่างไรก็ตาม
ใช้ระบบที่แตกต่างกันอย่างไร Diaspora เป็นเครือข่ายโซเชียลที่ตระหนักถึงความเป็นส่วนตัวและเป็นโอเพ่นซอร์ส ในบทช่วยสอนนี้คุณจะได้เรียนรู้วิธีการตั้งค่าและกำหนดค่า po Diaspora
ใช้ระบบที่แตกต่างกันอย่างไร Fuel CMS เป็นระบบจัดการเนื้อหาที่ใช้ CodeIgniter ซอร์สโค้ดของมันถูกโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า
ใช้ระบบที่แตกต่างกันอย่างไร Snipe-IT เป็นเว็บแอปพลิเคชั่นฟรีและโอเพนซอร์สสำหรับการจัดการสินทรัพย์ด้านไอที มันถูกเขียนบนกรอบงาน Laravel 5.2 และการใช้งาน
ใช้ระบบที่แตกต่างกันอย่างไร ไทกะเป็นแอปพลิเคชั่นฟรีและโอเพ่นซอร์สสำหรับการจัดการโครงการ ซึ่งแตกต่างจากเครื่องมือการจัดการโครงการอื่น ๆ ไทก้าใช้ส่วนเพิ่ม
FTP ที่ปลอดภัยมากหรือเพียงแค่ vsFTPd เป็นซอฟต์แวร์น้ำหนักเบาที่มีความสามารถในการปรับแต่ง ในบทช่วยสอนนี้เราจะรักษาความปลอดภัยของข้อความ
CentOS ติดตามการพัฒนา Red Hat Enterprise Linux (RHEL) RHEL พยายามที่จะเป็นแพลตฟอร์มเซิร์ฟเวอร์ที่มั่นคงซึ่งหมายความว่าจะไม่รีบเร่งในการรวม
Ranger เป็นตัวจัดการไฟล์แบบบรรทัดคำสั่งที่มีการเชื่อมโยงคีย์ VI มันจัดเตรียมอินเตอร์เฟส curses ที่เรียบง่ายและดีพร้อมมุมมองบนลำดับชั้นไดเร็กทอรี
ใช้ระบบที่แตกต่างกันอย่างไร Brotli เป็นวิธีการบีบอัดแบบใหม่ที่มีอัตราการบีบอัดที่ดีกว่า GZIP ซอร์สโค้ดของมันถูกโฮสต์แบบสาธารณะบน Githu นี้
ในบางโอกาสผู้ดูแลระบบอาจต้องสร้างบัญชีผู้ใช้และ จำกัด การเข้าถึงเพื่อจัดการไฟล์ของตัวเองผ่าน sFTP เท่านั้น
ใช้ระบบที่แตกต่างกันอย่างไร Omeka Classic 2.4 CMS เป็นแพลตฟอร์มเผยแพร่ดิจิตอลฟรีและโอเพ่นซอร์สและระบบการจัดการเนื้อหา (CMS) สำหรับการแบ่งปันดิจิต้า
การอนุญาตให้ล็อกอินรูทผ่าน SSH นั้นถือว่าเป็นการปฏิบัติด้านความปลอดภัยที่ไม่ดีทั่วทั้งอุตสาหกรรมเทคโนโลยี คุณสามารถดำเนินการที่ละเอียดอ่อนแทน
ใช้ระบบที่แตกต่างกันอย่างไร Moodle เป็นแพลตฟอร์มการเรียนรู้โอเพนซอร์ซหรือระบบจัดการหลักสูตร (CMS) - ชุดซอฟต์แวร์โอเพ่นซอร์สฟรีที่ออกแบบมาเพื่อช่วย
ใช้ระบบที่แตกต่างกันอย่างไร RabbitMQ เป็นนายหน้าข้อความโอเพ่นซอร์สที่ใช้กันอย่างแพร่หลายเขียนในภาษาการเขียนโปรแกรม Erlang เป็นมิดเดิลแวร์ที่มุ่งเน้นข้อความ
ในบทความนี้ฉันจะอธิบายวิธีสร้าง LEMP สแต็คที่ได้รับการป้องกันโดย ModSecurity ModSecurity เป็นไฟร์วอลล์เว็บแอพพลิเคชันแบบโอเพนซอร์สที่มีประโยชน์
เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย
เรียนรู้วิธีการตั้งค่า Nginx บน Ubuntu สำหรับการสตรีมวิดีโอสด HLS ด้วยคำแนะนำที่ชัดเจนและเป็นประโยชน์
เรียนรู้การใช้ Percona XtraBackup สำหรับการสำรองข้อมูลด้วยวิธีที่เป็นระบบและง่ายดายบน WordPress ออนไลน์ของคุณ
ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน
การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane
ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+
อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ
เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม
13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data
คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true