Ինչպես տեղադրել Airsonic Media Server-ը CentOS 7-ում
Ներածություն
Airsonic-ը բաց կոդով վեբ վրա հիմնված մեդիա սերվեր է, որը թույլ է տալիս օգտվողներին կառավարել, հեռարձակել և կիսել իրենց աուդիո և վիդեո ֆայլերը: Դա բազմակողմանի և հզոր գործիք է՝ տարբեր մեդիա ձևաչափերի աջակցությամբ, ինչպես նաև երրորդ կողմի ծառայությունների հետ, ինչպիսիք են Last.fm-ը և Tidal-ը: Այս հոդվածում մենք ձեզ կառաջնորդենք CentOS 7 համակարգում Airsonic-ի տեղադրման գործընթացում:
Նախադրյալներ
Սկսելուց առաջ համոզվեք, որ ունեք −
CentOS 7 համակարգ՝ root կամ sudo մուտքով:
Կայուն ինտերնետ կապ:
Հրամանատարի հիմնական իմացություն:
Քայլ 1. Թարմացրեք ձեր համակարգը
Նախ, թարմացրեք ձեր CentOS 7 համակարգը վերջին տարբերակին՝ գործարկելով հետևյալ հրամանները
sudo yum update
sudo yum upgrade
Քայլ 2. Տեղադրեք Java
Airsonic-ը պահանջում է Java-ն գործարկելու համար, ուստի նախ պետք է այն տեղադրենք: Տեղադրեք OpenJDK 11 փաթեթը՝ գործարկելով հետևյալ հրամանները −
sudo yum install java-11-openjdk
Հաստատելու համար, որ Java-ն տեղադրված է, գործարկեք հետևյալ հրամանը -
java -version
Քայլ 3. Ստեղծեք հատուկ օգտատեր Airsonic-ի համար
Անվտանգության նկատառումներից ելնելով, խորհուրդ է տրվում ստեղծել առանձին օգտատեր՝ Airsonic ծառայությունը գործարկելու համար: Օգտագործեք հետևյալ հրամանը՝ «airsonic» անունով նոր օգտվող ստեղծելու համար
sudo useradd -r -m -U -d /opt/airsonic -s /sbin/nologin airsonic
Քայլ 4. Ներբեռնեք և կարգավորեք Airsonic-ը
Ներբեռնեք վերջին Airsonic անկախ WAR ֆայլը պաշտոնական GitHub պահոցից -
sudo wget https://github.com/airsonic/airsonic/releases/download/v10.6.2/airsonic.war -P /opt/airsonic
Կարգավորել թույլտվությունները ներբեռնված ֆայլի համար -
sudo chown airsonic: /opt/airsonic/airsonic.war
Ստեղծեք նոր systemd սպասարկման ֆայլ Airsonic-ի համար
sudo nano /etc/systemd/system/airsonic.service
Տեղադրեք հետևյալ բովանդակությունը ֆայլի մեջ −
[Unit]
Description=Airsonic Media Server
After=remote-fs.target network.target
[Service]
User=airsonic
Group=airsonic
Environment="JAVA_OPTS=-Xmx700m"
ExecStart=/usr/bin/java $JAVA_OPTS -Dairsonic.home=/opt/airsonic -Dserver.context-path=/airsonic -Dserver.port=8080 -jar /opt/airsonic/airsonic.war
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
Պահպանեք ֆայլը և դուրս եկեք տեքստային խմբագրիչից:
Քայլ 5. Սկսեք և միացրեք Airsonic ծառայությունը
Սկսեք Airsonic ծառայությունը հետևյալ հրամանով −
sudo systemctl start airsonic
Միացնել Airsonic-ը սկսելու համար բեռնման պահին −
sudo systemctl enable airsonic
Քայլ 6. Կարգավորեք Firewall-ը
Եթե ձեր համակարգում միացված է firewall, ավելացրեք կանոն, որը թույլ կտա մուտքային երթևեկությունը կանխադրված Airsonic պորտում (8080) -
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
Քայլ 7. Մուտք գործեք Airsonic վեբ ինտերֆեյս
Բացեք ձեր վեբ զննարկիչը և անցեք http://your_server_IP:8080/airsonic: Դուք կտեսնեք Airsonic մուտքի էջը: Մուտք գործելու համար օգտագործեք կանխադրված օգտանունը «admin» և գաղտնաբառը «admin»: Համոզվեք, որ փոխեք կանխադրված գաղտնաբառը առաջին անգամ մուտք գործելուց անմիջապես հետո՝ անվտանգությունն ապահովելու համար:
Քայլ 8. Կարգավորեք Airsonic-ը
Մուտք գործելուց հետո ձեզ կներկայացվի Airsonic վահանակ: Այստեղ կարող եք հարմարեցնել կարգավորումները, ավելացնել մեդիա թղթապանակներ և կարգավորել տրանսկոդավորման տարբերակները:
Մեդիա թղթապանակներ ավելացնելու համար անցեք «Կարգավորումներ» > «Մեդիա թղթապանակներ» և սեղմեք «Ավելացնել մեդիա թղթապանակ» կոճակը: Տրամադրեք ուղի դեպի ձեր մեդիա պանակը և ընտրեք թղթապանակի տեսակը (Երաժշտություն կամ Տեսանյութ): Թղթապանակ ավելացնելու համար սեղմեք «Պահպանել»:
Տրանսկոդավորման տարբերակները կարգավորելու համար անցեք «Կարգավորումներ» > «Տրանսկոդավորում»: Airsonic-ը գալիս է տարբեր մեդիա ձևաչափերի համար նախապես կազմաձևված տրանսկոդավորման կարգավորումներով, բայց դուք կարող եք դրանք հարմարեցնել ձեր կարիքներին համապատասխան:
Անհրաժեշտության դեպքում կարգավորեք մեդիա սկաների, ցանցի և անվտանգության կարգավորումները: Համոզվեք, որ սեղմեք «Պահպանել» ցանկացած փոփոխություն կատարելուց հետո:
Քայլ 9. Վայելեք ձեր Airsonic մեդիա սերվերը
Ամեն ինչ կարգավորելով՝ այժմ կարող եք օգտագործել Airsonic՝ ձեր մեդիա ֆայլերը հեռարձակելու, կառավարելու և համօգտագործելու համար: Դուք կարող եք մուտք գործել ձեր Airsonic սերվեր ցանկացած սարքից վեբ բրաուզերով, ներառյալ սմարթֆոնները, պլանշետները և համակարգիչները:
Քայլ 10. Կազմաձևեք հակադարձ պրոքսի (ըստ ցանկության)
Եթե ցանկանում եք մուտք գործել Airsonic՝ օգտագործելով տիրույթի անուն կամ ենթադոմեյն, կարող եք ստեղծել հակադարձ վստահված անձ՝ օգտագործելով վեբ սերվեր, ինչպիսիք են Nginx-ը կամ Apache-ը: Այս օրինակում մենք կօգտագործենք Nginx-ը:
Տեղադրեք Nginx-ը
sudo yum install epel-release
sudo yum install nginx
Սկսեք և միացրեք Nginx-ը
sudo systemctl start nginx
sudo systemctl enable nginx
Ստեղծեք նոր Nginx սերվերի բլոկի կազմաձևման ֆայլ
sudo nano /etc/nginx/conf.d/airsonic.conf
Տեղադրեք հետևյալ բովանդակությունը ֆայլում՝ փոխարինելով yourdomain.com-ը ձեր տիրույթով կամ ենթադոմեյնով −
server {
listen 80;
server_name yourdomain.com;
location / {
proxy_pass http://localhost:8080/airsonic/;
proxy_set_header Host $host;
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 $scheme;
}
}
Պահպանեք ֆայլը և դուրս եկեք տեքստային խմբագրիչից:
Վերբեռնեք Nginx-ը՝ փոփոխությունները կիրառելու համար
sudo systemctl reload nginx
Թարմացրեք ձեր DNS կարգավորումները՝ ձեր տիրույթը կամ ենթադոմեյնը ձեր սերվերի IP հասցեին ուղղելու համար:
Քայլ 11. Ապահովեք ձեր Airsonic սերվերը SSL-ով (ըստ ցանկության)
Ձեր տվյալները պաշտպանելու և Airsonic սերվերի անվտանգությունը բարձրացնելու համար խորհուրդ է տրվում օգտագործել HTTPS: Դրան հասնելու ուղիներից մեկը Let's Encrypt-ից անվճար SSL վկայագիր ստանալն է:
Տեղադրեք Certbot և Nginx հավելվածը
sudo yum install certbot python2-certbot-nginx
Գործարկեք Certbot-ը՝ SSL վկայական ստանալու և տեղադրելու համար
sudo certbot --nginx -d yourdomain.com
Հետևեք էկրանի հրահանգներին՝ ավարտելու SSL վկայագրի կարգավորումը: Ավարտելուց հետո ձեր Airsonic սերվերը հասանելի կլինի HTTPS-ի միջոցով:
Քայլ 12. Միացնել SSL-ի ավտոմատ թարմացումը (ըստ ցանկության)
Եկեք գաղտնագրենք SSL վկայագրերը վավեր են 90 օր: Նորացման գործընթացը ավտոմատացնելու համար ստեղծեք cron աշխատանք՝ Certbot-ի նորացման հրամանը պարբերաբար գործարկելու համար:
Բացեք crontab ֆայլը
sudo crontab -e
Ֆայլին ավելացրեք հետևյալ տողը −
0 2 * * * /usr/bin/certbot renew --quiet
Սա կգործարկի նորացման հրամանը ամեն օր ժամը 2-ին: Եթե սերտիֆիկատը մոտ է իր գործողության ժամկետին, Certbot-ն ավտոմատ կերպով կթարմացնի այն:
Հետևելով այս լրացուցիչ քայլերին, դուք կարող եք ավելի մեծացնել ձեր Airsonic մեդիա սերվերի գործառույթն ու անվտանգությունը: Հակադարձ վստահված անձի, SSL վկայագրի և վկայագրի ավտոմատ նորացման միջոցով դուք կարող եք վայելել ավելի ապահով և օգտագործողի համար հարմար փորձ՝ հեռարձակելով և կիսելով ձեր մեդիա ֆայլերը:
Քայլ 13. Տեղադրեք և կազմաձևեք տվյալների բազա (ըստ ցանկության)
Լռելյայնորեն, Airsonic-ը օգտագործում է ներկառուցված H2 տվյալների բազա՝ իր տվյալները պահելու համար: Այնուամենայնիվ, դուք կարող եք բարելավել ձեր Airsonic սերվերի կատարումն ու հուսալիությունը՝ օգտագործելով արտաքին տվյալների բազա, ինչպիսիք են PostgreSQL կամ MySQL/MariaDB: Այս օրինակում մենք կտեղադրենք և կկարգավորենք PostgreSQL-ը:
Տեղադրեք PostgreSQL
sudo yum install postgresql-server postgresql-contrib
Նախաձեռնել PostgreSQL տվյալների բազան
sudo postgresql-setup initdb
Սկսեք և միացրեք PostgreSQL ծառայությունը
sudo systemctl start postgresql
sudo systemctl enable postgresql
Ստեղծեք նոր PostgreSQL օգտվող և տվյալների բազա Airsonic-ի համար
sudo -i -u postgres
createuser airsonic
createdb -O airsonic airsonicdb
exit
Խմբագրել PostgreSQL կազմաձևման ֆայլը՝ տեղական կապերը թույլատրելու համար
sudo nano /var/lib/pgsql/data/pg_hba.conf
Գտեք հետևյալ տողերը −
host all all 127.0.0.1/32 ident
host all all ::1/128 ident
Նույնականացումը փոխարինեք md5-ով
host all all 127.0.0.1/32 md5
host all all ::1/128 md5
Պահպանեք ֆայլը և դուրս եկեք տեքստային խմբագրիչից:
Վերագործարկեք PostgreSQL ծառայությունը
sudo systemctl restart postgresql
Թարմացրեք Airsonic ծառայության ֆայլը՝ PostgreSQL տվյալների բազան օգտագործելու համար
sudo nano /etc/systemd/system/airsonic.service
Փոփոխեք Environment և ExecStart տողերը հետևյալ կերպ
Environment="JAVA_OPTS=-Xmx700m -Dspring.datasource.url=jdbc:postgresql://localhost:5432/airsonicdb -Dspring.datasource.username=airsonic -Dspring.datasource.password=your_password"
ExecStart=/usr/bin/java $JAVA_OPTS -Dairsonic.home=/opt/airsonic -Dserver.context-path=/airsonic -Dserver.port=8080 -Dspring.profiles.active=legacy -jar /opt/airsonic/airsonic.war
Փոխարինեք your_password-ը Airsonic PostgreSQL օգտվողի համար ուժեղ գաղտնաբառով:
Պահպանեք ֆայլը և դուրս եկեք տեքստային խմբագրիչից:
Վերագործարկեք Airsonic ծառայությունը
sudo systemctl restart airsonic
Քայլ 14. Կարգավորել երրորդ կողմի ինտեգրումները (ըստ ցանկության)
Airsonic-ն աջակցում է ինտեգրմանը երրորդ կողմի տարբեր ծառայությունների հետ, ինչպիսիք են Last.fm-ը, Tidal-ը և Google Drive-ը: Այս ինտեգրումները կարգավորելու համար հետևեք ստորև նշված քայլերին −
Last.fm − Գնացեք «Կարգավորումներ» > «Անձնական» և մուտքագրեք ձեր Last.fm օգտվողի անունը և գաղտնաբառը «Last.fm Scrobbling» բաժնում: Սեղմեք «Պահպանել»՝ սկրոբլինգը միացնելու համար:
Tidal − Գնացեք «Կարգավորումներ» > «Ցանց» և մուտքագրեք ձեր Tidal API նշանը «Մակընթացային կարգավորումներ» բաժնում: Սեղմեք «Պահպանել»՝ Tidal ինտեգրումը միացնելու համար:
Google Drive − Գնացեք «Կարգավորումներ» > «Մեդիա թղթապանակներ» և սեղմեք «Ավելացնել մեդիա թղթապանակ» կոճակը: Ընտրեք «Google Drive»-ը որպես թղթապանակի տեսակ և հետևեք էկրանի հրահանգներին՝ նույնականացնելու և մուտքը դեպի ձեր Google Drive հաշիվը թույլատրելու համար:
Այս լրացուցիչ քայլերով դուք կարող եք ավելի մեծացնել ձեր Airsonic մեդիա սերվերի հնարավորությունները: Արտաքին տվյալների բազան օգտագործելով՝ դուք կարող եք բարելավել կատարումը և հուսալիությունը, մինչդեռ երրորդ կողմի ինտեգրումները թույլ են տալիս միացնել ձեր սերվերը հանրաճանաչ ծառայություններին, ինչպիսիք են Last.fm-ը, Tidal-ը և Google Drive-ը:
Եզրակացություն
Այս հոդվածում մենք ձեզ ուղեկցել ենք CentOS 7-ում Airsonic մեդիա սերվերի տեղադրման և կազմաձևման գործընթացում: Airsonic-ի միջոցով դուք կարող եք հեշտությամբ հեռարձակել ձեր երաժշտությունն ու տեսանյութերը, կիսվել ձեր մեդիա գրադարանով ընկերների և ընտանիքի հետ և վայելել ձեր բովանդակությունը ցանկացած սարքի վրա: .