Webhosting Python absichern

Alles, was nicht direkt mit Python-Problemen zu tun hat. Dies ist auch der perfekte Platz für Jobangebote.
Antworten
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Hallo

Für mein neues Programm (wird noch nicht verraten) will ich noch (so als Schmankerl) einen kleinen Webhosting Deinst aufbauen ([gratis] und gegen €),
dazu möchte ich wie die meisten Hoster Python als CGI anbieten, evtl auch Django. Jetzt die Frage, wie stelle ich das am besten an?

der Server ist Apache, und Python läuft mit "AddHandler cgi-script .py".
ich habe mit das bisher so gedacht:
-jeder Kunde erhält einen Ordner mit ferster Größe, http://enotacoes.wordpress.com/2010/10/ ... -in-linux/
-der Ordner gehört der Gruppe "www-data"
-php kann ich eindämmen mit "php_admin_value open_basedir" und "disable_functions"
-mysql und phpmyadmin sind auch keine Probleme
-ftp-server schreibe ich selber mit: http://code.google.com/p/pyftpdlib

-der Kunde hat kein Benutzerkonto auf dem Ubuntu (10.04) System

Wie machen das jetzt die anderen Hoster, wollte jetzt nicht bei Strato rum "Hacken" um zu schauen was ich allem machen kann.

Gruß
Andy
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Ich würde anstelle von CGI WSGI vorschlagen. Wie man das alles sicher gestaltet kann ich Dir auch nicht sagen - aber WSGI ist für Python-Webhosting imho die bessere Wahl.
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
apollo13
User
Beiträge: 827
Registriert: Samstag 5. Februar 2005, 17:53

Andyh hat geschrieben: dazu möchte ich wie die meisten Hoster Python als CGI anbieten, evtl auch Django. Jetzt die Frage, wie stelle ich das am besten an?
Kein ordentlicher Pythonhoster bietet Python via CGI an
-jeder Kunde erhält einen Ordner mit ferster Größe, http://enotacoes.wordpress.com/2010/10/ ... -in-linux/
Quotas sind wohl einfacher und auch sinnvoller.
-php kann ich eindämmen mit "php_admin_value open_basedir" und "disable_functions"
Glaube kaum dass das reicht.
-mysql und phpmyadmin sind auch keine Probleme
Ähhhhhhhhhhm…
-ftp-server schreibe ich selber mit: http://code.google.com/p/pyftpdlib
Lieber was ordentliches verwenden was (relativ) sicher ist ala vsftp.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Andyh hat geschrieben:-der Kunde hat kein Benutzerkonto auf dem Ubuntu (10.04) System
Warum nicht? ich würde genau das machen, um die Prozesse des Users mit seinen Berechtigungen laufen zu lassen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
nemomuk
User
Beiträge: 862
Registriert: Dienstag 6. November 2007, 21:49

Alles in allem kann man dir zum derzeitigen Moment definitiv nicht empfehlen einen solchen Hosting Service anzubieten!
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Hallo
Alles in allem kann man dir zum derzeitigen Moment definitiv nicht empfehlen einen solchen Hosting Service anzubieten!
Nö das stimmt nicht, nur weil der jetzige Ansatz käse ist heist das ja nicht das ich das nicht kann.

Keiner kann alles einfach so, ich habe mich z.B. weiter eingelesen und musste selber feststellen das meine ersten Überlegungen (Falsch) sind.
Ich bin jetzt schon ein stück weiter mit meinen Überlegungen:

echte Userkonten im System mit den dazugehörigen rechten

FTP/QUOTA: http://www.proftpd.org/docs/howto/Quotas.html

PHP: Noch keine Änderungen, kommen aber noch

Python: Ist erstmal rausgeflogen


Gruß
Andy
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Wenn du über Hosting nachdenkst, definiert IMHO Heroku, wie einfach es mindestens sein muss. Mit CGI oder FTP gewinnst du da keinen Blumentopf. Bei Heroku kann ich mit einem simplen Befehl ein neues Projekt erzeugen, welches automatisch derart mit git verknüpft ist, dass ich später nur ein "git push heroku master" machen muss, um meinen Code zum Hoster zu übertragen und dort automatisch meine Anwendung zu starten bzw. neu zu starten. Für Ruby geht das bei Heroku komplett automatisch, für andere Sprachen muss man ein bisschen mehr tun, aber Python (z.B. mittels CherryPy) funktioniert auch. Lief was schief, kann ich automatisch ein Rollback machen. Des weiteren erlaubt Herokus Architektur eine gute Skalierbarkeit. Billig ist das nicht, aber super bequem.

Siehe auch http://www.quora.com/What-is-the-Heroku ... plications

Stefan
Antworten