Архив рубрики: HowTo

Host Interface в VirtualBox 2.1.2

Опа! В новом VirtualBox хост интерфейс устанавливается не просто, а очень просто.



В выпадающем меню “Присоединён к” выбираем “Хост-интерфейс”.

В списке “Хост-Интерфейсы” выбираем нужный, например eth0.

Это видео недоступно для просмотра в вашей стране – решение

Не понятно с какого бодуна youtube.com решил ограничивать доступ к совим видеоматериалам по странам. Читать, что “This video is not available in your country. ” или “Это видео недоступно для просмотра в вашей стране” вместо просмотра ролика нас ни как не устраивает, а что делать непонятно.

Читать далее

Перенос Linux на другой диск

Запиши себе на память, чтобы в спешке не забыть.
Филатов, “Про федота стрельца…”

Понадобилось расклонировать Linux на несколько машин.

Ну понадобилось и понадобилось. Собрал первую, настроил. Давай загостим. Ну давай. Образ сделали, залили на другой винт, тут выясняется, что grub не работает. Восстановил grub, выяснилось, что что то с разделами файловой системы не так, видимо, ghost их неправильно создал. Запустил fsck, в резульатае всё грузиться вообще перестало.

Начал делать “дедовским” способом, то бишь руками.

/*Тут начинается сам способ, сплошные технические подробности */
Читать далее

Asus eee PC rdesktop

Только что приволокли еееПЦ под асусовским линухом с диагнозом “rdesktop после ввода пароля вылетает в segmentation fault”.

С удивлением обнаружил, что там стоит Debain GNU/Linux Etch. Репозитории, естественно, асусовские. на всякий случай решил обновить систему. Rdesktop в списке обновлений не обнаружился. Асусовские репозитории отключил, подключил родной дебиановский.

> sudo apt-get install rdesktop

И всё работает. В родном репозитории пакет обновлён после исправления ошибки, а в асусовском – нет. Ну и как это называется?

geoip в iptables

есть такой модуль для iptables – geoip. нужен он для того, чтобы фильтровать пакеты по географическому признаку.
по умолчанию в комплект поставки это счастье не входит, тк что собирать его придётся руками.
неполохое описание этого процесса есть здесь на русском или здесь на английском. версии немного отличаются.

Читать далее

Установка Firefox 3 в Debian Stable

Записки дебианщика: Установка Firefox 3 в Debian Stable:

Если вы скачали свежий Firefox 3 и пытаетесь установить его в стабильном Дебиане – вас ждёт неприятный сюрприз. Нужно GTK+2.10, а в Debian Etch только 2.8. Но это не повод крушить систему и переходить на testing – можно обойтись бекпортом. Сейчас черепаха Тортилла продаст вам Золотой ключик…

по френдам, вроде ни где не проскакивало. так что дам ссылочку

простой скрипт iptables для домашнего роутера

#!/bin/bash

# определяем интерфейсы
# внутренний интерфейс
INTIF=eth0
# внешний интерфейс
EXTIF=eth1
# канал в инет
PPPIF=ppp0

# внутренний адрес понятие более менее статическое
INTIP=192.168.1.1
INTNET=192.168.1.0/24
# внешний адрес скорее всего выдаётся динамически
EXTIP=ifconfig $EXTIF | awk "/inet addr/{print \$2}" | tr -d "inet addr:"
PPPIP=ifconfig $PPPIF | awk "/inet addr/{print \$2}" | tr -d "inet addr:"

# чистим правила
/sbin/iptables -F INPUT
/sbin/iptables -F OUTPUT
/sbin/iptables -F FORWARD
# закрываем движение трафика на время установки правил
/sbin/iptables -P INPUT DROP
/sbin/iptables -P OUTPUT DROP
/sbin/iptables -P FORWARD DROP
/sbin/iptables -t nat -F 

# разрешаем доступ снаружи на нужные порты (какие надо)
/sbin/iptables -A INPUT -d $EXTIP -p tcp --destination-ports 22,80 -j ACCEPT
/sbin/iptables -A INPUT -d $PPPIP -p tcp --destination-ports 22,80 -j ACCEPT
# запрещаем доступ снаружи на именованные порты
/sbin/iptables -A INPUT -d $EXTIP -p tcp --destination-port 1:1023 -j REJECT
# эти порты относятся к X11 и я не уверен, что оно поднято на роутере
/sbin/iptables -A INPUT -d $EXTIP -p tcp --destination-port 6000:6007 -j REJECT
/sbin/iptables -A INPUT -d $EXTIP -p udp --destination-port 1:1023 -j REJECT
/sbin/iptables -A INPUT -d $EXTIP -p udp --destination-port 6000:6007 -j REJECT
/sbin/iptables -A INPUT -d $PPPIP -p tcp --destination-port 1:1023 -j REJECT
/sbin/iptables -A INPUT -d $PPPIP -p tcp --destination-port 6000:6007 -j REJECT
/sbin/iptables -A INPUT -d $PPPIP -p udp --destination-port 1:1023 -j REJECT
/sbin/iptables -A INPUT -d $PPPIP -p udp --destination-port 6000:6007 -j REJECT

# если нет почтового сервера, то закроем отправку писем во внешний мир от греха подальше
/sbin/iptables -A OUTPUT -s $EXTIP -p tcp --destination-port 25 -j REJECT
/sbin/iptables -A OUTPUT -s $PPPIP -p tcp --destination-port 25 -j REJECT
# немного простенькой защиты
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
# Sync-flood protection
/sbin/iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT
# Hidden port scanning protection
/sbin/iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
# Ping of death protection
/sbin/iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
# antispuffing...
  for f in /proc/sys/net/ipv4/conf/*/rp_filter; do
   echo -n " $f "
   echo " "
   echo 1 > $f
  done

# разрешаем forward
/sbin/iptables -A FORWARD -s $INTNET -j ACCEPT

# разрешаем маскарадинг
/sbin/iptables -t nat -A POSTROUTING -s $INTNET -o $EXTIF -j MASQUERADE
/sbin/iptables -t nat -A POSTROUTING -s $INTNET -o $PPPIF -j MASQUERADE
echo "1" > /proc/sys/net/ipv4/ip_forward

# прокидываем удалённый доступ к рабочему столу любимого виндового компа
/sbin/iptables -t nat -A PREROUTING -d $PPPIP -p tcp -m tcp --dport 3389 -j DNAT --to-destination 192.168.1.2
# прокидываем удалённый доступ к рабочему столу ещё одного виндового компа, но с другого порта
/sbin/iptables -t nat -A PREROUTING -d $PPPIP -p tcp -m tcp --dport 4389 -j DNAT --to-destination 192.168.1.3:3389
# можно сделать доступ и из провайдеровской локалки
/sbin/iptables -t nat -A PREROUTING -d $EXTIP -p tcp -m tcp --dport 3389 -j DNAT --to-destination 192.168.1.2

# загибаем web-трафик на squid
/sbin/iptables -t nat -A PREROUTING -d ! $INTIP -i $INTIF -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128

# снимаем запреты по умолчанию
# почему? параноя у нас пока на низком уровне.
/sbin/iptables -P INPUT ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
# а в FORWARD всё что надо уже разрешили

ещё надо пропустить через NAT доступ к FTP
а это у меня уже описано

samba и права на доступ.

стандартный вопрос: “почему на шару в самбе писать можно, а клиенту пишет, что нет доступа на запись?”

всё на самом деле просто.
допустим запись в шару на самбе разрешён всем. а в каталог, который расшарен? от кого создавали? от рута? и какие права у него получились?
$ ls -l | grep share

drwxr-xr-x  2 root root       4096 2008-06-18 12:51 share

угадал?
создателю на полный доступ, а группе и всем остальным только чтение.
а самба у нас от кого запускается? правильно, от пользователя. простого. того, под кем на неё пользователь логинится.
в общем, права на каталог ставим самые простецкие:
$ sudo chmod 777 share
всё! пользователи самбы пишут в шару.

на что ещё надо обратить внимание.

при создании системоного пользователя по умолчанию создаётся группа таким же именем как у пользователя. она же прописывается пользователю как начальная группа единственным членом  которой он тут же становится. пользователь может входить и в другие, дополнительные, группы, но при создании пользователем каталогов и файлов в качестве группы подставляется именно начальная группа.
по этому, если не используются acl, а разграничение доступа внутри шары делается через группы, следует внимательно следить за тем какие права доступа назначаются при создании файлов и каталогов и под какими группами работают пользователи.