Jak zainstalować AirSonic na CentOS 7

AirSonic to darmowy serwer multimediów o otwartym kodzie źródłowym. W tym samouczku poprowadzę Cię przez proces wdrażania instancji serwera AirSonic od podstaw na instancji serwera CentOS 7.

Wymagania wstępne

  • Nowo wdrożona instancja serwera Vultr CentOS 7 z co najmniej 2 GB pamięci. Powiedz, że ma adres IPv4 203.0.113.1.
  • Użytkownik sudo .
  • Domena airsonic.example.comwskazana na wspomnianą wyżej instancję serwera.

Krok 1: Podstawowa konfiguracja systemu

Utwórz plik wymiany

Aby uzyskać lepszą wydajność systemu, zaleca się utworzenie pliku wymiany 2 GB (2048 M) na komputerze z 2 GB pamięci:

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

Uwaga: Jeśli używasz innego rozmiaru serwera, odpowiedni rozmiar partycji wymiany może się różnić.

Skonfiguruj nazwę hosta urządzenia i pełną nazwę domeny (FQDN)

Prawidłowe skonfigurowanie nazwy hosta i nazwy FQDN dla komputera jest wymagane do włączenia zabezpieczeń HTTPS za pomocą certyfikatu Let's Encrypt SSL.

Następujące polecenia skonfigurują nazwę hosta airsonici nazwę FQDN airsonic.example.comdla komputera:

sudo hostnamectl set-hostname airsonic
cat <<EOF | sudo tee /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
203.0.113.1 airsonic.example.com airsonic
127.0.0.1 airsonic
::1       airsonic
EOF

Wyniki można potwierdzić za pomocą:

hostname
hostname -f

Zmodyfikuj reguły zapory, aby umożliwić przychodzący ruch HTTP i HTTPS

Usuń domyślny blok CentOS 7 z portów 80( HTTP) i 443( HTTPS):

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld.service

Zainstaluj repozytorium

Zainstaluj repozytorium EPEL YUM, a następnie zaktualizuj system:

sudo yum install -y epel-release
sudo yum -y update && sudo shutdown -r now

Po ponownym uruchomieniu systemu zaloguj się ponownie jako ten sam użytkownik sudo, aby przejść dalej.

Krok 2: Zainstaluj środowisko uruchomieniowe Java OpenJDK (JRE) 8

Zainstaluj OpenJDK JRE 8, a następnie potwierdź wynik w CentOS 7:

sudo yum install -y java-1.8.0-openjdk.x86_64
java -version

Dane wyjściowe drugiego polecenia będą podobne do następujących:

openjdk version "1.8.0_171"
OpenJDK Runtime Environment (build 1.8.0_171-8u171-b11-0ubuntu0.18.04.1-b11)
OpenJDK 64-Bit Server VM (build 25.171-b11, mixed mode)

Ponadto należy ustawić JAVA_HOMEzmienną środowiskową w następujący sposób:

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

Krok 3: Zainstaluj AirSonic

AirSonic można wdrożyć za pomocą różnych metod. W tym samouczku zainstalujemy AirSonic za pomocą pakietu AirSonic WAR.

Utwórz dedykowanego użytkownika i dedykowaną grupę o nazwach airsonic:

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

Pobierz najnowszy pakiet AirSonic WAR:

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

Pobierz predefiniowane systemdpliki jednostek AirSonic , a następnie uruchom usługę 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/sysconfig/airsonic
sudo systemctl daemon-reload
sudo systemctl start airsonic.service
sudo systemctl enable airsonic.service

Uwaga: Może być konieczne przejrzenie i dostosowanie dwóch systemdplików jednostek AirSonic na własnym komputerze.

Krok 4: Przetestuj instalację

AirSonic uruchomi się teraz, nasłuchując na porcie 8080. Możesz użyć następującego polecenia, aby potwierdzić, że tak jest:

ps -ef|grep airsonic

Możesz także bezpośrednio odwiedzić witrynę AirSonic, ale najpierw musisz tymczasowo zmodyfikować reguły zapory:

sudo firewall-cmd --permanent --add-port=8080/tcp
sudo systemctl reload firewalld.service

Następnie wskaż swoją ulubioną przeglądarkę internetową http://203.0.113.1:8080/airsonic, a następnie użyj domyślnych poświadczeń wymienionych poniżej, aby się zalogować:

  • Nazwa Użytkownika: admin
  • Hasło: admin

Ze względów bezpieczeństwa należy zmienić hasło administratora natychmiast po zalogowaniu.

Po potwierdzeniu wyniku ponownie ogranicz dostęp do portu 8080:

sudo firewall-cmd --permanent --remove-port=8080/tcp
sudo systemctl reload firewalld.service

Krok 5: Uzyskaj certyfikat Let's Encrypt SSL dla swojej witryny AirSonic

Ze względów bezpieczeństwa zaleca się włączenie zabezpieczeń HTTPS na każdej nowo utworzonej stronie internetowej. Najwygodniejszą praktyką jest wdrażanie certyfikatu Let's Encrypt SSL w następujący sposób.

Zainstaluj narzędzie Certbot na CentOS 7:

sudo yum -y install yum-utils
sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
sudo yum install -y certbot

Użyj Certbot, aby ubiegać się o certyfikat Let's Encrypt SSL dla domeny airsonic.example.com:

sudo certbot certonly --standalone --agree-tos --no-eff-email -m admin@example.com -d airsonic.example.com

Certyfikat i łańcuch zostaną zapisane w następujący sposób:

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

Plik klucza zostanie zapisany tutaj:

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

Certyfikat Let's Encrypt SSL ma wygasnąć za trzy miesiące. Możesz skonfigurować zadanie CRON, aby automatycznie odnawiać certyfikaty:

sudo crontab -e

Naciśnij I, a następnie wprowadź następujący wpis:

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

Zapisz i wyjdź:

:wq

To zadanie cron będzie próbowało aktualizować certyfikat Let's Encrypt codziennie w południe.

Krok 6: Zainstaluj Nginx jako zwrotny serwer proxy

Za pomocą Nginx możesz zarówno ułatwić dostęp odwiedzającym (aby nie musieli już wprowadzać 8080numeru portu), jak i włączyć zabezpieczenia HTTPS na swojej stronie internetowej AirSonic.

Zainstaluj Nginx za pomocą YUM:

sudo yum install -y nginx

Następnie utwórz plik konfiguracyjny dla AirSonic:

cat <<EOF | sudo tee /etc/nginx/conf.d/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

Uruchom ponownie Nginx, aby zastosować konfigurację:

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

Na koniec wskaż swoją ulubioną przeglądarkę internetową http://airsonic.example.com/airsoniclub https://airsonic.example.com/airsoniczacznij odkrywać swoją stronę internetową AirSonic.

Zostaw komentarz

Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.