MS SQL Server 2000 на определенном адресе

saveliev_a

Как заставить слушать MS SQL Server 2000 слушать только на определенном адресе? То есть, чтобы он воспринимал только запросы, приходящие на адрес 127.0.0.1?
Вот так теперь это выглядит.


>netstat -an | grep 1433
TCP 0.0.0.0:1433 0.0.0.0:0 LISTENING


А хотелось бы, чтобы выглядело.


>netstat -an | grep 1433
TCP 127.0.0.1:1433 0.0.0.0:0 LISTENING

voronetskaya

файерволом закрой от остальных

saveliev_a

Это ответ на другой вопрос. А именно, как предотвратить коннект извне. А у меня вопрос был "Как заставить слушать MS SQL Server 2000 слушать только на определенном адресе?".

Marikun

А можно задачу поподробнее? Зачем это надо? Вроде как в самом MS SQL никаких средств для этого не замечал.

saveliev_a

Именно для того, чтобы можно было приконнектиться только с локального адреса. Сейчас как раз фаерволю все соединения на 1433 не с локального компа. Но хотелось бы обойтись без фаервола.
Я сам, когда не нашел соответствующей настройки в стандартных средствах, сильно удивился. Возникла мысль, что может кто знает более хитрый путь. Может есть какой ключ в реестре, отвечающий за это.

Marikun

Ты хочешь стандартную функциональность файервола, СУБД вроде как и не при чем. Так что удивляться по-моему нечему.

Marikun

Да, еще вспомнил такую фишку. Есть версии SQL Server - что-то вроде developper edition или что-то вроде того. Вроде как эта версия подоразумевает, что данный сервер будет "stand-alone". Посмотри, может, тебе достаточно просто использовать эту версию.
В свое вермя програмировал доступ к MS SQL через DAO, и не получилось домогаться до stand-alone сервака извне теми методами, которыми получалось получить доступ к обычному серверу.

saveliev_a

Ага. А теперь хинт. Вот кусок конфига апача


Listen 12.34.56.78:80


А вот Serv-U FTP Server


Domain1=0.0.0.0||21|unknown.v.ru|1|0


В nix есть вызов bind. В винде 100% есть аналогичный вызов. Так что это все-таки свойство программы. Равно как и то, на каком порту слушать.

saveliev_a

У меня и стоит Developer Edition. От Enterprise функциональностью практически не отличается, но ставится и на WinXP Pro, что мне и надо было. Так что не в ту сторону пошел разговор.

saveliev_a

Вот. Нашел.
Developer edition is designed to allow developers to build any type of application on top of SQL Server. It includes all the functionality of Enterprise Edition but with a special development and test end-user license agreement (EULA) that prohibits production deployment. It is the ideal choice for Independent Software Vendors (ISVs consultants, system integrators, solution providers, and corporate developers developing and testing applications because it is cost effective, runs on a variety of platforms, and can be upgraded for production use to SQL Server 2000 Enterprise Edition.
It is the only edition of SQL Server 2000 that gives the licensee the right to download and install SQL Server 2000 Windows CE Edition (SQL Server CE). The Developer Edition licensee also has the right to redistribute SQL Server CE-based applications to an unlimited number of devices at no additional cost beyond the purchase price of SQL Server 2000 Developer Edition.

Marikun

Не уловил в чем хинт. Ну закодили где-то программисты мелкософт, что надо слушать такой-то порт и дальше что? Тебе же никто не даст ковыряться в их коде.
Или я не уловил твою идею?

saveliev_a

Не уловил. Прикол в том, что слушающий порт настраивается в Enterprise Manager. А вот IP - нет. И это очень плохо.

Marikun

Могу привести пример кучи софта, где можно настроить порт, а вот ограничить IP нельзя. Так что ничего необычного не вижу. Ты же какую-то софтину пишешь? Реализуй необходимую безопасность на ее уровне. Безопасность на стороне СУБД - это немного другое...

Dasar

Настраиваемый порт - это нужная штука - например, для случая, когда надо поднять две базы, или базу и еще что-то.
А вот придумать задачи, когда необходимо слушать только на определенном ip-и - я не могу.

freezer

ну может не хотят с правами заморачиваться?...

Dasar

Напомню, что обычно:
1. Web-сервер и sql-сервер ставятся на разные компьютеры
2. Компьютер на котором стоит Sql-сервер обычно не является gate-овым
Исходя из пункта 2 - на компьютере есть только два интерфейса: внешний и локальный
исходя из пункта 1 - sql-сервер все равно надо поднимать на внешнем интерфейсе
Исходя из вышеперечисленного, я не понимаю, чем поднятие сервера на нужном интерфейсе поможет с безопасностью?

freezer

Напомню, что обычно:
1. Web-сервер и sql-сервер ставятся на разные компьютеры

Не обычно, а в общем случае. То что можно ставить на разные машины - это как бы дополнительная необязательная фича.

Marikun

В общем надо услышать более общую постановку задачи и исходя из нее придумывать, что лучше всего сделать.

Dasar

> как бы дополнительная необязательная фича.
т.е. тебя не пугает, что после получения админских прав на web-сервере будет убита и sql-база?

bobby

можно ограничить права вебсерверу, тогда тот, кто их получит, базу не убьет.
т.е. при нормальной схеме безопасности вебсервер и sql-сервер будут работать достаточно независимо (настолько, чтобы взлом одного из них ничего не дал взломщику для взлома второго).
[update] разумеется, я не отрицаю, что схема с серверами, разнесенными физически, потенциально более безопасна +)

freezer

съест-то он съест, да кто ж ему даст?
Если винда надежна - то процессы веб-сервера и базы никак друг на друга не повлияют (больше чем позволено процессу сервера) даже если они будут на одном компе
Оставить комментарий
Имя или ник:
Комментарий: