Remove SSL support

If there's a need for SSL, you can always use a reverse proxy or
a more advanced WSGI server.

This reverts commit 1678890d3d.
This commit is contained in:
flan 2017-10-28 05:50:18 +02:00
parent c398ccdb89
commit bd2c5bdff9
3 changed files with 8 additions and 22 deletions

View File

@ -21,14 +21,13 @@ this is just a matter of:
install some of the dependencies we need there: install some of the dependencies we need there:
$ virtualenv ankisyncd.env $ virtualenv ankisyncd.env
$ ankisyncd.env/bin/easy_install webob simplejson eventlet $ ankisyncd.env/bin/easy_install webob simplejson
3. Patch the bundled libanki: 3. Patch the bundled libanki:
$ ./patch_libanki.sh $ ./patch_libanki.sh
4. Copy the example.ini to production.ini and edit for your needs. Warning: If 4. Copy the example.ini to production.ini and edit for your needs.
you disable SSL, login credentials will be transported in plain text!
5. Create authentication database: 5. Create authentication database:
@ -53,11 +52,9 @@ To make Anki use ankisyncd as its sync server, create a file (name it something
like ankisyncd.py) containing the code below and put it in ~/Anki/addons. like ankisyncd.py) containing the code below and put it in ~/Anki/addons.
import anki.sync import anki.sync
import httplib2
anki.sync.SYNC_BASE = 'http://127.0.0.1:27701/' anki.sync.SYNC_BASE = 'http://127.0.0.1:27701/'
anki.sync.SYNC_MEDIA_BASE = 'http://127.0.0.1:27701/msync/' anki.sync.SYNC_MEDIA_BASE = 'http://127.0.0.1:27701/msync/'
anki.sync.httpCon = lambda: httplib2.Http()
Replace 127.0.0.1 with the IP address or the domain name of your server if Replace 127.0.0.1 with the IP address or the domain name of your server if
ankisyncd is not running on the same machine as Anki. ankisyncd is not running on the same machine as Anki.

View File

@ -1,9 +1,6 @@
[sync_app] [sync_app]
host = 127.0.0.1 host = 127.0.0.1
port = 27701 port = 27701
ssl = true
certfile = /etc/ssl/certs/server.pem
keyfile = /etc/ssl/private/privkey.pem
data_root = ./collections data_root = ./collections
base_url = /sync/ base_url = /sync/
base_media_url = /msync/ base_media_url = /msync/

View File

@ -739,28 +739,20 @@ def make_app(global_conf, **local_conf):
return SyncApp(**local_conf) return SyncApp(**local_conf)
def main(): def main():
from eventlet import wsgi,wrap_ssl,listen from wsgiref.simple_server import make_server
from ankisyncd.thread import shutdown from ankisyncd.thread import shutdown
config = SafeConfigParser() config = SafeConfigParser()
config.read("ankisyncd.conf") config.read("ankisyncd.conf")
ankiserver = SyncApp(config) ankiserver = SyncApp(config)
host = config.get("sync_app", "host") httpd = make_server('', config.getint("sync_app", "port"), ankiserver)
port = config.getint("sync_app", "port")
if(config.getboolean("sync_app", "ssl")):
certfile = config.get("sync_app", "certfile")
keyfile = config.get("sync_app", "keyfile")
socket = wrap_ssl( listen((host, port)),
certfile=certfile,
keyfile=keyfile,
server_side=True )
else:
socket = listen((host, port))
try: try:
wsgi.server(socket, ankiserver) print "Starting..."
httpd.serve_forever()
except KeyboardInterrupt:
print "Exiting ..."
finally: finally:
shutdown() shutdown()