Библиотека сайта rus-linux.net
5. Сетевое администрирование
5.1 Почему telnet не пускает пользователя root? Как зайти удаленно с правами root?
telnet (а точнее, login) не пускает root потому, что root может заходить в систему только со специальных защищенных терминалов, перечисленных в /etc/securetty. Обычно там перечислены только виртуальные консоли tty1-ttyN. Другие места считаются небезопасными, потому что пароль, вводимый оттуда, может передаваться по сети открытым текстом (что и происходит в случае использования telnet), а значит его может узнать злоумышленник, "прослушивая" сеть и анализируя "чужие" пакеты.
- быстрый и неправильный способ - удалить файл /etc/securetty или прописать в нем псевдотерминалы /dev/ttyP*. Это опасно потому, что дает злоумышленнику возможность не только узнать пароль, но и воспользоваться им для удаленного захода на машину.
- менее быстрый, но все равно неправильный способ - заходить на машину обычным пользователем, а затем использовать команду su или sudo. И в этом случае оба пароля передаются открытым текстом, со всеми возможными последствиями.
- самый правильный способ - полностью отключить сервисы telnet, не-анонимный ftp, rsh, rlogin и заменить их на ssh, шифрующий все, что передается через сеть и поддерживающий аутенификацию не только через пароль, но и с использованием криптографии с открытым ключом. Клиент и сервер ssh для Unix можно взять на http://www.openssh.com, про клиенты для Windows написано в разделе "Прочее".
5.2 Hадоело запускать ppp (slip) руками. Хочу чтобы сам звонил, когда надо.
Медленно и печально идем на http://diald.sourceforge.net, сливаем diald, разворачиваем, читаем README, совершаем _минимальные_ телодвижения на предмет конфигурации и инсталляции, и получаем эмулятор выделенной линии. Как только требуется выйти во внешний мир, diald дозванивается до провайдера, устанавливает роутинг и можно работать. Внимание: учтите, что с ядрами 2.2.x нормально работает diald-1.99 и выше. 0.16, лежащий везде, в том числе и в некоторых дистрибутивах, предназначен только для 2.0. (почему-то эта информация пропущена в Changes) Да, еще... Рекомендации лучших линуксоводов: в файле /etc/resolv.conf надо размножить строчки nameserver xxx.xxx.xxx.xxx раза по три, чтобы он по таймауту не отваливался раньше, чем diald дозвонится. Полезно также удалить default route на eth0.
ip-up "cp /etc/resolv.conf.connected /etc/resolv.conf" ip-down "cp /etc/resolv.conf.local /etc/resolv.conf",где в resolv.conf.connected написано:
search yourdomain nameserver xxx.xxx.xxx.xxx (я предпочитаю 127.0.0.1)а в resolv.conf.local написано:
domain yourdomainХорошо настроить и использовать локальный DNS-cервер в режиме caching-only. Его можно поднимать и опускать через ip-up и ip-down как сказано чуть выше, или через /etc/ppp/ip-up.local и ip-down.local. Как его настроить: раньше вариант был только один - почитать книжку и настроить таки bind. Теперь есть более простой вариант: к редхату прилагаются готовые настройки для cache-only bind'а (в пакете caching-nameserver) или можно установить демон nscd, который умеет только кешировать DNS-запросы (а также запросы к базе пользователей и групп).
А еще можно сходить посмотреть на http://alexm.here.ru
5.3 Есть ли такая пpогpама для Linux, чтобы в сети Netware обойтись без tcpip - чтобы был только ipx?
Есть mars -- netware server для линукса (эмуляция нетваpевского сеpвеpа) ipx*, ncp*, nw* (из дистpибутива mars) - клиент.
Посмотрите Caldera Open Linux ( http://www.caldera.com) - компания Caldera владеет исходными текстами Novell и переносит их на Linux. Netware for Linux - http://www.calderasystems.com/support/docs/netware/.
Не забудьте про IPX-HOWTO: http://linuxdoc.org/HOWTO/IPX-HOWTO.html
5.4 Пpинтеpы расшаpены чеpез самбу, но после отпечатывания стpаницы (или задания) пpобpасывается N листов впустую. HP пpокpучивает один лист, а Epson два. Как лечить?
PRINTCAP / Begin my_favourite_printer:\ lp=/dev/lp1:\ sd=/var/spool/lpd/my_favourite_printer:\ sh:lf=/dev/tty10:ff=: PRINTCAP / End
5.5 Как подружить Самбу и 1С ?
(Zahar Kiselev, 2:5030/382)
Вот что достаточно сделать чтобы работало:
Взять с ftp.kernel.org ядро, которое умеет "на ходу" менять лимиты на количество открытых файлов. Hасколько я знаю, начиная с 2.2.10 это работает, как делается - сказано в том числе и в этом faq.
1С отличается совершенно неприличными аппетитами по части количества открываемых файлов - надо ставить из расчета где-то 800 на каждого виндового пользователя, потому что есть особо "продвинутые", которые две-три копии 1С у себя на компе запускают.
Взять Самбу например 2.0.5a - это последняя, которая работала у меня. Важно, чтобы она понимала параметр в smb.conf "ole locking compatibility"(надеюсь теперь не наврал в написании), установить его в "no". Внимание! До меня доходили сведения, что в какой-то даже более новой чем 2.0.5а Самбе этого параметра нет.
Остальное настроить в соответствии с любой из многочисленных рекомендаций по установке Самбы, главное - не запрещать ей работать с блокировками(я знаю одного человека, который до этого додумался). Запускать надо не через inetd, а как отдельный демон, вернее у Самбы их два - smbd и nmbd.
Чтобы несколько пользователей могли лезть в одну базу - поместить их в одну юниксовую группу и поставить права на файлы так, чтобы был доступ на запись для группы.
Есть еще одна мелкая особенность - Самба при работе хочет создать файлики browse.dat, wins.dat - так вот надо поставить права так, чтобы она могла их читать в том числе и тогда, когда работает от имени виндового пользователя - иначе могут быть большие таймауты при выполнении команды net use в виндах, и может не работать столь любимое многими чайниками "сетевое окружение".
Если после очередного падения 1С винды говорят что база заблокирована - то можно подкрутить в конфиге Самбы параметр, отвечающий за принудительное снятие "зависших" блокировок(см man). Поставить например три минуты, меньше не стоит, тогда через три минуты в базу можно будет войти. Рекомендуется также поставить keepalive-таймаут, чтобы соединения не висели бесконечно. Желательно при помощи файрволла закрыть для доступа "снаружи" те два порта, через которые Самба работает. Причем не только на Линукс, а на всю сеть.
А теперь - совет тем, кто хочет избавиться от проблем, вызванных наличием 1С у него в сети. Hадо запускать 1С на NT-сервере, причем желательно sql-версию, она менее критична к сбоям (не повреждаются данные), а доступ осуществлять с линуксовых машин через Citrix Meta Frame. При этом ситуация меняется "до наоборот" - вместо одного линукса и кучи виндов вокруг - получаются _одни_ винды(и те NT), а вокруг куча Линукс-терминалов, причем можно их бездисковыми сделать, загружая с линукс-сервера.
Если не хотите линуксы (а напрасно) - citrix-клиент есть и под винды. Для сомневающихся - работа 1С в терминальном режиме проверена в боевой обстановке. Результат положительный. Доступ я пробовал осуществлять и с Линукса и с win95.
5.6 PPP сервер/клиент с поддержкой callback, соединение с NT/2000 сервером и прочие проблемы при настройке ppp
Про клиент pppd + callback можно прочесть файл README.cbcp в дистрибутиве pppd.
Про все остальное - читайте http://www.nitek.ru/~igor/pppd/ или http://nitek.east.ru/~igor/pppd/.
5.7 Имеется сеть из PC + Linux, телефонная линия на Linux-e. Хотелось бы: с любого рабочего места отправить факс. Какой софт под Linux для этого существует в природе ?
hylafax - есть все, что в подобных случаях может понадобиться и сказано, где взять "клиентов" под DOS, Windows, etc. HО! принимать по одной линии (тел) и факсы и фидо не получится. :( Можно использовать mgetty, но факс-сервер придется делать самому, как делать можно подглядеть в hylafax. :)
5.8 Как настроить PPTP на Linux ?
http://www.moretonbay.com/vpn/pptp.html
5.9 Как настроить SSL на smtp, pop3?
spop3 stream tcp nowait root /usr/sbin/stunnel /usr/sbin/popa3d ssmtp stream tcp nowait root /usr/sbin/stunnel /usr/sbin/sendmailVictor Wagner предупреждает о подводном камне:
Желательно в качестве argv[0] запускаемому демону указать что-то отличное от его имени файла. А то, если программа собрана с поддержкой tcpwrappers и используется hosts.allow/hosts.deny для разрешения доступа без ssl только из локалки, то при совпадении argv[0] не-ssl-ного и ssl-ного демона, и с SSL будут не пускать откуда нельзя.
5.10 Имеется сетка из машин под NT, Win95, и DOS, в ней же есть Linux с диалапным PPP к провайдеру. Как сделать так, чтобы все пользователи из локалки могли ходить по интернету?
#!/bin/sh /sbin/insmod ip_masq_autofw /sbin/insmod ip_masq_user /sbin/insmod ip_masq_cuseeme /sbin/insmod ip_masq_ftp /sbin/insmod ip_masq_irc /sbin/insmod ip_masq_mfw /sbin/insmod ip_masq_portfw /sbin/insmod ip_masq_quake /sbin/insmod ip_masq_raudio /sbin/insmod ip_masq_vdolive /sbin/ipchains -F /sbin/ipchains -P forward DENY /sbin/ipchains -A forward -j MASQ -s 192.168.0.0/16 -d 0.0.0.0/0Если Linux имеет адрес 192.168.0.1, то этот ip должен быть определен на хостах внутренней сети как default gateway.
Также полезно прочитать HOWTOs:
Firewall http://linuxdoc.org/HOWTO/Firewall-HOWTO.html
IPCHAINS http://linuxdoc.org/HOWTO/IPCHAINS-HOWTO.html
IP-Masquerade http://linuxdoc.org/HOWTO/IP-Masquerade-HOWTO.html
Русская дока есть на http://www.fima.net/masquerade.html
В 2.0 ядрах вместо ipchains используется ipfwadm, в 2.4 - netfilter, про который также есть HOWTO на http://netfilter.kernlenotes.org
$ echo "1" > /proc/sys/net/ipv4/ip_forward(в Red Hat 6.2 и выше - не забудьте поправить /etc/sysctl.conf)
Утилиты для графического управления firewall-ом : fBuilder http://www.innertek.com/ Mason http://users.dhp.com/~whisper/mason/
5.11 Как настроить socks5 ?
Cофт лежит на http://www.socks.nec.com
Предположим, что у вас есть машина с двумя интерфейсами (PPP/Ethernet или Ethernet/Ethernet). На внутреннем Ethernet-e адрес : 192.168.0.1. Самый простой вариант - аутентификация клиентов локалки только по адресу.
permit - - 192.168.0. - - - set SOCKS5_BINDINTFC 192.168.0.1:1080 set SOCKS5_NOIDENTICQ 99/2000 работает. Подробнее 'man socks5', 'man socks5.conf', http://www.socks.nec.com. [там есть FAQ]
5.12 Как вырезать баннеры из веб-страниц?
Простейший способ - занесение соответствующих хостов - поставщиков рекламы в /etc/hosts с фиктивными ip адресами.
acl Reclama_Banners url_regex ^http://www1\.reklama\.ru/cgi-bin/banner/* http_access deny Reclama_BannersИли из файла :
acl Banners url_regex "/etc/squid/banners" http_access deny BannersВ /etc/squid/banners вписываешь своих врагов (в виде регулярных выражений), например:
^http://banners\.rambler\.ru/advert/.*\.gif ^http://kulichki.rambler.ru/reklama/banners/.*\.gif ^http://www.*\.yandex\.ru/cgi-bin/banner/* ^http://www1\.reklama\.ru/cgi-bin/banner/* ^http://www\.reklama\.ru/cgi-bin/banner/* ^http://www\.reklama\.ru/cgi-bin/href/* ^http://www\.100mb\.net/images/ban/banner.*\.gif ^http://www\.bizlink\.ru/cgi-bin/irads\.cgi.* ^http://www\.linkexchange\.ru/cgi-bin/rle\.cgi ^http://www\.linkexchange\.ru/users/.*/goto\.map ^http://www\.netcq\.com/banners/banner\.gif ^http://1000\.stars\.ru/cgi-bin/1000\.cgiЕще лучше с задачей фильтрации справляется специальная программа-фильтр squidguard http://www.squidguard.org, ставится в дополнение к squid.
Более полный список баннеродержателей можно получить на http://pail.pu.ru/
Можно сделать Transparent Proxy http://www.lexa.ru/lexa/transparent-proxy.html
Transparent Proxy MiniHOWTO: http://www.tldp.org/HOWTO/mini/TransparentProxy.html
Можно поставить редиректор squirm http://www.senet.com.au/squirm/, его задача - подменять одни URLs другими.
5.13 Как сделать авторизацию пользователей Squid через учетные записи Windows?
http://www.artmagic.ru/labs/sqlandwin.shtml
Next Previous Contents