Skip to content

Installation

Dongsheng Cai edited this page Aug 13, 2014 · 53 revisions

Install required ubuntu packages

sudo apt-get install python-pip python-dev build-essential mongodb

Create directories to store certificates and private keys

sudo mkdir -p /var/airnotifier/pemdir

Get AirNotifier app

cd ~
git clone git://github.com/airnotifier/airnotifier.git airnotifier
cd airnotifier
# Install required python packages
sudo pip install -r requirements.txt

Setup AirNotifier

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

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

python install.py

Start AirNotifier app

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

Set up AirNotifier

  • 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 apnscertificate.cer and double click on it to install it in keychain.
  • Convert the apnscertificate.cer file into apnscertificate.pem file
openssl x509 -in apnscertificate.cer -inform der -out apnscertificate.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 privatekey.p12 -nocerts -out privatekey.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.key -out privatekey.key
  • Upload both apnscertificate.pem and privatekey.key to AirNotifier.
  • Launch the server, no error message should appear.
Android push notification settings
WNS push notification settings
MPNS 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

(Credits to Jerome Mouneyrac)

Clone this wiki locally