Файловый сервер debian для домена windows

Debian 10: Установка и настройка Samba Active Directory

Актуализировал тему по настройке Samba 4 в качестве контроллера домена. Ранее я разворачивал Samba в Docker, но в версии 4.11 возникли нюансы с диапазоном пробрасываемых портов со стороны iptables, поэтому использовал классическую установку.

Перед началом надо кратко и просто пояснить основные моменты: что, зачем и почему для базового понимания в процессе настройки.

Службы каталогов

В любой организации наступает период, когда появляется множество клиентов, серверов, сервисов – всё это требует сложности администрирования: разделение прав, создание\удаление учетных записей. Чем больше народу приходит в компанию, тем больше болит голова у админа. Очевидным решением становится использование службы каталогов – средства иерархического представления ресурсов с централизованным управлением. К сведению, первые службы каталогов появились ещё в 1984 году и продолжили своё развитие в различных вариациях. А когда Microsoft выпустила NTDS (в дальнейшем переименован в Active Directory), то данный инструмент стал негласным стандартом и одним из самых распространенных в своём классе.

LDAP – протокол, который лёг в основу служб каталогов и используется в различных LDAP-совместимых реализациях служб каталогов. К примеру, таковыми являются (самые популярные и известные):

  • Active Directory;
  • OpenLDAP;
  • Samba Domain;
  • И прочие другие коммерческие.

Все записи LDAP представляются атрибутами в следующем виде:

где “petrov” – уникальная запись в Object Unit “office” домена example.com

Samba как DC

Но за всё надо платить, ибо самый популярный для таких целей Windows Server с Active Direcory на борту не бесплатный, а потому в последнее время с развитием пакета программ Samba 4 есть возможность использования Samba в качестве контроллера домена с применением групповых политик. О Samba 4 и последующей настройке и будет дальнейшее содержание данной статьи.

По своей сути Samba 4 есть Open-Source реализация Active Directory и, согласно документации, является стабильным вариантом применения в качестве домен-контроллера в production-среде.

Одним из минусов является отсутствие поддержки репликации Sysvol через DFS-R (условно говоря, sysvol – это директория с параметрами групповых политик, сценариев входа\выхода из системы и при использовании нескольких контроллеров домена, должна быть реплицирована на все имеющиеся контроллеры в домене). Samba пока что так не умеет, а потому есть решения с использованием rsync или более сложные и гибкие варианты. Но об этом в данном материале рассказано не будет.

В ранних версиях было ограничение размера БД до 4 гб в Samba при использовании в качестве контроллера домена, но данный вопрос был решён в версии 4.9 – реализован бэкенд LDB (экспериментальный), основанный на библиотеке LMDB, что в итоге позволяет создавать базы данных объемом свыше 4 гб. Для включения данного параметра нужно использовать ключ –backend-store=mdb. В данной статье, дабы не усложнять материал, обойдемся без данного ключа.

Перед установкой

Наименование домена

Перед началом инсталляции необходимо определиться с именем сервера и домена. В рамках данной статьи сервер с Samba на борту будет иметь полное имя (FQDN) dc0.ad.rmn-lux.ru, а сам домен – ad.rmn-lux.ru.

Кратко поясню, почему выбран именно такой формат именования.

  • Никаких названий а-ля PDC или BDC использовать не стоит – это пережитки прошлого;
  • Также не стоит использовать test.local и т.п. домены:
    • подобные имена противоречат rfc 6762
    • для такого домена не получится получить публичный TLS-сертификат
    • такое имя будет недоступно из внешней сети
  • Можно было бы назвать AD домен также, как основной домен сайта. Для примера, в таком случае имя домена было бы как и домен моего сайта – it-lux.ru. Это правильно, но в таком случае пришлось бы следить за публичной и внутренней зоной DNS, что не всегда удобно, т.к. может возникнуть рассинхрон.
  • В качестве имени можно выбрать домен из другой зоны, который не будет конфликтовать с основным доменом. В моём случае это может быть, например, it-lux.online или аналогичный домен в другой доменной зоне.

Исходя из вышесказанного, наиболее правильным, как мне кажется , использовать поддомен ad.rmn-lux.ru для названия домена AD, т.к. это будет консолидировано в рамках одного домена.

AD Schema

По своей сути схема включает в себя описания всех объектов, хранящихся в службе каталогов (пользователи, группы и т.д.)

Информация с оф. сайта Samba по поддержке AD схем:

Windows Server Version Directory Schema Version
Windows Server 2016 87
Windows Server 2012R2 69
Windows Server 2012 56
Windows Server 2008R2 47
Samba Version Highest Supported Schema Version
4.11 and later 69
4.5 – 4.10 69 *
4.0 – 4.4 47

Последняя стабильно поддерживаемая AD схема в Samba на момент написания данного материала – 69, а подходящая версия Samba для этого – 4.11 и выше.

Одним из нюансов является то, что в стабильных репозиториях Debian 10 доступна Samba версии только 4.9. Но хотелось бы использовать последние доступные возможности схемы домена, поэтому я на свой страх и риск подключил тестовые репозитории и произвёл дальнейшую установку Samba 4.11.3 из них:

Для домена необходимо использование DNS-сервера. Я остановился на распространённом варианте – использование встроенного в Samba DNS Internal. Допустимо использование BIND, но в рамках данной статьи его применение рассматриваться не будет.

Samba Internal DNS имеет следующие недостатки:

  • нельзя использовать как кеширующий сервер
  • не поддерживает рекурсивные запросы
  • нет shared-key transaction signature (TSIG)
  • нет зоны-заглушки
  • не поддерживает zone transfers
  • нет Round Robin балансировки между DC’s
Читайте также:  Несколько пользователей удаленного рабочего стола windows 10 одновременно

Не смотря на вышеперечисленное, на практике это не доставляет проблем.

Подразумевается, что в сети, где разворачивается Samba AD, уже используется один или более DNS-серверов (например, тот же BIND, который не связан с Samba или внешние гугл\яндекс сервера). На этот DNS-сервер будут перенаправляться запросы клиентов Samba, т.е. он будет выбран в качестве forwarder.

Настройка hosts

Также сервер dc0.ad.rmn-lux.ru должен иметь статический IP-адрес и файл /etc/hosts со следующим содержимым:

Удаление существующих файлов

Для корректной установки переместить исходные конфиги во временную директорию, чтобы при создании домена данные файлы были сгенерированы заново:

Запущенные экземпляры Samba и сервисов

Перед началом установки надо проверить, что не запущена samba и её сервисы после установки пакетов:

Если под фильтр попадает что-то из запущенного, нужно остановить:

Скрыть юниты, чтобы они не могли быть запущены:

Установка

Для своих серверов я всегда использую Centos, но здесь пришлось сделать исключение и выбрать Debian, т.к. Samba, доступная из основных пакетов в Centos, не может выступать в роли AD.

Вариантов установки на Centos было несколько: собрать из пакетов (что на продуктивном сервере совсем некошерно) или установить из сторонних репозиториев (например, tissamba), но решил попробовать Debian, т.к. не хотелось искать обходные пути.

Но и с Debian оказался нюанс, т.к. в основных стабильных репозиториях не было нужной мне версии. Тем не менее, вариант установки из официальных репозиториев, пусть и тестовых, меня более чем устроил.

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

Зависимости, необходимые для Samba AD в Debian:

В оф. документации указаны пакеты python-gpgme python3-gpgme для зависимостей, но в Debian 10 его больше нет, так что его я не устанавливал.

Настройка домена:

Для установки Samba в Debian 10 нужны следующие пакеты:

Напоминаю, что мне нужна была версия 4.11, поэтому после установки нужно убедиться, что будет использоваться пакет нужной версии:

Теперь непосредственно настройка домена:

Указывается роль – domain controller, использование необходимого rfc2307, согласно оф. документации – для возможности хранения атрибутов Unix в AD, встроенный DNS, имя домена – обязательно заглавными буквами и NetBIOS имя домена одним словом без точки, а также указание админского пароля.

Теперь надо сконфигурировать /etc/resolv.conf, чтобы в качестве резолвера использовался DNS из Samba (по идее, можно было бы сделать до создания домена):

На всякий случай уточню, что файл resolve.conf может затираться NetworkManager`ом или установленной утилитой resolvconf после рестарта, стоит это иметь ввиду.

Kerberos

Kerberos – это сетевой протокол, который будет использоваться для аутентификации.

В самом начале выпиливался стандартный конфиг kerberos – теперь нужно вернуть его назад с новыми настройками, сделав следующее:

И проверить его содержимое (на всякий случай):

После успешного создания домена (не должно быть никаких ошибок при выполнении), нужно вернуть настройки юнита самбы, т.к. делался mask. Сейчас же при старте возникает такая ошибка:

Симлинк, ведущий в /dev/null, нужно удалить и выполнить перезагрузку сервисов systemd:

И запустить самбу, которая подтянет уже всё остальное, что ей нужно:

Правка конфигурационного файла Samba

После установки конфиг выглядит примерно так:

Но по своему опыту скажу, что штатный конфиг нужно поправить, местами упростив настройки. Ниже кратко опишу опции конфигурационного файла /etc/samba/smb.conf:

После внесения изменений в конфиг, нужно выполнить рестарт сервиса:

Проверка настроек

Теперь, когда всё настроено, нужно выполнить ряд проверок, чтобы убедиться в корректной работе всех компонентов Samba.

Общая проверка выполняется командой testparm:

Посредством команд hosts и wbinfo можно провести ряд проверок, результат выполнения которых должен быть без ошибок:

Прочие проверки, которые могут пригодиться для отладки:

Администрирование

Если все проверки пройдены и никаких ошибок не возникло, можно приступать к использованию домена.

Можно посмотреть общую информацию о домене:

Проверить список дефолтных юзеров через wbinfo или samba-tool:

А также список компьютеров (пока что только один КД):

Задать ему пароль:

Прочие команды можно посмотреть, выполнив:

через samba-tool также настраивается DNS.

Настройку и управление также можно осуществлять посредством RSAT, т.е. классическими виндовыми оснастками, но мне больше нравится консольный вариант непосредственно с самого сервера Samba.

Бэкап

В официальной документации подробно всё описано, поэтому первоначально стоит ознакомиться с информацией там.

После настройки благоразумно будет обеспечить резервное копирование Samba. Есть несколько типов резервирования: “Online” и “Offline”.

Online делает копию работающей базы DC:

Offline создает резервные копии файлов Samba:

Каждая команда создает файл резервной копии .tar.bz2, который содержит полную резервную копию домена (на основе данного DC). Затем файл резервной копии можно использовать для восстановления домена с помощью команды «samba-tool domain backup restore».

Использовать ту или иную схему бэкапа нужно в зависимости от ситуации. В обычных случаях Online-бэкап самый простой и быстрый, но в случае каких-то неполадок и для их расследования и устранения лучше подойдёт Offline-бэкап, т.к. содержит в себе дополнительные данные.

В идеале можно комбинировать оба способа, настроив бэкап по крону с созданием нужного кол-ва копий.

Заключение

Теперь, когда имеется установленный и настроенный контроллер домена, можно найти ему применение. Например, завести все рабочие станции офиса в домен и централизованно ими управлять. Или же настроить RADIUS для авторизации на VPN-сервере через доменную учётную запись.

Читайте также:  Как обновиться до windows 10x

Поднимаем корпоративный файловый сервер на Debian Linux


Ох, и обленились же в последнее время все системные администраторы. Софт, как и прежде, можно юзать пиратский, поэтому абсолютно никто не мешает им ставить серверные виндовозы для решения элементарных задач. Таких как, например, поднятие файлового сервера. С windows на это требуется каких то пол часа времени. Немного, да? А как насчет Linux? С ним нужно подольше поковыряться? Не согласен.

На самом деле для поднятия файлового хранилища на Linux требуется ничуть не больше времени. И сейчас, уважаемый читатель, я тебе это докажу. Я покажу, как настроить Debian Linux для работы с Active Directory, а так же поднять веб-интерфейс для администрирования.

Пусть у нас имеется контроллер домена на Windows 2003 Server и системник под файловый сервер без ОС. Задача состоит в том, чтобы: установить ОС, ввести машину в домен, настроить аутентификацию доменных пользователей без запроса логина и пароля, поднять веб-интерфейс для управления, создать необходимые общедоступные ресурсы.
Итак, приступимс…

Условимся, что:
Имя нашего нового файлового сервера: vr-online
Домен: mydomain
Контроллер домена: dataserver
Полное доменное имя контроллера домена (FQDN): dataserver.mydomain.local
IP контроллера домена: 192.168.0.1
IP DNS-сервера: 192.168.0.1
Виртуальная машина – сила!

Для удобства будем ставить и настраивать на виртуальной машине Virtual Box. Если тоже захочешь попрактиковаться на виртуалке, то не забудь тип сетевого подключения поставить “Сетевой мост” с сетевой картой, которая смотрит в локальную сеть:

На данный момент последним является Debian Linux 5 под кодовым именем Lenny. Его и устанавливаем.

Установка Дебиана проста до безобразия. Выбирай “Graphical install”, затем укажи нужный язык. Во время установки понадобится ввести следующие параметры:
Имя компа : vr-online
Домен : mydomain.local
Разметка диска : Авто (отдельные разделы под home, usr, var, tmp). При желании можно разметить вручную. На твоё усмотрение.
Выбор программного обеспечения: ТОЛЬКО “стандартная система”, ничего более.

Настройку сети я пропустил, т.к. в любой нормальной корпоративной локалке есть DHCP-сервер. Т.е. программа установки получит все параметры автоматом. На этом установка окончена.
Log in, please!

Добро пожаловать в мир Linux =)

Логинимся под рутом.

Первым делом убираем CD/DVD привод из sources.list. В реале это позволяет физически отключить привод от нашего сервака. Ведь больше он на нём не понадобится.

Комментируем строчку, что начинается на “deb cdrom” и сохраняем.
Теперь:

Поднимаем SSH. Ведь рулить серваком проще всего c помощью классной утилиты Putty.

> apt-get install ssh

Т.к. сервер стоит во внутренней сети, то можно не менять настройки безопасности SSH и сразу логиниться со своего компа от имени рута. Делать так на public сервере ни в коем случае нельзя.

Теперь смотрим какой IP получил наш сервер:

Можно заходить по SSH. Открываем Putty, пишем IP. В разделе Translation указываем UTF -8. Огромное достоинство Putty заключается в том, что данные из буфера обмена вставляются с командную строку по клику правой клавиши мыши по области окна. Т.е. скопировал ранее заготовленную команду со всеми нужными параметрами, кликнул по окну Putty, данные попали в командную строку.

Куда же нам теперь без файлового менеджера? Он обязательно пригодится. Ставим Midnight Commander. Кстати в mc при работе через putty можно пользоваться даже мышкой.

> apt-get install mc

Переходим к настройке сервера

На всякий случай добавим в hosts инфу о нашем контроллере домена:

192.168.0.1 dataserver.mydomain.local dataserver

Ставим ntpdate для синхронизации времени c DC(Domain Controller), это нужно для нормальной работы Kerberos.

> apt-get install ntpdate

Прописываем наш контроллер домена:

Запускаем синхронизацию времени вручную:

> ntpdate –s dataserver.mydomain.local

Для проверки запускаем:

Должны увидеть правильное время и дату.

Пришла пора уточнить сервер(ы) DNS, обслуживающий домен.

Там обязательно должна быть строка:

Ведь наш DC так же несёт на себе DNS
Ставим все нужные для работы пакеты.

> apt-get install samba winbind libpam-smbpass krb5-user krb5-config

Небольшое описание того, что мы устанавливаем:

Samba — это набор программ, которые реализуют протокол SMB/CIFS в системах unix, позволяя обслуживать запросы к файлам и принтерам клиентов Windows, NT, OS/2 и DOS. Этот протокол иногда называют LanManager или NetBIOS.

Winbind — для получения информации о пользователях и группах с серверов Windows NT. Также служба может выполнять функции авторизации через PAM-модуль.

Libpam-smbpass – это модуль для PAM. Позволяет преобразовывать Unix пользователей в пользователей Samba. Т.к. у Samba своя собственная база пользователей, поэтому её обязательно нужно синхронизировать с базой Unix.

Krb5-user – позволяет производить аутентификацию пользователей в сети. Kerberos — сетевой протокол аутентификации, позволяющий безопасно передавать данные через незащищённые сети для безопасной идентификации. Обеспечивает взаимную аутентификацию — оба пользователя через сервер подтверждают личности друг друга. Сообщения, отправляемые через протокол Kerberos, защищены от прослушивания и атак повторного воспроизведения.

Krb5-conf – создаёт начальную конфигурацию пакета.

Во время установки появится окно конфигурирования samba. Спросит рабочую группу/домен. пишем всё, что угодно. Всё равно потом эти конфиги перезапишем. Следующий вопрос будет об использовании WINS. нажми “Нет”. Следом выйдет запрос настройки Kerberos. Пишем тоже всё, что угодно. На следующий вопрос отвечаем аналогично.

Всё. Установилось. Настроим сначала Kerberos.
Лёгким жестом руки удаляем всё из конфига:

> cat /dev/null > /etc/krb5.conf

Не подумай, что я – маньяк. Просто я не люблю, когда в конфигах находится сотни строк с комментариями. Всегда удаляю всё лишнее. Теперь правим его:

Вот мой начальный рабочий конфиг кербероса:
[libdefaults]
default_realm = MYDOMAIN.LOCAL

krb4_config = /etc/krb.conf
krb4_realms = /etc/krb.realms
kdc_timesync = 1
ccache_type = 4
forwardable = true
proxiable = true

v4_instance_resolve = false
v4_name_convert = <
host = <
rcmd = host
ftp = ftp
>
plain = <
something = something-else
>
>
fcc-mit-ticketflags = true

Читайте также:  Transfer photos from windows to android

[realms]
DATASERVER.MYDOMAIN.LOCAL = <
kdc = dataserver.mydomain.local
admin_server = dataserver.mydomain.local
>

[domain_realm]
.mydomain.local = MYDOMAIN.LOCAL
mydomain.local = MYDOMAIN.LOCAL

[login]
krb4_convert = true
krb4_get_tickets = false

Важно. Соблюдать регистр букв! Точно так же как и у меня.
Обрати внимание, что в разделе [realms] мы пишем DATASERVER.MYDOMAIN.LOCAL, а не MYDOMAIN.LOCAL .

Просто замени MYDOMAIN.LOCAL и DATASERVER.MYDOMAIN.LOCAL на своё и все будет работать. По факту это – и есть стандартный конфиг. Я лишь вырезал из него комментарии и realms доменов, которыми ты всё равно никогда не будешь пользоваться.

Так же безжалостно поступаем с конфигом самбы. Дропаем всё.

> cat /dev/null > /etc/samba/smb.conf
> nano /etc/samba/smb.conf

Вот мой рабочий конфиг, с которого я всегда начинаю настройку:
[global]
workgroup = MYDOMAIN
server string = File server
dns proxy = no
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
security = ads
realm = MYDOMAIN.LOCAL
encrypt passwords = true
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
pam password change = yes
socket options = TCP_NODELAY
idmap uid = 1000-20000
idmap gid = 1000-20000
template shell = /bin/bash
winbind use default domain = yes
winbind enum groups = yes
winbind enum users = yes

#======================= Share Definitions =======================
[homes]
comment = Home Directories
browseable = no
read only = no
create mask = 0700
directory mask = 0700
valid users = MYDOMAIN\%S

[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
guest ok = no
read only = yes
create mask = 0700

Расписывать каждый параметр не буду. Лень Описание можно найти без проблем в инете. Потестим конфиг самбы:

Получили:
Load smb config files from /etc/samba/smb.conf
Processing section «[homes]»
Loaded services file OK.
Server role: ROLE_DOMAIN_MEMBER

Отлично. Осталось совсем немного.

В файле /etc/nsswitch.conf указать, откуда брать информацию о пользователях:

passwd: compat winbind
group: compat winbind
shadow: compat winbind

hosts: files dns winbind

Модифицируем PAM. Наcтраиваем cиcтемную аутенфикацию и авторизацию контроллером домена.

Пишем:
account required pam_unix.so
account sufficient pam_winbind.so

Пишем:
auth sufficient pam_winbind.so
auth sufficient pam_unix.so nullok_secure use_first_pass

Пишем:
password sufficient pam_winbind.so
password required pam_unix.so nullok obscure min=4 max=8 md5

Пишем:
session required pam_unix.so
session required pam_mkhomedir.so skel=/etc/skel/ umask=0022

Т.к. у нас объявлена в конфиге Samba одна шара (домашняя директория каждого юзера домена), то нужно создать папку MYDOMAIN в /home.

Перезапускаем winbind и samba

> /etc/init.d/winbind stop && /etc/init.d/samba restart && /etc/init.d/winbind start

Теперь джойнимся в домен:

> net ads join -U administrator

Здесь administrator – логин администратора домена. Писать просто логин.
Не administrator@mydomain, и не eval(unescape(‘%64%6f%63%75%6d%65%6e%74%2e%77%72%69%74%65%28%27%3c%61%20%68%72%65%66%3d%22%6d%61%69%6c%74%6f%3a%61%64%6d%69%6e%69%73%74%72%61%74%6f%72%40%6d%79%64%6f%6d%61%69%6e%2e%6c%6f%63%61%6c%22%3e%61%64%6d%69%6e%69%73%74%72%61%74%6f%72%40%6d%79%64%6f%6d%61%69%6e%2e%6c%6f%63%61%6c%3c%2f%61%3e%27%29%3b’)) . А просто administrator!

Далее вбиваем пароль. Вуяля! И мы в домене.

Делаем reload winbind, чтобы он перечитал информацию о доменных юзерах и группах:

Поcле чего проверяем что же получили. Отобразим доменных юзеров и группы:

> wbinfo –u
> wbinfo –g

-u отобразит cпиcки доменных пользователей
-g отобразит cпиcки доменных групп
Поздравляю, мой дорогой читатель!

Теперь можно зайти на наш файловый сервер:

Пока ты увидишь лишь одну шару – папку с именем своего пользователя. Эта личная папка создастся для каждого доменного пользователя, зашедшего по сети на файловый сервер. Доступ к папке имеет только сам пользователь, и никто более.

Дело почти сделано. Теперь нужно поставить удобную панель администрирования Samba. Ставим, конечно же, WebMin.

Webmin — это программный комплекс, позволяющий администрировать операционную систему через веб-интерфейс, в большинстве случаев, позволяя обойтись без использования командной строки и запоминания системных команд и их параметров. Используя любой браузер, администратор сервера может создавать новые учётные записи пользователей, почтовые ящики, изменять настройки служб и сервисов, например : веб-сервера Apache, DNS, файл-сервера Samba.

Официальный ресурс проекта http://www.webmin.com/ ]]>
Возможности Webmin значительно шире, чем мы будем юзать. Так что если не сталкивался с ним, то обязательно посмотри остальной функционал. Тебе понравится. Уверен.

Удобней всего ставить из репозитория. Правим /etc/apt/sources.list. Добавим в него строку:
Цитировать

Далее нужно установить GPG ключ следующими командами:
Цитировать

> apt-get update
> apt-get install webmin

Все зависимости подтянуться автоматически.

Теперь со своего рабочего места можно уже заходить на сервер через браузер:

Логинимся под root’ом. Для начала нужно сменить язык интерфейса:
Webmin – Change Language and theme — выбираем Russian UTF-8.

Надо залогиниться заново, чтобы увидеть русскоязычный интерфейс. Кое-что всё равно останется на англицком, но это не страшно.

Вот теперь можно заняться настройкой Samba.
Идём Службы – Файл-сервер Samba.
Выбирай “Настройка автоматической синхронизации пользователей Unix и Samba”.

Ставь галочки:
— Добавлять пользователя Samba при добавлении пользователя Unix
— Изменить пользователя Samba при изменении пользователя Unix
— Удалить пользователя Samba при удалении пользователя Unix
Кликай пимпу “Применить”.

Аналогично нужно настроить синхронизацию групп Samba с группами Unix. Кнопка “Configure automatic Unix and Samba group synchronisation”

Остаётся лишь перенести всех доменных пользователей и группы в Samba. Для этого кликай “Преобразование пользователей Unix в пользователи Samba”.

Ну вот и всё. Теперь можно создавать новые файловые ресурсы и админить существующие, используя удобный веб-интерфейс.
Напоследок.

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

Как видишь, нет абсолютно ничего сверхсложного. Первый раз я копался с настройкой 2 дня. Теперь мне хватает 30-ти минут на поднятие файлового сервера на Debian Linux. Качай свой скилл и сможешь делать всё это с закрытыми глазами. Удачи!

Written by: Роман Костенко aka Lord_of_fear
E-mail: eval(unescape(‘%64%6f%63%75%6d%65%6e%74%2e%77%72%69%74%65%28%27%3c%61%20%68%72%65%66%3d%22%6d%61%69%6c%74%6f%3a%6b%6f%73%74%65%6e%6b%6f%2e%72%2e%6b%68%76%40%67%6d%61%69%6c%2e%63%6f%6d%22%3e%6b%6f%73%74%65%6e%6b%6f%2e%72%2e%6b%68%76%40%67%6d%61%69%6c%2e%63%6f%6d%3c%2f%61%3e%27%29%3b’))

Оцените статью