วิธีการติดตั้ง AirSonic บน Ubuntu 18.04 LTS

AirSonic เป็นเซิร์ฟเวอร์สตรีมมิ่งสื่อโอเพนซอร์สและฟรี ในบทช่วยสอนนี้ฉันจะแนะนำคุณเกี่ยวกับกระบวนการปรับใช้อินสแตนซ์เซิร์ฟเวอร์ AirSonic ตั้งแต่เริ่มต้นบนอินสแตนซ์เซิร์ฟเวอร์ Ubuntu 18.04 LTS

ข้อกำหนดเบื้องต้น

  • เซิร์ฟเวอร์ Vultr Ubuntu 18.04 LTS ที่เพิ่งติดตั้งใหม่ซึ่งมีหน่วยความจำอย่างน้อย 2GB 203.0.113.1บอกว่ามันมีที่อยู่ IPv4
  • sudo ผู้ใช้
  • โดเมนairsonic.example.comที่ชี้ไปยังอินสแตนซ์ของเซิร์ฟเวอร์ที่กล่าวถึงข้างต้น

ขั้นตอนที่ 1: การกำหนดค่าระบบพื้นฐาน

สร้างไฟล์สลับ

เพื่อให้ประสิทธิภาพของระบบดีขึ้นเราแนะนำให้สร้างไฟล์ swap ขนาด 2GB (2048M) บนเครื่องที่มีหน่วยความจำ 2GB:

sudo dd if=/dev/zero of=/swapfile count=2048 bs=1M
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile   none    swap    sw    0   0' | sudo tee -a /etc/fstab
free -m

หมายเหตุ: หากคุณใช้เซิร์ฟเวอร์ขนาดอื่นขนาดที่เหมาะสมของพาร์ทิชัน swap อาจแตกต่างกัน

ตั้งค่าชื่อโฮสต์ของเครื่องและชื่อโดเมนแบบเต็ม (FQDN)

การตั้งค่าชื่อโฮสต์และ FQDN อย่างถูกต้องสำหรับเครื่องนั้นจำเป็นสำหรับการเปิดใช้งานความปลอดภัย HTTPS ด้วยใบรับรอง Let's Encrypt SSL

คำสั่งต่อไปนี้จะตั้งค่าชื่อโฮสต์airsonicและ FQDN airsonic.example.comสำหรับเครื่อง:

sudo hostnamectl set-hostname airsonic
sudo sed -i 's/^127.0.1.1.*$/127.0.1.1 airsonic.example.com airsonic/g' /etc/hosts

ผลลัพธ์สามารถยืนยันได้ดังต่อไปนี้:

hostname
hostname -f

การปรับเปลี่ยนกฎไฟร์วอลล์เพื่อให้ขาเข้าSSH, HTTPและHTTPSการจราจร

ตั้งค่ากฎไฟร์วอลล์ UFW สำหรับการเรียกใช้เซิร์ฟเวอร์ AirSonic:

sudo ufw allow OpenSSH
sudo ufw allow http
sudo ufw allow https
sudo ufw enable

เมื่อคุณเห็นข้อความแจ้งCommand may disrupt existing ssh connections. Proceed with operation (y|n)?การป้อนข้อมูลและกดyENTER

ปรับปรุงระบบ

เพื่อค��ามปลอดภัยและประสิทธิภาพการทำงานจำเป็นต้องอัปเดตระบบ Ubuntu 18.04 LTS เป็นสถานะล่าสุด:

sudo apt update
sudo apt upgrade -y && sudo shutdown -r now

ในระหว่างการอัพเกรดคุณอาจได้รับแจ้งว่าไฟล์การกำหนดค่า grub รุ่นที่ติดตั้งในปัจจุบันได้รับการแก้ไขในเครื่อง เนื่องจากเราไม่ได้จริงรับผิดชอบสำหรั���การปรับเปลี่ยนให้ใช้UPลูกศรเพื่อเน้นตัวเลือกแล้วกดinstall the package maintainer's versionENTER

หลังจากที่ระบบรีบูตให้ล็อกอินกลับไปเป็นผู้ใช้ sudo คนเดิมเพื่อดำเนินการต่อ

ขั้นตอนที่ 2: ติดตั้ง OpenJDK Java Runtime Environment (JRE) 8

ติดตั้ง OpenJDK JRE 8 จากนั้นยืนยันผลลัพธ์:

sudo apt install -y openjdk-8-jre-headless
java -version

เอาต์พุตของคำสั่งที่สองจะคล้ายกับที่แสดงต่อไปนี้:

openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-8u181-b13-0ubuntu0.18.04.1-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)

นอกจากนี้คุณต้องตั้งค่าJAVA_HOMEตัวแปรสภาพแวดล้อมดังนี้:

echo "JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")" | sudo tee -a /etc/profile
source /etc/profile

ขั้นตอนที่ 3: ติดตั้ง AirSonic

AirSonic สามารถปรับใช้โดยใช้วิธีการต่าง ๆ ในบทช่วยสอนนี้เราจะติดตั้ง AirSonic โดยใช้แพ็คเกจ AirSonic WAR

สร้างผู้ใช้เฉพาะและกลุ่มเฉพาะทั้งสองชื่อairsonic:

sudo groupadd airsonic
sudo mkdir /var/airsonic
sudo useradd -s /bin/nologin -g airsonic -d /var/airsonic -M airsonic

ดาวน์โหลดแพ็คเกจ AirSonic WAR ล่าสุด AirSonic v10.1.2:

cd /var/airsonic
sudo wget https://github.com/airsonic/airsonic/releases/download/v10.1.2/airsonic.war
sudo chown -R airsonic:airsonic /var/airsonic

ดาวน์โหลดsystemdไฟล์หน่วยAirSonic ที่กำหนดไว้ล่วงหน้าแล้วเริ่มบริการ AirSonic:

sudo wget https://raw.githubusercontent.com/airsonic/airsonic/master/contrib/airsonic.service -O /etc/systemd/system/airsonic.service
sudo wget https://raw.githubusercontent.com/airsonic/airsonic/master/contrib/airsonic-systemd-env -O /etc/default/airsonic
sudo systemctl daemon-reload
sudo systemctl start airsonic.service
sudo systemctl enable airsonic.service

หมายเหตุ: คุณอาจจำเป็นต้องทบทวนและปรับแต่งsystemdไฟล์AirSonic สองไฟล์ในเครื่องของคุณเอง

ขั้นตอนที่ 4: ทดสอบการติดตั้ง

AirSonic 8080จะขึ้นและทำงานได้ในขณะนี้ฟังพอร์ต คุณสามารถใช้คำสั่งต่อไปนี้เพื่อยืนยันว่าเป็นกรณีนี้:

ps -ef|grep airsonic

คุณยังสามารถเยี่ยมชมไซต์ AirSonic โดยตรง แต่คุณต้องแก้ไขกฎไฟร์วอลล์ชั่วคราวก่อน:

sudo ufw allow in 8080/tcp

ถัดไปให้ชี้เว็บเบราว์เซอร์ที่คุณชื่นชอบhttp://203.0.113.1:8080/airsonicแล้วใช้ข้อมูลประจำตัวเริ่มต้นที่แสดงด้านล่างเพื่อเข้าสู่ระบบ

  • ชื่อผู้ใช้: admin
  • รหัสผ่าน: admin

เพื่อความปลอดภัยคุณควรเปลี่ยนรหัสผ่านของผู้ดูแลระบบทันทีหลังจากลงชื่อเข้าใช้

เมื่อผลลัพธ์ได้รับการยืนยันให้ จำกัด การเข้าถึงพอร์ต8080อีกครั้ง:

sudo ufw deny in 8080/tcp

ขั้นตอนที่ 5: รับใบรับรอง Let's Encrypt SSL สำหรับไซต์ AirSonic ของคุณ

เพื่อความปลอดภัยขอแนะนำให้เปิดใช้งานความปลอดภัย HTTPS ในทุกเว็บไซต์ที่สร้างขึ้นใหม่ วิธีปฏิบัติที่สะดวกที่สุดสำหรับการปรับใช้ใบรับรอง Let's Encrypt SSL มีดังนี้

ติดตั้งโปรแกรมอรรถประโยชน์ Certbot:

sudo apt update
sudo apt install -y software-properties-common
sudo add-apt-repository -y ppa:certbot/certbot
sudo apt update
sudo apt install -y certbot

ใช้ Certbot เพื่อสมัครใบรับรอง Let's Encrypt SSL สำหรับโดเมนairsonic.example.com:

sudo certbot certonly --standalone --agree-tos --no-eff-email -m [email protected] -d airsonic.example.com

ใบรับรองและลูกโซ่จะถูกบันทึกไว้ในรายการต่อไปนี้:

/etc/letsencrypt/live/airsonic.example.com/fullchain.pem

ไฟล์กุญแจจะถูกบันทึกไว้ที่นี่:

/etc/letsencrypt/live/airsonic.example.com/privkey.pem

ใบรับรอง Let's Encrypt SSL ได้รับการออกแบบให้หมดอายุในสามเดือน คุณสามารถตั้งค่างาน cron เพื่อต่ออายุใบรับรองของคุณโดยอัตโนมัติ:

sudo crontab -e

เมื่อคุณได้รับแจ้งให้เลือกแก้ไขใส่2แล้วกดให้เลือกENTER/usr/bin/vim.basic

ถัดไปกดOและเพิ่มบรรทัดใหม่ตามที่แสดงด้านล่าง:

0 0,12 * * * python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew

บันทึกและออก:

:wq!

งาน cron นี้จะพยายามอัปเดตใบรับรอง Let's Encrypt ทุกวันตอนเที่ยง

ขั้นตอนที่ 6: ติดตั้ง Nginx เป็น reverse proxy

ด้วยความช่วยเหลือของ Nginx คุณสามารถอำนวยความสะดวกในการเข้าถึงของผู้เยี่ยมชม (เพื่อให้พวกเขาไม่จำเป็นต้องป้อน8080หมายเลขพอร์ต) และเปิดใช้งานการรักษาความปลอดภัย HTTPS ในเว็บไซต์ AirSonic ของคุณ

ติดตั้ง Nginx โดยใช้ APT:

sudo apt install -y nginx

จากนั้นสร้างไฟล์ปรับแต่งสำหรับ AirSonic:

cat <<EOF | sudo tee /etc/nginx/sites-available/airsonic.conf
# Redirect HTTP to HTTPS
server {
    listen      80;
    server_name airsonic.example.com;
    return      301 https://\$server_name\$request_uri;
}

server {

    # Setup HTTPS certificates
    listen       443 default ssl;
    server_name  airsonic.example.com;
    ssl_certificate      /etc/letsencrypt/live/airsonic.example.com/fullchain.pem;
    ssl_certificate_key  /etc/letsencrypt/live/airsonic.example.com/privkey.pem;

    # Proxy to the Airsonic server
    location /airsonic {
        proxy_set_header X-Real-IP         \$remote_addr;
        proxy_set_header X-Forwarded-For   \$proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
        proxy_set_header X-Forwarded-Host  \$http_host;
        proxy_set_header Host              \$http_host;
        proxy_max_temp_file_size           0;
        proxy_pass                         http://127.0.0.1:8080;
        proxy_redirect                     http:// https://;
    }
}
EOF

สร้างลิงก์สัญลักษณ์ที่ชี้ไปยังไฟล์กำหนดค่า AirSonic Nginx ที่สร้างขึ้นใหม่:

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

รีสตาร์ท Nginx เพื่อให้การกำหนดค่าของคุณมีผล:

sudo systemctl restart nginx.service
sudo systemctl enable nginx.service

สุดท้ายให้ชี้เว็บเบราว์เซอร์ที่คุณชื่นชอบไปที่http://airsonic.example.com/airsonicหรือhttps://airsonic.example.com/airsonicเพื่อเริ่มสำรวจเว็บไซต์ AirSonic ของคุณ



Leave a Comment

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

เรียนรู้วิธีการตั้งค่า Nginx บน Ubuntu สำหรับการสตรีมวิดีโอสด HLS ด้วยคำแนะนำที่ชัดเจนและเป็นประโยชน์

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

เรียนรู้การใช้ Percona XtraBackup สำหรับการสำรองข้อมูลด้วยวิธีที่เป็นระบบและง่ายดายบน WordPress ออนไลน์ของคุณ

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true