И т-а-а-к!!!!! Забацал я ентот сервер удаленного доступа, все-таки! Если кому интересно, то для таких как я, задвинутых ламеров, рассказываю и показываю как это делается на FC3 точно, не знаю какие отличия будут в других линухах.
В принципе никакой сложности при настройке быть не должно было, но я решил, что модем у меня будет стоять Lucent, т.е. winmodem. Вот тут-то и началось... Но, как говориться, если долго мучаться, то что-то да получиться!
Поэтому воткнул я ентот модем и включил комп с FC3. При загрузке система обнаружила мой Agere Lucent modem и предложила его настроить. Настройка заключалась только в нажатии кнопки "Настроить". Дальше система загрузилась и все - модема конечно я не увидел. Идем на
http://linmodems.org, а точнее на
http://www.heby.de/ltmodem и ищем свежие драйвера на модем в зависимости от версии своего ядра. Я брал в виде RPM пакета, весит он не много. После установки пакета в /etc/dev появились два файлика : /etc/dev/modem и /etc/dev/ttyLT0. Это порты моего модема. Первый как бы стандартный наверное, а второй конкретно от моего модема. В принципе использовать девайс, что под именем modem, что под именем ttyLT0 по моему одинаково, но я выбрал под вторым именем - так удобней. С установкой модема почти все - он работает, но до первой перезагрузки системы. Оказывается надо прописать в файл /etc/rc.d/rc.local строчки:
mknod --mode=0640 /dev/ttyLT0 c 62 64
ln -s /dev/ttyLT0 /dev/modem
Спасибо SM, подсказал на форуме. Таким образом при загрузке наш девайс снова обретет жизнь в нашей системе.
Теперь с модемом усё.
Для принятия звонков от удаленного клиента оказывается используется такой зверь как mgetty (он должен быть установлен в системе).
Путем долгих поисков, проб и ошибок установлено, что для того чтобы при вызове (звонке) модем стал отвечать необходима следующая настройка:
в файле /etc/inittab дописываем, если нет
7
respawn:/sbin/mgetty /dev/modem
8
respawn:/sbin/mgetty -D /dev/ttyLT0
Первые цифирки, по моему будут отличаться. Но глядя на все содержимое файла, становить ясно от куда они беруться. Поэтому надо будет малость подкорректировать.
На сколько я понял, данными строчками mgetty указывается с каким девайсом работать. После этого надо сделать init q, чтобы изменения вступили в силу
Теперь в /etc/mgetty+sendfax есть файлики.
в файле mgetty.config
port ttyLT0
debug 3
speed 33600
data-only y
Вот! Вот, где я топтался как барашек на месте. С виду ничего особенного. Указываем какой девайс на порту, для отладки debug, что передаваться будут только данные и .... speed СКОРОСТЬ!
А скорость чего? Порта? Так скорость порта может быть и 115200, 38400, 19200 и т.д. Вот я и ставил, как положено. Перепробовал и то и другое. Шишь там ! Соединение лихо начинаеться и также лихо обрубается. Короче, цифра 33600 для ltmodem выявлена чисто империческим путем за 4 дня бадания линуха. У меня только с параметром speed 33600 все стало работать отлично. Хотя в логах пишеться, что invalid port speed: 33600: Success
Ну, и фиг с ним, зато работает.
Для того, чтобы с сервером можно было подключаться как с провайдером интернета (тип сервера РРР), необходимо проблему авторизации при соединении возложить на плечи pppd.
Поэтому в файлике login.config добавляем, если нет строчки:
/AutoPPP/ - a_ppp /usr/sbin/pppd auth -chap +pap login
* - - /bin/login @
Переходим к настройке pppd в /etc/ppp
создаем файлик options.ttyLT0 в котором пишем:
logfile /etc/ppp/LT0.log #можно и не писать
lock #блокирует порт
modem #модемное соединение
netmask 255.255.255.0 #масочка, но можно и не указывать
ms-dns 192.168.0.10 #днс сервер локальной сети, если надо
idle 180 #время простоя, если надо
auth #авторизация
ну, там много всяких параметров, на любой вкус и цвет, но мне для подключения удаленных пользователей только к данному серверу без доступа к локальной сети больше и не потребовалось.
Можно сделать общие настройки (по дефолту) для всех портов, которые будут использоваться в сервере РРР . Я сделал, вот они в файле options :
192.168.0.10:192.168.0.2
netmask 255.255.255.0
auth
ms-dns 192.168.0.10
Теперь надо создать пользователей.
В файле pap-secrets я прописал пользователя
pupkin "*" 12345678 192.168.0.3
пользователь pupkin, пароль 12345678, при подключении у него уже должен быть адрес 192.168.0.3 - я так захотел. Т.е. в настройках соединения клиента в свойствах TCP надо указывать IP адрес ручками, а не пологаться, что его выдаст сервер при подключении.
Затем необходимо создать локального пользователя тоже pupkin, задать ему такой же пароль. Потом находим файлик в /etc passwd и редактируем запись у pupkin-а. На
pupkin
351:230::pppclient:/usr/sbin/pppd
Почему так, могу только догадываться. Я это вычитал на каком-то форуме.
В принципе ВСЁ!
Звоним на сервер и соединяемся.
А вот для большего удобства настройки и администрирования сервера я поставил webmin (
http://webmin.com) - крутая штука. Через веб интерфейс так легко все настраивать, да и линухом управлять удаленно круто. Короче рекомендую.
Следующим этапом у меня - настроить на моем сервере веб сервер Apache.