| (In)security allgemein Sicherheit, Anonymität im Netz. Schutz und Maßnahmen. Prävention und Konzepte. Sicherheitsarchitekturen allgemein und auf der Netzwerkebene. |
Diskussion: SQL Server ins Netz im Forum (In)security allgemein, in der Kategorie Security Area; Anzeige Hallo, ich habe eine Frage zum Thema SQL Server und Sicherheit im Internet. Ich habe einen SQL Server auf ...
![]() |
| | #1 (permalink) |
| SQL Server ins Netz Anzeige Hallo, ich habe eine Frage zum Thema SQL Server und Sicherheit im Internet. Ich habe einen SQL Server auf dem sehr wichtige Daten gespeichert sind. Allerdings müssen mehrere Nutzer per Internet auf diesen Server zugreifen um an die Daten zu kommen. Die Verbindung zum Server findet einmal über eine Internetseite statt (die auf dem SQL Server gehostet wird), aber auch über ein Programm von mir. Da das Programm direkt von außen auf den Server zugreifen muss und nicht über die Internetseite möchte ich wissen wie ich dieses Problem am besten löse, da sich der Server hinter einer Firewall befindet. Ich könnte natürlich den Port im Internet freischalten und das Problem wäre gelöst, meine Frage ist nur ob dies eine sichere Möglichkeit ist. Ist es klug einen SQL Server direkt ins Internet freizugeben oder gibt es eine andere Möglichkeit die Firewall nur für authorisierte Nutzer zu umgehen, hatte da an VPN gedacht kenne mich aber leider noch nicht so gut damit aus. Ich wäre sehr dankbar über eure Meinungen zu dem Thema. | |
| | |
| | #2 (permalink) |
| Registriert seit: 03.10.01 ![]() Likes: 0 | Hast du mal geschaut, ob sich der SQL Server so konfigurieren lässt, dass der Netzwerk-Zugriff nur via SSL funktioniert? Ich meine mal gelesen zu haben, dass das möglich ist, das ist aber schon lang her. Aber recherchieren würde ich an deiner Stelle schon mal in die Richtung SSL... PS: Falls das funktioniert, kannst du das ja hier mitteilen, das ist nämlich gar kein so uninteressantes Thema. |
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
| Moderator ![]() Registriert seit: 30.09.06 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 442 | Die einfachste Lösung ist meist ein SSH-Tunnel, der dann für den direkten Zugriff genutzt wird.
__________________ Mein Blog - Mein Job - Diaspora Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund. Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+ |
| | |
| | #4 (permalink) |
| Moderator ![]() Registriert seit: 30.03.04 ![]() Likes: 14 | Hallo, zuerst solltest du die Zugriffsrechte von Nutzer sehr stark eingrenzen, die von außen auf den SQL Server zugreifen können. Sprich, der root-Login darf ausschließlich über localhost erfolgen, während bei den Nutzern die auch von draußen drauf können die Rechte minimal gehalten werden sollten. Auch empfiehlt es sich den Login über SSH vorzunehmen oder zur not über SSL. Aber wie gesagt, das Zugriffsmodell ist hier das wichtigste. Wenn ein externe User nur unwichtige Daten aus der DB benötigt, sollten diese getrennt von den sensiblen Daten abgespeichert werden. Da ich deine Anwendung nicht kenne, gibts auch die Möglichkeit des Vermittlers in form eines Webservice. Der SQL Server bleibt weiterhin nur über localhost zu erreichen, die Programme die aber auf die Daten zugreifen unterhalten sich dann z.B. mit einem PHP Script der die entsprechenden Daten aus der DB liest und weiterschickt. Hier hat man aber den Sicherheitsschwerpunkt entsprechend verlagert und muss dann sicher gehen, dass die Daten sicher (verschlüsselt) beim Programm ankommen (z.B. über HTTPS). Auch über die Authenfizierung am PHP Script (o.ä.) muss man sich Gedanken machen, hängt aber wieder davon ab, welche Daten die externen Progs brauchen. Auch die Performance ist bei Webservices nicht die Beste. Allerdings kann man eine recht gute Skalierbarkeit erhalten. Ein kompromittierter Account kann u.U. so nur relativ wenig Schaden anrichten, wenn der Webservice die Arbeit übernimmt. Ein Beispiel: Du hast ein Programm, dort kann der User z.B. (virtuelle) Gegenstände kaufen, dafür wird dann sein Konto belastet. Ein Programm könnte (vereinfacht) dafür die folgenden SQL Anweisungen senden: INSERT INTO gekaufteArtikel (userid, itemid) VALUES (123,456); UPDATE usertable SET credits = credits-1 WHERE userid=123; Ein geschickter Angreifer könnte das UPDATE einfach nicht senden lassen oder das Prog. so manipulieren dass dort +1 steht, und schon hat er unendlich viele Credits. Ein Webservice würde nur die itemid entgegennehmen und dann die entsprechenden SQL Anweisungen ausführen. Ein Angriff auf die SQL Befehle wäre damit kaum mehr möglich. |
| | |
| | #5 (permalink) |
| Themenstarter | Vielen Dank für die schnelle Hilfe, auf dieses Board ist immer Verlass Ich habe mal ein bisschen gegoogelt und der Ansatz mit einer verschlüsselten SSH Verbindung scheint mir auch die beste Möglichkeit zu sein um die Daten möglichst sicher zu versenden. Eure Tips haben mir sehr weitergeholfen, danke an alle! |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Router und Linux-Server im gleichen Netz(IP) | MrSpider | Network · LAN, WAN, Firewalls | 4 | 25.08.09 13:40 |
| Zwei Server im Netz?? | moder | Network · LAN, WAN, Firewalls | 6 | 10.04.08 18:18 |
| Mit 2. PC ins netz | Phelis | Network · LAN, WAN, Firewalls | 2 | 21.12.06 21:05 |
| -= 3 PC´s per LAN ins Netz mit 1 FW ? =- | Terrorspike | Network · LAN, WAN, Firewalls | 9 | 08.03.06 10:26 |
| mit Win 3.1 ins Netz! | Chris | Network · LAN, WAN, Firewalls | 10 | 02.02.02 23:22 |