BSDPORTAL.RU

На этом сайте обсуждаются вопросы использования ОС FreeBSD
 Портал  •  Статьи  •  Форум  •  Wiki  •  Поиск  •  FAQ  •  Обои  •   Официальная документация  •  Новые темы 

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
СообщениеДобавлено: Вт 23 апр, 2019 8:29 am 
Не в сети

Зарегистрирован: Вт 23 апр, 2019 7:49 am
Сообщения: 30
Предистория. На виртуальной машине моднята самба, в которой доступ определен к каталогу /private. На этой же машине организовано зашифрованное хранилище информации, сделанное по образу и подобию из хендбука (https://www.freebsd.org/doc/ru_RU.KOI8-R/books/handbook/disks-encrypting.html).
После того как система запустится, я вручную монтировал раздел /dev/ada1.eli в каталог /private. И все нормально работало. Но как-то однажды когда клиент самбы был подключен к каталогу /private я выполнил несколько раз команду:
Код:
umount /private

(т.е. корректно без -f), на что система сказала, что устройство занято. Через некоторое время машина была перезагружена, при подключенном к ней клиенте самбы.
После чего стали возникать необычные вещи:
Код:
ls /dev
...ada1    ada1.eli

выдает, что устройство ada1.eli присутствует. При попытке монтирования:
Код:
mount /dev/ada1.eli /private
mount: No such file or directory

и на первой консоли выходят сообщения:
Код:
GEOM_ELI: Device ada1.eli destroyed
GEOM_ELI: Detached ada1.eli on last close
.
после чего устройство ada1.eli из каталога /dev исчезает остается только ada1.

Что я пробовал по своему не знанию данного материала:
1) сразу после загрузки системы выполнял команду:
Код:
geli restore /var/backups/ada1.eli /dev/ada1

на что выходило сообщение:
Код:
geli: Cannot write metadata to /dev/ada1: Operation not permitted.

и на первой консоли появлялось сообщение:
Код:
GEOM_ELI: Device ada1.eli destroyed

2) я снова вводил команду:
Код:
geli restore /var/backups/ada1.eli /dev/ada1

система ни чего не выдала в ответ. Я делаю следующее:
Код:
geli attach -p -k /root/da2.key /dev/ada1

на первой консоли в очередной раз (то же что и при загрузке) появляется сообщение:
Код:
GEOM_ELI: Device ada1.eli created

устройство /dev/ada1.eli появляется.
Делаю монтирование:
Код:
mount /dev/ada1.eli /private

И уже выходит совсем другое сообщение (чем в первый раз):
Код:
mount: /dev/ada1.eli: No such file or directory

При этом устройство /dev/ada1.eli присутствует. И автоматического действия "Detached" не происходит.

Если это как-то поможет, когда первый раз я в файле /etc/fstab добавил строку:
Код:
/dev/ada1.eli   /private   ufs   rw,noauto   2   2

и у меня система загружалась в однопользовательском режиме и не могла смонтировать устройство /dev/ada1.eli. Далее я закомментировал эту строку, и система нормально стала загружаться.
Часть содержания файла /etc/rc.conf:
Код:
#Geli conf
geli_devices="ada1"
geli_ada1_flags="-p -k /root/da2.key"

Система:
Код:
#uname -a
FreeBSD freebsd.secureserver 12.0-RELEASE FreeBSD 12.0-RELEASE r341666 GENERIC  i386


** Когда первый раз у меня возникли эти проблемы я использовал сначала команды: 1) geli init, 2) geli attach - может быть это как-то повлияло и ухудшило проблему.
** Читая различные сайты, выполнил команду newfs:
Код:
newfs -N /dev/ada1.eli

/dev/ada1.eli: 8192.0MB (16777208 sectors) block size 32768, fragment size 4096
   using 14 cylinder groups of 626.22MB, 20039 blks, 80256 inodes.
super-block backups (for fsck_ffs -b #) at:
 192, 1282688, 2565184, 3847680, 5130176, 6412672, 7695168, 8977664, 10260160,
 11542656, 12825152, 14107648, 15390144, 16672640

Товарищи, у меня к вам большая просьба, если у вас есть кой-то материал по этой теме, то пожалуйста, дайте посмотреть, почитать.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вт 23 апр, 2019 10:38 am 
Не в сети
Модератор
Аватара пользователя

Зарегистрирован: Ср 08 ноя, 2006 2:53 pm
Сообщения: 5478
Откуда: СССР, Харьков
А вы не пробовали fsck_ffs запустить на этот раздел?
У меня Samba на geli обитает, иногда рубят э/э, fsck_ffs всегда выручал.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вт 23 апр, 2019 12:10 pm 
Не в сети

Зарегистрирован: Вт 23 апр, 2019 7:49 am
Сообщения: 30
Да, кстати, забыл сказать если выполняю:

fsck_ffs /dev/ada1.eli , он выдает:
Can't open /dev/ada1.eli: No such file or directory

Даже после очередного выполнения geli attach сообщение fsck_ffs /dev/ada1.eli аналогичное выходит
ankor, можно еще у Вас спросить? А вот монтирование geli разделов вы как сделали? Отдельным скриптом в rc.d после старта самбы? Или как? Я пока вынужденно пришел к такой идеи, но думаю должно же работать через /etc/fstab и не понимаю почему не работает.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вт 23 апр, 2019 1:16 pm 
Не в сети
Модератор
Аватара пользователя

Зарегистрирован: Ср 08 ноя, 2006 2:53 pm
Сообщения: 5478
Откуда: СССР, Харьков
Отдельными скриптами:
mount_geli
Код:
#!/bin/sh
/usr/local/etc/rc.d/samba_server stop
mdconfig -a -t vnode -f /doc
mount -t msdosfs /dev/da0s1 /mnt
geli attach -p -k /mnt/key3 /dev/md0
mount /dev/md0.eli /samba/doc
/usr/local/etc/rc.d/samba_server start
umount /mnt

umount_geli
Код:
#!/bin/sh
/usr/local/etc/rc.d/samba_server stop
umount /dev/md0.eli
geli detach /dev/md0.eli
mdconfig -d -u 0
/usr/local/etc/rc.d/samba_server start

Планировалось скрипт запускать при старте системы, но "руки не дошли",
после старта системы приходится вставлять флешку и вручную стартовать скрипт.
При завершении работы система сама корректно размонтирует, скрипт umount_geli в принципе
не нужен, но для проверки работы пригодится.
А свой раздел вы или своими действиями убили или он сам умер и такое бывает.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вт 23 апр, 2019 2:29 pm 
Не в сети

Зарегистрирован: Вт 23 апр, 2019 7:49 am
Сообщения: 30
ankor, спасибо за скрипты!!!
ankor, позвольте еще спросить? Я сейчас читал "Администрирование это искусство достигать равновесие" там дословно написано если Вы свой скрипт поместили в /usr/local/etc/rc.d/, и этот скрипт имеет: 1- бит исполнения, 2- "понимает" параметр start, 3- расширение sh, то Ваш скрипт она без Вашего уже участия запустит. А еще, я вот помню если описать в скрипте параметр
Код:
#REQUIRE samba
,
то сначала отработает Ваше монтирование, а потом стартонет самба (как-то так примерно).
Я пробовал кстати, монтировать раздел шифрованный при включенной самбе и он нормально отрабатывает. А вот umount выполнил просто ради проверки что будет. Но и теперь увидел.

Мне тоже кажется что мой тестовый раздел исчез безвозвратно. Выполнил команду:
fsck_ffs -F /dev/ada1.eli и он вывел:
Cannot find file system superblok.

И у меня возник вопрос. Как Вы, ankor, считаете? Может быть после создания шифрованного раздела с помощью команды newfs, стоит с помощью чего-то делать какой-то ее слепок? Вот как есть когда, например, gpart-ом создаем раздел и у него gpart show ada5 -он ее показывает поблоково и ее можно как выгрузить, так и загрузить из текстового файла (у gpart есть еще recover, но я им не пользовался). Если что-нибудь (какое-то действие) что может обезопасить после создания шифрованного раздела?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вт 23 апр, 2019 3:34 pm 
Не в сети
Модератор
Аватара пользователя

Зарегистрирован: Ср 08 ноя, 2006 2:53 pm
Сообщения: 5478
Откуда: СССР, Харьков
Код:
FreeBSD 8.2-RELEASE-p2 (DOPOMOGA) #1: Tue May 30 17:12:49 EEST 2017

Welcome to FreeBSD!
Файлопомойка запушена в работу 17 августа 2011 года в 13:30.

%df -h
Filesystem           Size    Used   Avail Capacity  Mounted on
/dev/mirror/gm0s1a    1.9G    520M    1.3G    29%    /
devfs                 1.0K    1.0K      0B   100%    /dev
/dev/mirror/gm0s1d     77G     75G   -3.9G   106%    /data
/dev/mirror/gm0s1f    3.9G     26K    3.6G     0%    /tmp
/dev/mirror/gm0s1g    131G     14G    107G    11%    /usr
/dev/mirror/gm0s1e    3.9G    966M    2.6G    26%    /var
/dev/md0.eli           74G     31G     43G    41%    /usr/samba/doc
%

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

За всё время не "получилось" потерять данные с шифрованных разделов.
А что-бы быть уверенным в сохранности данных, надо архивы делать.
Когда сервер прегружается у нас одна проблема: "Куда флешка с ключами делась?"
при
Код:
%uptime
14:28  up 208 days, 19:54, 1 user, load averages: 0,00 0,00 0,00

можно и забыть куда положил.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вт 23 апр, 2019 4:06 pm 
Не в сети

Зарегистрирован: Вт 23 апр, 2019 7:49 am
Сообщения: 30
ankor, большое спасибо за ответы! Про бекапы можно Вас спросить? Как Вы их делаете? Через geli backup? Вроде в мане по geli написано, что резервное копирование метаданных. Тогда может, например, поступать так: 1) делаем
Код:
 geli backup ...
, 2) с помощью
Код:
dd if=/dev/ada1 of=/mnt/backups/back+дата bs=100M
сохраняем файл устройства. И система сохраняет зашифрованный файл, который, например, еще и можно примонтировать, но перед этим проинициализировать с ключем?

Я вижу один недостаток этого подхода. Т.к. на этапе создания шифрованного устройства мы выполняем
Код:
dd of=/dev/random if=/dev/ada1...
, то при таком сохранении понадобится очень много времени и дискового пространства. Да и ужать образ по сути не получится.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вт 23 апр, 2019 4:30 pm 
Не в сети
Модератор
Аватара пользователя

Зарегистрирован: Ср 08 ноя, 2006 2:53 pm
Сообщения: 5478
Откуда: СССР, Харьков
Я этим не занимаюсь, для этого есть админ.
Всё просто, у админа Win10 в планировщике задание создал и всё с серверов собирает,
на отдельный пошифрованый диск каждые сутки, а раз в неделю всё в облако куда-то прячет.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Зарегистрированные пользователи: Bing [Bot], Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB
Яндекс.Метрика