Перейти к содержимому

Как открыть порт 3306 для mysql ubuntu

  • автор:

Форум русскоязычного сообщества Ubuntu

Страница сгенерирована за 0.045 секунд. Запросов: 23.

  • Сайт
  • Об Ubuntu
  • Скачать Ubuntu
  • Семейство Ubuntu
  • Новости
  • Форум
  • Помощь
  • Правила
  • Документация
  • Пользовательская документация
  • Официальная документация
  • Семейство Ubuntu
  • Материалы для загрузки
  • Совместимость с оборудованием
  • RSS лента
  • Сообщество
  • Наши проекты
  • Местные сообщества
  • Перевод Ubuntu
  • Тестирование
  • RSS лента

© 2012 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.

unixforum.org

Как в mysql открыть порт 3306 для доступа извне? (желательно привязка по ip )

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модератор: SLEDopit

6 сообщений • Страница 1 из 1
vladtopalov87 Сообщения: 57

Как в mysql открыть порт 3306 для доступа извне?

Как в mysql открыть порт 3306 для доступа извне?

желательно для определенный ip
спасибо

Спасибо сказали:
keir Сообщения: 317 ОС: linux Контактная информация:

Re: Как в mysql открыть порт 3306 для доступа извне?

Сообщение keir » 25.02.2007 12:39

Возможно имеется ввиду то, что по-умолчанию MySQL смотрит только на 127.0.0.1
За это отвечает строчка bind-address в файле my.cnf.
Закоменнтировать ее, а для отдельных ip уже рулить iptables-ом.

Безопасно ли открывать порт mysql в мир?

Добрый день. Имеется веб сервер на OS Ubuntu. На этом сервере в мир смотрит только 80 порт.
На этом сервере 5 сайтов. Для каждого сайта создан свой пользователь в ОС и в базе mysql. mysql сервис слушает только ip 127.0.0.1
Безопасно ли открыть в мир порт 3306 ?
Какие нужно задать права пользователю , к примеру «webuser1» выполнять импорт и экспорт базы mysql?
Это нужно разработчикам, только для одного сайта.

  • Вопрос задан более трёх лет назад
  • 2926 просмотров

Комментировать
Решения вопроса 1
Программер чего попало на чем попало

Да, небезопасно, альтернативы
1. поднять VPN, доступ к мускулю снаружи только по впн, не напрямую (резать в iptables)

2. (сам использую) пускать разрабов с пробросом портов по ssh. Себе настроил путти (батник):
putty.exe -ssh user@site.ru -L 3396:localhost:3306
в итоге на компе любой удобный и привычный софт можно использовать, указывая в качестве сервера БД
127.0.0.1:3396, со стороны сервера они выглядят как коннекты с localhost
На сервере завести отдельного юзера с минимальнейшими правами — ему даже входить не обязательно в шелл, только до локального сокета достучаться, плюс настроить авторизацию по сертификату для полного удобства.

дополнительный бонус — с использованием ключа «-C» будет еще и компрессия данных, что может приятно повлиять на скорость передачи хорошо сжимаемых данных.

Как открыть порты для внешнего доступа к mysql ?

Если в iptables блокируются все входящие соединения (INPUT DROP) и чтобы открыть внешний доступ к MySQL необходимо добавить правила:

iptables -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT

Чтобы открыть доступ только конкретной сети, например 10.0.0.0/24:

iptables -A INPUT -s 10.0.0.0/24 -p tcp -m tcp --dport 3306 -j ACCEPT

Чтобы удалить правило укажем ту же команду, заменив -A на -D, например:

iptables -D INPUT -p tcp -m tcp --dport 3306 -j ACCEPT

Посмотреть список правил можно командой:

sudo iptables -nvL

Сохранить правила фаервола:

iptables-save > /root/dsl.fw

Восстановить правила фаервола к дефолтам:

iptables-restore < /root/dsl.fw

Замечу, для того чтобы открыть внешний доступ, также нужно в конфигурационном файле my.cnf закомментировать строку «bind-address = 127.0.0.1».

Если по умолчанию INPUT ACCEPT, то сначала укажем с каких IP разрешен доступ, а только последним правилом заблокируем всем остальным:

iptables -A INPUT -s 127.0.0.1 -p tcp --destination-port 3306 -j ACCEPT
iptables -A INPUT -s 192.168.1.5 -p tcp --destination-port 3306 -j ACCEPT
iptables -A INPUT -p tcp --dport 3306 -j DROP

Например используя nmap можно проверить локально и внешне фильтруется ли доступ:

nmap -p 3306 localhost nmap -p 3306 192.168.1.5

P.S. если установлена хостинг панель, то это не сработает. Например, в ISPManager нужно перейти в System > System > Firewall и добавить порт 3306

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *