
先决条件
一个新部署的Ubuntu 18.04 LTS服务器实例,至少有2GB的内存。假设它的IPv4地址是203.0.113.1。
sudo用户。
指向上面提到的服务器实例的域airsonic.example.com。
步骤1:基本系统配置
创建交换文件
为了获得更好的系统性能,建议在具有2GB内存的机器上创建2GB (2048M)交换文件:
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
注意:如果您使用不同的服务器大小,交换分区的适当大小可能会有所不同。
设置计算机的主机名和完全限定域名(FQDN)
正确地为计算机设置主机名和FQDN是使用SSL加密证书启用HTTPS安全性所必需的。
以下命令将为机器设置主机名airsonic和FQDN airsonic.example.com:
sudo hostnamectl set-hostname airsonicsudo sed -i 's/^127.0.1.1.*$/127.0.1.1 airsonic.example.com airsonic/g' /etc/hosts
结果如下:
hostnamehostname -f
修改防火墙规则以允许入站SSH、HTTP和HTTPS通信
设置UFW防火墙规则运行一个AirSonic服务器:
sudo ufw allow OpenSSHsudo ufw allow httpsudo ufw allow httpssudo ufw enable
当你看到Command may disrupt existing ssh connections. Proceed with operation (y|n)?时,输入y,然后按回车键。
更新系统
为了安全和性能,有必要将Ubuntu 18.04 LTS系统升级到最新状态:
sudo apt updatesudo apt upgrade -y && sudo shutdown -r now
在升级过程中,可能会通知您,当前安装的grub配置文件已在本地修改。由于我们实际上并不负责修改,所以使用up箭头高亮install the package maintainer's version选项,然后按回车键。
在系统重新启动后,以相同的sudo用户身份重新登录以继续运行。
步骤2:安装OpenJDK Java运行时环境(JRE) 8
安装OpenJDK JRE 8,然后确认结果:
sudo apt install -y openjdk-8-jre-headlessjava -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/profilesource /etc/profile
第三步:安装AirSonic
可以使用各种方法部署AirSonic。在本教程中,我们将使用AirSonic WAR包安装AirSonic。
创建一个专用用户和一个专用组,都叫airsonic:
sudo groupadd airsonicsudo mkdir /var/airsonicsudo useradd -s /bin/nologin -g airsonic -d /var/airsonic -M airsonic
下载最新的AirSonic WAR包,AirSonic v10.1.2:
cd /var/airsonicsudo wget https://github.com/airsonic/airsonic/releases/download/v10.1.2/airsonic.warsudo chown -R airsonic:airsonic /var/airsonic
下载预定义的AirSonic systemd单元文件,然后启动AirSonic服务:
sudo wget https://raw.githubusercontent.com/airsonic/airsonic/master/contrib/airsonic.service -O /etc/systemd/system/airsonic.servicesudo wget https://raw.githubusercontent.com/airsonic/airsonic/master/contrib/airsonic-systemd-env -O /etc/default/airsonicsudo systemctl daemon-reloadsudo systemctl start airsonic.servicesudo systemctl enable airsonic.service
注意:您可能需要在自己的机器上检查和定制两个AirSonic systemd单元文件。
步骤4:测试安装
AirSonic将会启动并运行,在8080端口收听。您可以使用以下命令来确认这是事实:
ps -ef|grep airsonic
你也可以直接访问AirSonic网站,但你需要先暂时修改防火墙规则:
sudo ufw allow in 8080/tcp
接下来,将您最喜欢的web浏览器指向http://203.0.113.1:8080/airsonic,然后使用下面列出的默认凭证登录:
用户名:admin
密码:admin
出于安全考虑,您应该在登录后立即更改管理员的密码。
一旦确认结果,再次限制端口8080的访问:
sudo ufw deny in 8080/tcp
步骤5:获得一个让我们为您的AirSonic站点加密SSL证书
出于安全考虑,建议在每个新创建的网站上启用HTTPS安全性。最方便的实践是部署一个Let’s Encrypt证书,方法如下。
安装Certbot实用程序:
sudo apt updatesudo apt install -y software-properties-commonsudo add-apt-repository -y ppa:certbot/certbotsudo apt updatesudo apt install -y certbot
使用Certbot申请域名为airsonic.example.com加密SSL证书:
sudo certbot certonly --standalone --agree-tos --no-eff-email -m admin@example.com -d airsonic.example.com
证书和链将保存在以下位置:
/etc/letsencrypt/live/airsonic.example.com/fullchain.pem
密钥文件将保存在这里:
/etc/letsencrypt/live/airsonic.example.com/privkey.pem
Let's Encrypt SSL证书的有效期是3个月。您可以设置一个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加密证书。
步骤6:将Nginx安装为反向dl
在Nginx的帮助下,您既可以方便访问者访问(这样他们就不再需要输入8080端口号),又可以在AirSonic网站上启用HTTPS安全性。
使用APT安装Nginx:
sudo apt install -y nginx
接下来,为AirSonic创建一个配置文件:
cat <<EOF | sudo tee /etc/nginx/sites-available/airsonic.conf# Redirect HTTP to HTTPSserver { 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.servicesudo systemctl enable nginx.service
最后,将您最喜欢的web浏览器指向http://airsonic.example.com/airsonic或https://airsonic.example.com/airsonic,开始探索您的AirSonic网站。
搬瓦工新手必读教程和推荐套餐
搬瓦工新手选择服务器必备的教程。
1、搬瓦工购买教程:搬瓦工VPS主机购买教程 选择一款合适的外贸主机
2、搬瓦工优惠码:BWH3HYATVBJW
3、搬瓦工套餐推荐:搬瓦工云服务器全部套餐对比列表 可选CN2 GIA和香港机房
4、搬瓦工测试IP:搬瓦工全部数据中心测试IP地址和下载测速文件
5、搬瓦工面板管理:搬瓦工KIWIVM面板的全部功能介绍
搬瓦工VPS的最便宜套餐和最具性价比套餐,简单整理如下:
方案 | CPU | 内存 | 硬盘 | 流量 | 带宽 | 机房 | 价格 | 购买 |
---|---|---|---|---|---|---|---|---|
CN2 GT | 1核 | 1GB | 20GB | 1TB | 1Gbps | DC8等 | $49.99/年 | 购买 |
香港 | 2核 | 2GB | 40GB | 500GB | 1Gbps | 香港 | $89.99/月 | 购买 |
CN2 GIA | 2核 | 1GB | 20GB | 1TB | 2.5Gbps | DC6等 | $49.99/季 | 购买 |
CN2 GIA | 10核 | 32GB | 640GB | 10TB | 10Gbps | DC6等 | $289.99/月 | 购买 |
日本 | 2核 | 1GB | 20GB | 1TB | 2.5Gbps | DC6等 | $49.99/季 | 购买 |
本文结束。
未经允许不得转载:国外服务器评测 » 搬瓦工VPS安装AirSonic(基于ubuntu18.04 LTS)