В связи с отменой перехода на зимнее летнее время появилась необходимость обновить информацию о временных зонах на серверах FreeBSD. Почитал что пишут в сети – копипастим то, что работает. :)
Простое обновление времени типа #ntpdate ntp2.imvp.ru нам не поможет.
Значит обновляем порты.
#portsnap fetch update
Ставим порт zoneinfo:
#make -C /usr/ports/misc/zoneinfo install clean
или:
code>#cd /usr/ports/misc/zoneinfo
#make install clean
Запускаем настройку временной зоны (это как в процессе установки):
#tzsetup
Выбираем свою зону. Время должно встать на свое место.
Столкнулся с проблемой форматрования даты в Joomla! на машине с FreeBSD при переходе на 5 ветку php:
Warning .... function.strftime was not found on this server
Решается добалением описания timezone в php.ini и перезапуском сервера.
date.timezone = "Europe/Moscow"
Ну и про подавление ошибок php не забываем:
error_reporting = E_NONE
Понадобилось настроить VPN для доступа к ресурсам локальной сетки (файлсервер, rdp, vnc и т.д). Шлюз работает на FreeBSD. Начал смотреть что есть, а есть немало: poptop, mpd5, openVPN, vtun и т.д.
Особых требований у нас нет – настроить клиента под виндой и подключившись к шлюзу получить айпи из диапазона внутренней сети и получить доступ к локальным ресурсам.
Продолжить чтение →
Чтобы не вспоминать записываю. Надо было удалять старые файлы ежедневных бэкапов которые делал MSSQL и складывал на шару самбы.
Добавляем в crontab:
######################
#Delete Daily Backups
######################
#Daily
0 33 * * * root find /storage/samba/backup/DailyBackup-* -type f -mtime +7 -delete
#Weekly
0 33 * * * root find /storage/samba/backup/WeeklyBackup-* -type f -mtime +15 -delete
#Monthly
0 33 * * * root find /storage/samba/backup/MonthlyBackup-* -type f -mtime +45 -delete
Будет искать в указанных папках по заданной маске все файлы старше 7,15, 45 дней и удалять…
Итак задача тривиальная – надо получить доступ к машине под Windows за натом.
Имеем:
- машину к которой нужно получить доступ под Windows с realVNC (к примеру)
- шлюз на FreeBSD с kernel NAT (ipfw)
- машину с Windows (с маршрутизируемым IP) c realVNC клиентом.
1. Ставим на машину с айпи, скажем, 172.16.5.233, к которой хотим коннектиться, сервер VNC.
2. На шлюзе в правилах фаерволла правим правило NAT:
${fwcmd} nat 1 config if ${LanOut} log redirect_port tcp 172.16.5.233:5900 5900
3. Перезапускаем сеть:
#/etc/netstart
4. Коннектимся к внешнему айпи шлюза на порт 5900 клиентом VNC.
Получаем доступ к виндовой машине за натом.
PS: Конечно порт нужно менять, ограничивать доступ и т.д. и т.п.
Элементарная вещь но поскольку приходится пользоваться нечасто запишу.
Итак как убрать alias с интерфейса не перегружая машину. Суть проблемы в следующем.
Добавляем alias к примеру прописав строчку в rc.conf:
ifconfig_bge1_alias0="inet 10.12.13.154 netmask 255.255.255.255"
И перегружаем интерфейсы:
#/etc/netstart
Делаем ifconfig – видим наш дополнительный айпишник на интерфейсе. Всё ок.
Теперь alias нужно убрать. Правим rc.conf – убираем строку отвечающую за псевдоним на интерфесе, делаем /etc/netstart и видим, что alias на интерфейсе в выводе ifconfig остался, что в принципе, совершенно естественно – в rc.conf у нас строка добавляющая алиас. Никаких инструкций по удалению псевдонима мы не давали.
Убрать alias можно командой:
#ifconfig em0 -alias 10.12.13.154
Пару раз вываливалась ошибка на консоль:
negative sbsize for uid = 100
Uid 100 у меня на машине у сквида. В сети описания ошибки не нашёл, но sbsize
это ограничение потребляемого объёма сетевой памяти (mbufs
). Настраивается sbsize
в /etc/login.conf
(в мане по login.conf можно почитать).
Пока искал рецепт ошибки пропали – но лечим скорее всего тюнингом сквида, сетевой подсистемы или самого sbsize
в login.conf
.
Выборсило на консоль почтового сервера ошибку:
imapd-ssl: maximum connection limit reached for 1.45.55.6
Возможен такой вариант:
imapd: maximum connection limit reached for 1.45.55.6
Посмотрел – в конфигах /usr/local/etc/courier-imap/imapd
и /usr/local/etc/courier-imap/imapd-ssl
есть переменная MAXPERIP
по дефолту равная четырём.
То есть imap принимает только по четыре соединения с одного айпишника (судя по всему по соображениям безопасности для контроля расхода ресурсов), что конечно очень мало, если к примеру по имапу к серверу обращаются клиенты из-за ната.
Меняем на большее значение:
MAXPERIP=40
и перезапускаем сервис:
#cd /usr/local/etc/rc.d
#./courier-imap-imapd-ssl restart
#./courier-imap-imapd restart
Переменную можно менять в обоих конфигах (я так понимаю для гибкости управления) /usr/local/etc/courier-imap/imapd
/usr/local/etc/courier-imap/imapd-ssl
– в первом она установлена, во втором – упоминается.
Итак классическая ситуация – вы сидите за натом и вы начинающий админ, управляющий шлюзом на FreeBSD с kernel nat. Torrent клиент работает, но для сохранения положительного ратио нужно раздавать. Решается все одной строчкой (вернее добавлением к строке добавляющей нат):
${fwcmd} nat 1 config if ${LanOut} log redirect_port tcp 172.16.5.5:33020 33020
${fwcmd} add nat 1 ip from any to any via ${LanOut}
Порт – порт на котором висит ваш torrent клиент (или VNC или что-то другое, что вам нужно), айпи – ваша машина.
Есть задача – поставить веб интерфейс к почтовому серваку. Самым популярным наверное будет roundcube (в обзорах на самаге его хвалят, как ставить все рассказывают, к тому же уже стоял у нас roundcube на старом нашем почтовике)…
Итак ставим roundcube.
Первое что необходимо осознать – для работы roundcube необходим настроенный и рабочий IMAP. По сути roundcube – это веб IMAP клиент. Продолжить чтение →
Итак, задача простая – получить доступ на консоль Cisco из-под unix. На самом деле все очень просто. Продолжить чтение →
При попытке обвить дерево портов утилитой portsnap получаем ошибку:
metadata is corrupt
Лечится удалением базы portsnap
#rm -Rf /var/db/portsnap/
Создаем папку снова:
#mkdir /var/db/portsnap
И делаем fetch снова
#portsnap fetch
Потом extract или update.
А можно попробовать обновить индекс командой:
#portsnap -I fetch
Бинарное обновление freebsd с ветки до ветки или в пределах одной ветки с одной стороны задача тривиальная. С другой стороны если у нас кастомное ядро – то проблемы могут возникнуть на ровном месте. Продолжить чтение →
В Linux команда ifconfig
сразу показывает статистику по каждому сетевому интерфейсу – количество коллизий, переданных пакетов и т.д. Во FreeBSD для просмотра этих данных нужно воспользоваться командой netstat
c дополнительными ключами:
netstat -iI xl0
Иногда необходимо просмотреть вывод системы на конкретную консоль. Например, запустили скрипт сборки порта на сервере, а посмотреть чего ждет сервак на этой консоли нужно из дома по ssh (а скрипт ждет подтверждения выбора опций, к примеру).
Помочь может команда watch. К примеру:
watch -W /dev/ttyv0