วิธีการติดตั้ง 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

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

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ในขณะที่วิทยาศาสตร์มีวิวัฒนาการไปอย่างรวดเร็ว โดยรับช่วงต่อความพยายามของเราอย่างมาก ความเสี่ยงในการทำให้ตัวเองตกอยู่ในภาวะภาวะเอกฐานที่อธิบายไม่ได้ก็เพิ่มขึ้นเช่นกัน อ่านว่าภาวะเอกฐานอาจมีความหมายสำหรับเราอย่างไร

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

AI ในการดูแลสุขภาพได้ก้าวกระโดดอย่างมากจากทศวรรษที่ผ่านมา ดังนั้นอนาคตของ AI ในการดูแลสุขภาพจึงยังคงเติบโตทุกวัน