After various requests regarding an english tutorial on how to setup your own SiriProxy i decided to write an english version.
Some notes about what you get after doing all of this: You will have a working SiriProxy which enables you to use Siri on every hardware which runs a SiriGUI (iPhone 4, iPhone 3GS etc). You can f.e. feel free to write an Android Siri GUI and use Siri on Android.
please Note that siriproxy got updated! No Need to edit it anymore! Oh and if you like my work and want to say thanks ... Donate ... Because i am doing this in my free Time
Updated the tutorial a bit to understand how it works in more detail
Please check the latest guides on my blog. there are automatic scripts etc!! which is a lot easier than doing step by step! for example this post here.
- a fully working SiriGUI
- 1 important key from an iPhone 4S (validationdata) or best an iPhone 4S =)
- Linux / MacOS ( i am working here on a OpenSuse 11.4 but tested it aswell in a debian. so any unix is fine)
- modified SiriProxy - get it here
Installing all needed Tools
Note: in OpenSuse "zypper" is used for installing packages. In any other Linux you can use "apt-get".
All needed Software:
zypper install openssl
zypper install libopenssl-devel
zypper install zlib
zypper install zlib-devel
zypper install ruby
zypper install ruby-gems
zypper install make
zypper install gcc
zypper install gcc-c++
zypper install libxml2*
All needed ruby gems:
on linux: gem install eventmachine -- --with-ssl-dir=/usr/bin/openssl
on mac: gem install eventmachine
gem install CFPropertyList
gem install httparty
gem install json
gem install uuidtools
Create a Directory ( in my case /~):
Create own Certificates:
(use any password and information you want)
openssl genrsa -des3 -out ca.key 4096
openssl req -new -x509 -days 365 -key ca.key -out ca.crt
openssl genrsa -des3 -out server.key 4096
(enter your ip or hostname in "common name" .. important! - if you want to use an iPhone 4S use "guzzoni.apple.com")
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.passless.crt
openssl rsa -in server.key -out server.key.insecure
mv server.key server.key.secure
mv server.key.insecure server.passless.key
Install the certificate on your phone
Email the ca.crt file to yourself and open it in your iPhone. Then press install.
Editing the ProxyServer
This is not needed anymore because of new version! Just connect a iPhone 4S and the data will be saved automaticly :)
Starting the Server
if you are root start it with:
if you are not root ( Ubuntu, MacOS etc):
sudo ruby start.rb
If you want to connect an iPhone 4S and used "guzzoni.apple.com" as Host in your certs you need a fake dns
then try Siri =)
note: this steps only if you dont have iPhone 4S to connect to your server!
Edit the com.apple.assistant.plist via iFile and change "https://guzzoni.apple.com" to "https://YOURIP_OR_DYNDNS" for example in my case for my local network: "https://192.168.0.24"
then try Siri =)
Connecting an iPhone 4S
Please read my tutorial about how to setup VPN on your linux box.
then vpn into your linux with your iphone 4s and use siri =)
OMFG it works !!!!1111eleven but what now?
You can use Siri on the go by 2 ways:
1 - setting up vpn (ppptp is very easy on linux!) to use Siri everywhere (which is needed for iPhone 4S)
check the tutorial here
2 - open SiriProxy Port in your Firwall / Router ( its Port 443) and connect this way.
3 - putting it on a dedicated Server like:
With all this stuff above you have running your own SiriProxy on your own Server. So your data and your phone belongs to you. read on why:
By the way: all the "working" Distributions (like h1Siri) you find outthere are doing exact the same as described above. they have a server and run siriproxy. The Problem is, as more people using it, as less it works for various reasons. Please note as well, that all these "working" ports just arrived after my post on last friday when i made public how to edit the siriproxy ;-)
another important note for using an UNKNOWN PUBLIC siriproxy server (like the one from h1siri)
your iPhone and Siri are sending an massive amount of private data to the server which can be saved there.
- your contacts
- your SMS
- who YOU are (apple id etc)
- where you are
the people running the server can write own plugins to do things on your phone you even dont notice!
so please DONT USE SERVERS YOU DONT KNOW! Seriously people! DONT DO THAT!
You can watch a Video from plamoni about the privacy etc here: http://youtu.be/Y_Q6PfxBSbA
if you liked what you read feel free to "+1"
note: SiriProxy is not coded by me. I just modified the source from plamoni to make it work in a way you can use any other device.