Всем привет!
На днях пришлось обновлять netatalk2 на netatalk3, точнее заменить, т.к. в третий версии полностью заменены конфигурационный файлы, точнее теперь в одном файле можно указать и настройки сервера и шары (очень похоже на samba).
Netatalk является свободным , открытым исходным кодом реализация протокола AppleTalk . Это позволяет Unix-подобным операционным системам служить файловым сервером для компьютеров Macintosh .
Исторически (до выпуска 3.0) Netatalk реализовал пакет протоколов AppleTalk , позволяющий Unix-подобным операционным системам служить также в качестве серверов печати и времени для компьютеров Apple Macintosh.
Начиная с версии 2.0.5, Netatalk поддерживает использование Time Machine по сети аналогично собственному Time Capsule от Apple . Начиная с версии 2.2, Netatalk поддерживает протокол уровня AFP 3.3, который совместим с MacOS по крайней мере до 10,13 (High Sierra).
Версия 3.0 Netatalk была выпущена в июле 2012 года и добавила конфигурацию в стиле ini , бэкэнд AppleDouble с использованием расширенных атрибутов файловой системы по умолчанию и удалила поддержку сети AppleTalk . Последняя версия поддерживает уровень AFP 3.4.
В настоящее время Netatalk поддерживает операционные системы FreeBSD , Linux , OpenBSD , NetBSD , Solaris и OpenSolaris . Также есть пакеты для прошивки и Mac OS X . Netatalk лицензируется в соответствии с условиями GNU General Public License .
В данной заметке рассмотрим установку и первоначальную настройку netatalk в среде FreeBSD (настройка в принципе подойдет и для других операционных систем, обращайте внимания на пути).
Пару слов чего я хотел добиться в этой установке:
- У меня в наличии старые клиенты MacOS 9.2 и нужно было организовать временный доступ к старым архивам.
- Создать виртуальных пользователей из системных с простыми паролями или вообще без них.
Устанавливаем из портов, предварительно обновив их:
# portsnap fetch update # cd /usr/ports/net/netatalk3 && make install clean
В конфиге оставляем все по умолчанию:
Разрешим запуск netatalk3:
# echo netatalk_enable=\"YES\" >> /etc/rc.conf
Заведем нашего пользователя(ей) в систему (пользователю к сожалению нужен шелл, noshell не прокатывает):
# pw useradd -n mac01 -c "MacOS user" -s /bin/sh -w random
Отредактируем конфигурационный файл netatalk3:
# vi /usr/local/etc/afp.conf
[Global] uam list = uams_randnum.so uams_guest.so guest account = nobody passwd file = /usr/local/etc/afppasswd unix charset = UTF8 mac charset = MAC_CYRILLIC cnid scheme = dbd [SHARE] path = /data/share valid users = nobody [DOC] path = /data/Docs valid users = mac01
Где мы создали две шары:
- SHARE — для гостевого доступа (используется uams — uams_guest.so )
- DOC — с разрешением для пользователя mac01 (используется uams — uams_randnum.so)
- Можно указывать группы пользователей, как @macusers или как «@мас users», перечисление через пробел!
Создадим файл паролей и установим пароль нашего пользователя mac01:
# touch /usr/local/etc/afppasswd # afppasswd -ap /usr/local/etc/afppasswd mac01 Enter NEW AFP password: Enter NEW AFP password again: afppasswd: updated password.
Запустим netatalk:
# /usr/local/etc/rc.d/netatalk start
Собственно все:)
P.S.
- UAMs — User Authentication Modules (Модули аутентификации)
- Различие в синтаксисе 2 и 3 версии netatalk, а так же устаревшие настройки
- Варианты UAMs