Оригинал здесь: http://www.hypercomp.ru/articles/configuring-clock-and-ntp-on-cisco-router/
Как настроить синхронизацию времени маршрутизатора Cisco с сервером NTP.
Для работы с журналами событий маршрутизатора Cisco, списков временного доступа, а также для синхронизации происходящих событий и отладки работы маршрутизатора Cisco необходимо использовать команду clock и сервера NTP (Network Time Protocol). Они отвечают за правильное состояние времени на маршрутизаторе, обеспечивая высокую точность измерения – до миллисекунды. На маршрутизаторах Cisco (в зависимости от модели) имеется несколько команд, отвечающих за время и дату. На маршрутизаторах Cisco серий 2500, 2600, 2800, 3600, 3800 это команды clock и ntp. На более сложных устройствах, например, Cisco 7200 серии или серверах доступа Cisco серии AS5300 есть еще команда calendar. Для просмотра текущего времени и даты используется команда show clock:
00:15:25.131 UTC Mon Mar 1 1993
По умолчанию, если параметр clock не установлен, при каждом включении маршрутизатора время начинается с 00 часов 00 минут 00 секунд понедельника 1 марта 1993 года. Часы хранятся в формате UTC (Coordinated Universal Time), который похож на привычный нам формат GMT (Greenwich Mean Time) - среднее время по Гринвичу. Изменение даты и времени производится из привилегированного режима следующим образом:
clock set hh:mm:cc день месяц год
hh:mm:cc день месяц год - должны соответствовать европейскому формату (для месяцев), например:
clock set 3:00:00 18 Jan 2007
Посмотрим на результат show clock:
3:00:06.245 UTC Thu Jan 18 2007
Для задания даты и времени при помощи команды clock существует два параметра: timezone и summer-time. Их синтаксис:
clock timezone (имя временной зоны или часовой пояс) [смещение]
clock summer-time (имя временной зоны или часовой пояс) recurring (дата и время начала, дата и время конца перехода на летнее время)
Команда clock timezone используется для задания смещения относительно гринвичского меридиана текущего времени для маршрутизатора. Нужно задать любое имя временной зоны или часового пояса (к примеру, Moscow) и смещение в часах от -23 до 23 (в этом примере будет 3). Команду clock summer-time используют для задания начальной и конечной даты перехода на летнее время. Тогда для Москвы конфигурация выглядит так:
clock timezone Moscow 3
clock summer-time Moscow recurring last Sun Mar 2:00 last Sun Oct 2:00
То есть дата перехода на летнее время – последнее воскресенье марта, а на зимнее – последнее воскресенье октября. Теперь время на маршрутизаторе Cisco отобразится в формате GMT:
04:11:24.158 Moscow Mon Mar 1 1993
Заданные вручную дата и время сохраняют свое значение только на время непрерывной работы маршрутизатора. После его выключения или перезагрузки установленное ранее время сбрасывается, хотя в некоторых маршрутизаторах и серверах доступа (как и в других изделиях Cisco) есть энергонезависимая память для часов, как у BIOS персонального компьютера. В момент загрузки маршрутизатора время из календаря считывается в clock и далее clock сам ведет часы. При продолжительной работе время clock и время в календаре маршрутизатора могут незначительно отличаться друг от друга. Для устранения этого расхождения у команды clock существует параметр calendar-valid для периодической синхронизации календаря и времени clock, которое генерирует кварцевый резонатор:
clock calendar-valid
Для того, чтобы временя в пределах локальной или региональной сети было одинаковым, используется протокол NTP (Network Time Protocol). Принцип работы этого протокола в том, что в сети задается один или несколько мастеров времени, а все остальные находящиеся в этой сети маршрутизаторы при включении устанавливают свой clock по данным мастера и в дальнейшем периодически синхронизируют с ним свое точное время. На сервере времени, в качестве которого обычно используется как раз маршрутизатор с энергонезависимой памятью календаря необходимо ввести команду:
ntp master
На других маршрутизаторах Cisco достаточно прописать указание на NTP-сервер:
ntp server 192.168.0.100
Если указывается несколько NTP-серверов, один из них можно указать как более предпочтительный:
ntp server 192.168.0.100 prefer
ntp server 191.168.0.200
Если все настроено правильно, то по команде show ntp status можно получить информацию, включающую адрес мастер-сервера, с которым синхронизировано время по протоколу NTP, текущие дату и время, а также расхождение времени с сервером.
Clock is synchronized, stratum 9, reference is 192.168.0.100
nominal freq is 250.0000 Hz, actual freq is 250.0000 Hz, precision is 2**24
reference time is ACD65C4E.12D6BFE4 (12:30:25.000 Moscow Thu Jan 18 2007)
clock offset is -0.2051 msec, root delay is 1.66 msec
root dispersion is 0.67 msec, peer dispersion is 0.21 msec
Еще одна полезная команда - это show ntp associations, из результата которой мы видим прописанные на данном маршрутизаторе NTP-сервера, какой из них является master, кто от кого получает время, к какому слою принадлежит маршрутизатор (stratum - чем меньше значение, тем точнее его время) и некоторые другие параметры.
address ref clock st when poll reach delay offset disp
*~192.168.0.100 212.45.32.175 8 25 64 377 1.7 -1.04 0.1
+~192.168.0.200 192.168.0.100 9 34 64 377 1.8 -1.62 0.1
* master (synced), # master (unsynced), + selected, - candidate, ~ configured
По умолчанию на маршрутизаторах Cisco включены timestamps debug и timestamps log, которые отображают время события (заносимого в журнал или отображаемого в debug-режиме) в формате, привязанном к правильному текущему времени – то есть заданному при настройке. Если они сервисы отключены, то включить их можно следующими командами:
service timestamps debug datetime localtime
service timestamps log datetime localtime
четверг, 14 июля 2011 г.
четверг, 7 июля 2011 г.
Живучая техника
пятница, 1 июля 2011 г.
Раз в год и сертификат устаревает...
Время летит незаметно, и уже прошел год с момента установки нового биллинга. Ну а поскольку соединение с ним шифруется, то год назад был создан сертификат SSL, по неведомо откуда взятой инструкции, как обычно - на скорую руку. Заморачиваться с запоминанием процесса создания сертификата я год назад не стал, а зря. Но в этом году, встав на грабли, делаю эту заметку.
Итак, быстро, просто, в четыре шага:
#!/bin/bash
#Создаем ключ, пароль любой, от 4 символов
openssl genrsa -des3 -rand file1:file2:file3 -out mysite.key
#Убираем пароль из ключа
openssl rsa -in mysite.key -out mysite.pem
#Генерируем запрос на подпись сертификатов (CSR)
openssl req -new -key mysite.key -out mysite.csr -subj /C=RU/O=YourOrganizationName/CN=mysite.ru/emailAddress=admin@mysite.ru
#Генерация самоподписанного сертификата
openssl x509 -req -days 365 -in mysite.csr -signkey mysite.key -out mysite.crt
З.Ы. Файлы file1, file2, file3 - должны существовать, содержимое их - любая отсебятина.
Итак, быстро, просто, в четыре шага:
#!/bin/bash
#Создаем ключ, пароль любой, от 4 символов
openssl genrsa -des3 -rand file1:file2:file3 -out mysite.key
#Убираем пароль из ключа
openssl rsa -in mysite.key -out mysite.pem
#Генерируем запрос на подпись сертификатов (CSR)
openssl req -new -key mysite.key -out mysite.csr -subj /C=RU/O=YourOrganizationName/CN=mysite.ru/emailAddress=admin@mysite.ru
#Генерация самоподписанного сертификата
openssl x509 -req -days 365 -in mysite.csr -signkey mysite.key -out mysite.crt
З.Ы. Файлы file1, file2, file3 - должны существовать, содержимое их - любая отсебятина.
пятница, 17 июня 2011 г.
Восстановление GRUB2
Очень у многих Ubuntu стоит параллельно с Windows, а значит многим наверняка возможна следующая проблема - при последующий установке/перестановки Windows вы можете больше не увидеть загрузчик GRUB, потому что он скорее всего будет затерт в MBR (Master boot record). Ранее я уже приводил решение проблемы для GRUB 1, к сожалению для "второго граба" оно не работает. Немного покопавшись в сети, удалось найти следующие варианты решения задачи:
Способ 1: Восстановление с помощью Ubuntu 9.10 LiveCD Если у вас на компьютере стоит Ubuntu, наверняка имеется записанный на диск образ LiveCD, ну или как минимум вам известно где его взять. Загрузитесь с LiveCD, откройте терминал, далее:
sudo -i
mount /dev/sdc3 /mnt
mount /dev/sdc2 /mnt/boot
grub-install --root-directory=/mnt/ /dev/sdc
Примечание: Предполагается у Вас Ubuntu раздел на sdc3, загрузочный sdc2.
Если потерян “grub.cfg”, можно попробовать следующий вариант:
mount --bind /proc /mnt/proc
mount --bind /dev /mnt/dev
mount --bind /sys /mnt/sys
chroot /mnt
update-grub
umount /mnt/sys
umount /mnt/dev
umount /mnt/proc
exit Способ
2: Использование GRUB для DOS Этот способ подойдет если дистрибутив Ubuntu отсутствует.
Grub4dos - универсальный загрузчик на основе GNU GRUB. Может загружается практически от куда угодно, имеет встроенную эмуляцию BIOS диска, ATAPI CD-ROM драйвера и т.д. Скачать GRUB для DOS можно отсюда http://download.gna.org/grub4dos/ После того как вы его скачаете, нужно сделать следующее: Для пользователей Windows XP, из архива grub4dos следует скопировать в корень (имеется в виду C:) файл "grldr" и отредактировать boot.ini, добавив следующую строку: c:grldr=”grub4dos” Если мы имеем дело с Windows 7/Vista, алгоритм действий следующий: Копируем файлы grldr,grldr.mbr в корень C:/. Создаем там же (C:/) boot.ini и вставляем в него: [boot loader] timeout=0 default=c:grldr.mbr [operating systems] C:grldr.mbr=”Grub4Dos” Теперь создаем menu.lst в корневой директории со следующим содержимым: timeout 0 default 0 title grub2 find --set-root /boot/grub/core.img kernel /boot/grub/core.img boot Далее перезагружаем компьютер и выбираем загрузку с Grub4Dos, выбираем в меня загрузки Ubuntu и после того как залогинимся прописываем в GRUB в MBR следующей командой: sudo grub-install /dev/sdc
Способ 1: Восстановление с помощью Ubuntu 9.10 LiveCD Если у вас на компьютере стоит Ubuntu, наверняка имеется записанный на диск образ LiveCD, ну или как минимум вам известно где его взять. Загрузитесь с LiveCD, откройте терминал, далее:
sudo -i
mount /dev/sdc3 /mnt
mount /dev/sdc2 /mnt/boot
grub-install --root-directory=/mnt/ /dev/sdc
Примечание: Предполагается у Вас Ubuntu раздел на sdc3, загрузочный sdc2.
Если потерян “grub.cfg”, можно попробовать следующий вариант:
mount --bind /proc /mnt/proc
mount --bind /dev /mnt/dev
mount --bind /sys /mnt/sys
chroot /mnt
update-grub
umount /mnt/sys
umount /mnt/dev
umount /mnt/proc
exit Способ
2: Использование GRUB для DOS Этот способ подойдет если дистрибутив Ubuntu отсутствует.
Grub4dos - универсальный загрузчик на основе GNU GRUB. Может загружается практически от куда угодно, имеет встроенную эмуляцию BIOS диска, ATAPI CD-ROM драйвера и т.д. Скачать GRUB для DOS можно отсюда http://download.gna.org/grub4dos/ После того как вы его скачаете, нужно сделать следующее: Для пользователей Windows XP, из архива grub4dos следует скопировать в корень (имеется в виду C:) файл "grldr" и отредактировать boot.ini, добавив следующую строку: c:grldr=”grub4dos” Если мы имеем дело с Windows 7/Vista, алгоритм действий следующий: Копируем файлы grldr,grldr.mbr в корень C:/. Создаем там же (C:/) boot.ini и вставляем в него: [boot loader] timeout=0 default=c:grldr.mbr [operating systems] C:grldr.mbr=”Grub4Dos” Теперь создаем menu.lst в корневой директории со следующим содержимым: timeout 0 default 0 title grub2 find --set-root /boot/grub/core.img kernel /boot/grub/core.img boot Далее перезагружаем компьютер и выбираем загрузку с Grub4Dos, выбираем в меня загрузки Ubuntu и после того как залогинимся прописываем в GRUB в MBR следующей командой: sudo grub-install /dev/sdc
воскресенье, 29 мая 2011 г.
Netgear Stora и Transmission - обходим грабли, которые ждут Вас!
Сегодня дошли руки до разбора проблем с Netgear Stora и клиентом Transmission. Проблема, с которой я столкнулся, и решения которой не нашел в инете, состоит в том, что Transmission не отдает статистику на трекеры. С одной стороны - хорошо, рейтинг не падает. Но с другой - и не растёт тоже! И это ввергало меня в печаль до сего дня... Но решение есть!
И оно состоит в редактировании четырех файликов и перезапуске демонов.
Итак, останавливаем демоны Transmission и UPNP
# /etc/init.d/transmission.init stop
# /etc/init.d/upnp-igd stop
Первым редактируем /etc/transmission/settings.json
Ищем там строчку
"port-forwarding-enabled": false,
и меняем на
"port-forwarding-enabled": true,
Второй файлик - это /etc/init.d/transmission.init
В нем строчку
runuser -s /bin/bash 0transmission -c "/usr/sbin/transmission-daemon -g /etc/transmission --no-blocklist --no-portmap"
меняем на
runuser -s /bin/bash 0transmission -c "/usr/sbin/transmission-daemon -g /etc/transmission --no-blocklist"
Третьим редактируем /etc/upnp-igd.conf
PORTS=22,80,443,21,20,50000,50001,9091
Четвёртым - надо отредактировать в /usr/sbin/check_igd.pl строчку
my @forwardedPorts = ( 22, 80, 443, 21, 20, 50000, 50001 );
на
my @forwardedPorts = ( 22, 80, 443, 21, 20, 50000, 50001, 9091 );
Ну и перезапускаем UPNP и Transmission
# /etc/init.d/upnp-igd start
# /etc/init.d/transmission.init restart
И оно состоит в редактировании четырех файликов и перезапуске демонов.
Итак, останавливаем демоны Transmission и UPNP
# /etc/init.d/transmission.init stop
# /etc/init.d/upnp-igd stop
Первым редактируем /etc/transmission/settings.json
Ищем там строчку
"port-forwarding-enabled": false,
и меняем на
"port-forwarding-enabled": true,
Второй файлик - это /etc/init.d/transmission.init
В нем строчку
runuser -s /bin/bash 0transmission -c "/usr/sbin/transmission-daemon -g /etc/transmission --no-blocklist --no-portmap"
меняем на
runuser -s /bin/bash 0transmission -c "/usr/sbin/transmission-daemon -g /etc/transmission --no-blocklist"
Третьим редактируем /etc/upnp-igd.conf
PORTS=22,80,443,21,20,50000,50001,9091
Четвёртым - надо отредактировать в /usr/sbin/check_igd.pl строчку
my @forwardedPorts = ( 22, 80, 443, 21, 20, 50000, 50001 );
на
my @forwardedPorts = ( 22, 80, 443, 21, 20, 50000, 50001, 9091 );
Ну и перезапускаем UPNP и Transmission
# /etc/init.d/upnp-igd start
# /etc/init.d/transmission.init restart
четверг, 26 мая 2011 г.
VirtualBox, VMware, и проблемы миграции
Понадобилось сегодня поднять старые данные с виртуальной машинки VirtualBox, но захотелось сразу перенести это всё в VMware ESXi. Ну и вляпался в гугл по этому случаю, ибо инфа везде старая, неактуальная, а стандартный конвертер от VMware не хочет признавать VirtualBox видимо по идеологическим соображениям.
Путём копания в гугле и экспериментов в VirtualBox выяснил, что есть замечательная командочка: VBoxManage
и если сделать так:
VBoxManage.exe internalcommands converthd -srcformat VDI -dstformat RAW srcpath\src.vdi dstraw\dst.raw
VBoxManage convertfromraw -format VMDK dstraw\dst.raw dstvmdk\dst.vmdk
то всё замечательно сконвертируется в нужный формат.
Двухходовка обязательна, т.к. почему-то при попытке конвертации напрямую из .vdi в .vmdk конечный файл обрезался до 2 гигов. С двухходовкой - всё в норме.
Путём копания в гугле и экспериментов в VirtualBox выяснил, что есть замечательная командочка: VBoxManage
и если сделать так:
VBoxManage.exe internalcommands converthd -srcformat VDI -dstformat RAW srcpath\src.vdi dstraw\dst.raw
VBoxManage convertfromraw -format VMDK dstraw\dst.raw dstvmdk\dst.vmdk
то всё замечательно сконвертируется в нужный формат.
Двухходовка обязательна, т.к. почему-то при попытке конвертации напрямую из .vdi в .vmdk конечный файл обрезался до 2 гигов. С двухходовкой - всё в норме.
воскресенье, 1 мая 2011 г.
Netgear, продолжение полного п... восторга, сэр!
Ну, с грехом пополам, прошивку обновили, но задача у меня нетривиальная. Есть два диска по 1 Tb, пустые, и есть диск на 2 Tb, который был использован под хакинтош, и куда слита вся информация. Этот диск, естественно, отформатирован в HFS+, но, к счастью, Stora понимает этот тип файловой системы. И теперь - надо, чтобы этот 2 Tb стоял в Stora, был отформатирован средствами Stora, и при этом надо СОХРАНИТЬ ВСЮ ИНФОРМАЦИЮ. Свободного компа нет в наличии, поэтому будем перекидывать инфу средствами Stora, с 2 Tb на 2 по 1 Tb, потом форматировать и перекидывать обратно. Извращение, но... Чем трудней - тем интереснее ;) Итак, приступаем!
Для начала - взломаем Stora, чтобы можно было поставить любимый Midnigh Commander и вообще - использовать уже эту железку по-максимуму.
Итак, устанавливаем дополнение к прошивке Stora Unlock от Neo Angelus. Важно! Теперь Ваш логин и пароль к консоли, такой же, как и к Web-морде.
Заходим через Putty, а потом:
1. делаем
sudo -s
2. создаем свою домашнюю директорию (странно, но Stora не создает ее при создании пользователя во время первоначальной активации)
mkdir /home/username
где username - ваш логин
1. устанавливаем mc
/opt/bin/ipkg install mc
2. включаем русский UTF-8
редактируем /etc/environments вставляя туда
PATH=/usr/local/bin:/usr/bin:/bin:/opt/bin/:/usr/sbin:/opt/sbin:/opt/bin:/opt/sbin:/sbin
LANG=ru_RU.utf8
3. редактируем /etc/sudoers, меняя там
Defaults env_keep = "COLORS...
на
Defaults env_keep = "COLORS PATH...
4. редактируем ~/.profile
export PATH=/usr/local/bin:/usr/bin:/bin:/opt/bin/:/usr/sbin:/opt/sbin:/opt/bin:/opt/sbin:/sbin:/opt/schily/bin:/opt/schily/sbin
export LANG="ru_RU.utf8"
export LC_ALL="ru_RU.utf8"
перезапускаем Stora - и теперь мы имеем сконфигурированный mc и нормальный вход с сохранением настроек. Но это еще не всё... Надо перенести папочку opt в корень файловой системы. Проще всего сделать это при помощи mc, хотя желающие могут это сделать и при помощи консольных команд. Подсказка: в корне есть уже ссылка на папку opt, поэтому нужно создать папку opt1, скопировать туда содержимое opt, а потом удалить opt.
Ну а теперь попытаемся перенести файлы... Эх, понеслась!
Путём экспериментов выяснил, что вставлять 2 Tb надо в левый, первый отсек, а 1 Tb - в правый, под второй диск. Включаем Stora, ждем... Ура, светодиоды индикации жестких дисков поморгали зеленым и стали оранжевыми! Хм... хорошо это или плохо? Конечно хорошо. Загореться оранжевым может только первый индикатор, второй может остаться зелёным, ну это не суть важно. Заходим по ssh, и делаем
mkdir /mnt/mac
mkdir /mnt/disk
mount -t hfsplus /dev/sda2 /mnt/mac
mount /dev/sdb1 /mnt/disk
Для начала - взломаем Stora, чтобы можно было поставить любимый Midnigh Commander и вообще - использовать уже эту железку по-максимуму.
Итак, устанавливаем дополнение к прошивке Stora Unlock от Neo Angelus. Важно! Теперь Ваш логин и пароль к консоли, такой же, как и к Web-морде.
Заходим через Putty, а потом:
1. делаем
sudo -s
2. создаем свою домашнюю директорию (странно, но Stora не создает ее при создании пользователя во время первоначальной активации)
mkdir /home/username
где username - ваш логин
1. устанавливаем mc
/opt/bin/ipkg install mc
2. включаем русский UTF-8
редактируем /etc/environments вставляя туда
PATH=/usr/local/bin:/usr/bin:/bin:/opt/bin/:/usr/sbin:/opt/sbin:/opt/bin:/opt/sbin:/sbin
LANG=ru_RU.utf8
3. редактируем /etc/sudoers, меняя там
Defaults env_keep = "COLORS...
на
Defaults env_keep = "COLORS PATH...
4. редактируем ~/.profile
export PATH=/usr/local/bin:/usr/bin:/bin:/opt/bin/:/usr/sbin:/opt/sbin:/opt/bin:/opt/sbin:/sbin:/opt/schily/bin:/opt/schily/sbin
export LANG="ru_RU.utf8"
export LC_ALL="ru_RU.utf8"
перезапускаем Stora - и теперь мы имеем сконфигурированный mc и нормальный вход с сохранением настроек. Но это еще не всё... Надо перенести папочку opt в корень файловой системы. Проще всего сделать это при помощи mc, хотя желающие могут это сделать и при помощи консольных команд. Подсказка: в корне есть уже ссылка на папку opt, поэтому нужно создать папку opt1, скопировать туда содержимое opt, а потом удалить opt.
Ну а теперь попытаемся перенести файлы... Эх, понеслась!
Путём экспериментов выяснил, что вставлять 2 Tb надо в левый, первый отсек, а 1 Tb - в правый, под второй диск. Включаем Stora, ждем... Ура, светодиоды индикации жестких дисков поморгали зеленым и стали оранжевыми! Хм... хорошо это или плохо? Конечно хорошо. Загореться оранжевым может только первый индикатор, второй может остаться зелёным, ну это не суть важно. Заходим по ssh, и делаем
mkdir /mnt/mac
mkdir /mnt/disk
mount -t hfsplus /dev/sda2 /mnt/mac
mount /dev/sdb1 /mnt/disk
Подписаться на:
Сообщения (Atom)