Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
wiki:sharing_internet [2013/08/22 14:50] [Прокси-сервер squid] |
wiki:sharing_internet [2014/05/16 22:39] (текущий) |
||
---|---|---|---|
Строка 5: | Строка 5: | ||
Собственно, установка шлюза на базе Ubuntu Server занимает не больше 10-15 минут. | Собственно, установка шлюза на базе Ubuntu Server занимает не больше 10-15 минут. | ||
+ | ===== PPPoE ===== | ||
Если Вы используете для подключения по локальной сети [[wpru>PPPoE|PPPoE]], вам необходимо просто-напросто ввести в терминале команду: <code>sudo pppoeconf</code> | Если Вы используете для подключения по локальной сети [[wpru>PPPoE|PPPoE]], вам необходимо просто-напросто ввести в терминале команду: <code>sudo pppoeconf</code> | ||
и дать ответы на вопросы. По окончании работы ''pppoeconf'' соединение должно быть установлено. | и дать ответы на вопросы. По окончании работы ''pppoeconf'' соединение должно быть установлено. | ||
+ | |||
+ | ===== L2TP ===== | ||
+ | Если Вы используете для подключения к провайдеру[[wpru>L2TP|L2TP]], то | ||
+ | для этого понадобится установить xl2tpd — демон l2tp и pppd — демон ppp.((Настройка на примере Билайна)) | ||
+ | |||
+ | Устанавливаем: | ||
+ | <code bash>sudo apt-get install pppd xl2tpd</code> | ||
+ | |||
+ | Редактируем файл настроек xl2tpd: | ||
+ | |||
+ | <code bash>sudo nano /etc/xl2tpd/xl2tpd.conf</code> | ||
+ | |||
+ | <file bash>[global] | ||
+ | access control = yes # разрешать соединения только с адресами из lac секций | ||
+ | |||
+ | [lac beeline] | ||
+ | lns = tp.internet.beeline.ru # адрес для подключения | ||
+ | redial = yes # "перезвонить" при потере связи | ||
+ | redial timeout = 10 # время между попытками переустановить связь после обрыва(в секундах) | ||
+ | max redials = 100 # максимальное количество попыток | ||
+ | autodial = yes # устанавливать соединение при запуске xl2tpd | ||
+ | require pap = no # не использовать pap аутентификацию | ||
+ | require chap = yes # использовать chap аутентификацию | ||
+ | require authentication = no # не использовать аутентификацию удаленного сервера | ||
+ | name = 000ххххххх # логин | ||
+ | pppoptfile = /etc/ppp/options.l2tp # файл с опциями ppp | ||
+ | ppp debug = yes # вывод подробной информации pppd в syslog | ||
+ | tx bps = 100000000 # скорость туннеля</file> | ||
+ | |||
+ | Затем редактируем: | ||
+ | |||
+ | <code bash>sudo nano /etc/ppp/options.xl2tp</code> | ||
+ | |||
+ | <file>000ххххххх #номер договора | ||
+ | noauth | ||
+ | nobsdcomp # | ||
+ | nodeflate # параметры сжатия пакетов | ||
+ | nopcomp # | ||
+ | noaccomp # | ||
+ | connect /bin/true | ||
+ | remotename beeline # метка для удаленного сервера | ||
+ | ipparam beeline # дополнительный параметр для системных скриптов | ||
+ | defaultroute # маршрут по умолчанию через ppp интерфейс | ||
+ | replacedefaultroute | ||
+ | mtu 1460</file> | ||
+ | |||
+ | Записываем в файл chap-secrets логин и пароль: | ||
+ | |||
+ | <code bash>sudo nano /etc/ppp/chap-secrets:</code> | ||
+ | |||
+ | |||
+ | <file>login * password</file> | ||
+ | |||
+ | |||
+ | Запускаем xl2tpd, | ||
+ | |||
+ | <code bash>sudo service xl2tpd start</code> | ||
+ | |||
+ | соединение должно быть установлено. | ||
На установленной машине Интернет появился. Теперь надо добавить включить все репозитарии в ''/etc/apt/source.list'' и выполнить: <code>sudo apt-get update</code> | На установленной машине Интернет появился. Теперь надо добавить включить все репозитарии в ''/etc/apt/source.list'' и выполнить: <code>sudo apt-get update</code> | ||
Строка 43: | Строка 103: | ||
Затем для заворачивания нужных портов на прокси-сервер прописывается правило: | Затем для заворачивания нужных портов на прокси-сервер прописывается правило: | ||
- | <code>iptables -t nat -A PREROUTING -i eth0 ! -d 192.168.0.0/24 -p tcp -m multiport --dport 80,8080 -j DNAT --to-destination 192.168.0.1:3128</code> | + | <code>iptables -t nat -A PREROUTING -i eth0 ! -d 192.168.0.0/24 -p tcp -m multiport --dports 80,8080 -j DNAT --to-destination 192.168.0.1:3128</code> |
====== Раздача Интернета в локальную сеть c помощью firestarter ====== | ====== Раздача Интернета в локальную сеть c помощью firestarter ====== | ||
Строка 83: | Строка 143: | ||
<code>sysctl -w net.ipv4.ip_forward="1"</code> | <code>sysctl -w net.ipv4.ip_forward="1"</code> | ||
- | Затем добавляем правило для [[wpru>/NAT|NAT]]: | + | Затем добавляем правило для [[wpru>NAT|NAT]]: |
<code>iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE</code> | <code>iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE</code> | ||
Где eth0 название вашего интерфейса через который выходите в интернет. Измените его если используете другой интерфейс (напрмер ppp0) тогда команда будет выглядит иначе: | Где eth0 название вашего интерфейса через который выходите в интернет. Измените его если используете другой интерфейс (напрмер ppp0) тогда команда будет выглядит иначе: | ||
Строка 112: | Строка 172: | ||
Второй компьютер теперь должен быть подключён к интернету. | Второй компьютер теперь должен быть подключён к интернету. | ||
+ | |||
+ | ====Если компьютеров несколько==== | ||
+ | Можно использовать dnsmasq как [[wpru>DHCP|DHCP]] сервер. | ||
+ | Для этого на сервере редактируем файл dnsmasq.conf: | ||
+ | |||
+ | <code bash>sudo nano /etc/dnsmasq.conf</code> | ||
+ | |||
+ | <file bash>interface=eth1 # интерфейс, который будет слушать dnsmasq | ||
+ | |||
+ | listen-address=192.168.0.1 # адрес, на котором будет находиться dnsmasq | ||
+ | |||
+ | bind-interfaces eth1 # слушать только интерфейс | ||
+ | |||
+ | dhcp-range=192.168.0.5,192.168.0.50,255.255.255.0,24h1 # диапазон выдаваемых адресов | ||
+ | |||
+ | dhcp-option=3,192.168.0.1 # шлюз по умолчанию </file> | ||
+ | |||
+ | Перезапускаем dnsmasq: | ||
+ | |||
+ | <code bash>sudo service dnsmasq restart</code> | ||
+ | |||
+ | Настраиваем клиентские компьютеры на автоматическое получение адреса. | ||
Если после перезагрузки правила iptables не восстанавливаются, добавьте: | Если после перезагрузки правила iptables не восстанавливаются, добавьте: |