Skip to content

Installation 2.x

Dongsheng Cai edited this page Aug 18, 2019 · 12 revisions

Install AirNotifier App Server

Install required ubuntu packages

sudo apt-get install python3-pip build-essential mongodb git
sudo pip3 install pipenv

Create directories to store certificates and private keys

sudo mkdir -p /var/airnotifier/pemdir

Download AirNotifier app

cd ~
git clone -b 2.x git://github.com/airnotifier/airnotifier.git airnotifier
cd airnotifier
pipenv install --deploy

Copy config.py-sample to config.py, and change the settings accordingly. (change pemdir to /var/airnotifier/pemdir)

Run the command below to set up the initial admin user:

pipenv run ./install.py

Starting AirNotifier app

sudo python app.py >> airnotifier.log 2>> airnotifier.err

Setting up AirNotifier in browser

  • In your browser: http://your_server_ip_address:8801 - Login as admin/admin
  • Create a new an application

iOS push notification settings

  • In the application page you need to upload the certificate + key. Follow the steps indicated in developer.apple.com to create a new Development Push Notification certificate. To summarize, in keychain you'll create a signing request file (it will also generate a public and private key) and upload it to developer.apple.com.
  • Download the generated aps_development.cer and double click on it to install it in keychain.
  • Convert the aps_development.cer file into aps_development.pem file
openssl x509 -in aps_development.cer -inform der -out aps_development.pem
  • From keychain export the private key in privatekey.p12 (you'll need to enter an export password). This private key has for name what you enter as "Common name" in during the signing request generation,
  • Extract the key from this p12 file:
openssl pkcs12 -in Certificates.p12 -nocerts -out privatekey_with_password.key

You'll have to enter the export password and add a new PEM phrase.

  • Remove the PEM phrase from the key:
openssl rsa -in privatekey_with_password.key -out privatekey.key
  • Upload both aps_development.pem and privatekey.key to AirNotifier.
  • Launch the server, no error message should appear.

Android FCM push notification settings

Set up iptables rules (optional)

sudo vim /etc/iptables.up.rules

Add:

-A INPUT -p tcp -m state --state NEW,ESTABLISHED -s YOUR_SERVER_IP -d YOUR_SERVER_IP --dport 27017 -j ACCEPT
-A INPUT -p tcp -m state --state NEW --dport 8801 -j ACCEPT
sudo /sbin/iptables -F
sudo /sbin/iptables-restore < /etc/iptables.up.rules
Clone this wiki locally