Первоначальный выпуск | 1992 ( 1992 ) | [1]
---|---|
Стабильный релиз | 4.21.3 [2] / 6 января 2025 г. |
Репозиторий |
|
Написано в | С , Питон |
Операционная система | Мультиплатформенность |
Тип | Сетевая файловая система |
Лицензия | 2008: GPL-3.0 или более поздняя версия [a] 1993: GPL-2.0 или более поздняя версия [b] 1992: Проприетарная версия [c] |
Веб-сайт | www.samba.org |
Samba — это свободное программное обеспечение , повторно реализующее сетевой протокол SMB , изначально разработанное Эндрю Триджелом . Samba предоставляет файловые и печатные службы для различных клиентов Microsoft Windows [5] и может интегрироваться с доменом Microsoft Windows Server , как в качестве контроллера домена (DC), так и в качестве члена домена. Начиная с версии 4, он поддерживает домены Active Directory и Microsoft Windows NT .
Samba работает на большинстве Unix-подобных систем, таких как Linux , Solaris , AIX и варианты BSD , включая Apple macOS ( Mac OS X 10.2 и выше) и macOS Server . Samba также работает на ряде других операционных систем, таких как OpenVMS и IBM i . Samba является стандартной почти во всех дистрибутивах Linux и обычно включается в качестве базовой системной службы в другие операционные системы на базе Unix. Samba выпускается на условиях GNU General Public License . Название Samba происходит от SMB ( Server Message Block ), названия фирменного протокола, используемого сетевой файловой системой Microsoft Windows.
Эндрю Триджелл разработал первую версию Samba Unix в декабре 1991 и январе 1992 года, будучи аспирантом Австралийского национального университета , используя анализатор пакетов для сетевого анализа протокола, используемого серверным программным обеспечением DEC Pathworks . На момент первых релизов, версий 0.1, 0.5 и 1.0, все с первой половины января 1992 года, у него не было официального названия; Триджелл просто называл его «файловым сервером Unix для Dos Pathworks». Он понимал, что «фактически реализовал протокол netbios» во время версии 1.0 и что «это программное обеспечение можно использовать с другими клиентами ПК». [ необходима цитата ]
Сосредоточившись на взаимодействии с Microsoft's LAN Manager , Триджелл выпустил "netbios for unix", observer, версию 1.5 в декабре 1993 года. Этот релиз был первым, включавшим клиентское программное обеспечение, а также сервер. Кроме того, в это время в качестве лицензии была выбрана GPL2. [ необходима цитата ]
В середине серии 1.5 название было изменено на smbserver . Однако Триджелл получил уведомление о товарном знаке от компании "Syntax", которая продавала продукт под названием TotalNet Advanced Server и владела товарным знаком "SMBserver". Название "Samba" было получено путем запуска команды Unix grep через системный словарь для поиска слов, содержащих буквы S, M и B в указанном порядке (т.е. ). [6]grep -i '^s.*m.*b' /usr/share/dict/words
Версии 1.6, 1.7, 1.8 и 1.9 последовали относительно быстро, последняя была выпущена в январе 1995 года. Триджелл считает принятие CVS в мае 1996 года знаменательным событием для Samba Team, хотя ранее вносили свой вклад и другие люди, особенно Джереми Эллисон . [7]
Версия 2.0.0, выпущенная в январе 1999 года, была основным релизом, поддерживающим аутентификацию с помощью основного контроллера домена Windows NT, поддержку 64-битной файловой системы для очень больших файлов и предоставление OPLOCKS системам Unix. [ необходима цитата ] Версия 2.2.0 выпущена в апреле 2001 года. [ необходима цитата ]
Дата | Версия | Описание |
---|---|---|
23 сентября 2003 г. | Старая версия, больше не поддерживается:3.0 | Поддержка Active Directory. [8] Серия 3.0.x официально завершила свою работу 5 августа 2009 года. [9] |
1 июля 2008 г. [10] | Старая версия, больше не поддерживается:3.2 | Он будет обновляться по мере необходимости только для решения проблем безопасности. [11] [12] Лицензия была изменена с GPL2 на GPL3, некоторые части были выпущены под LGPL3. [4] Серия 3.2.x официально завершилась 1 марта 2010 года. [10] |
27 января 2009 г. | Старая версия, больше не поддерживается:3.3 | |
3 июля 2009 г. | Старая версия, больше не поддерживается:3.4 | Это был первый релиз, включающий исходный код как Samba 3, так и Samba 4. [13] |
1 марта 2010 г. | Старая версия, больше не поддерживается:3.5 | Это был первый выпуск, включающий экспериментальную поддержку SMB2 . [14] |
9 августа 2011 г. | Старая версия, больше не поддерживается:3.6 | Это первая ветка, которая включает полную поддержку SMB2. [15] |
11 декабря 2012 г. | Старая версия, больше не поддерживается:4.0 | Это крупная переработка, которая позволяет Samba быть контроллером домена Active Directory, полностью участвуя в домене Windows Active Directory. Его первая техническая предварительная версия (4.0.0TP1) была выпущена в январе 2006 года после 3 лет разработки. [16] [17] |
10 октября 2013 г. | Старая версия, больше не поддерживается:4.1 | поддержка SMB3 |
4 марта 2015 г. | Старая версия, больше не поддерживается:4.2 | Сжатие файлов на основе Btrfs , моментальные снимки и интеграция winbind [18] |
8 сентября 2015 г. | Старая версия, больше не поддерживается:4.3 | Новые функции ведения журнала, поддержка SMB 3.1.1 [19] |
22 марта 2016 г. | Старая версия, больше не поддерживается:4.4 | Асинхронные запросы на сброс [20] |
7 сентября 2016 г. | Старая версия, больше не поддерживается:4.5 | NTLM v1 отключен по умолчанию, просмотр виртуального списка, различные улучшения производительности |
7 марта 2017 г. | Старая версия, больше не поддерживается:4.6 | Поддержка многопроцессорного Netlogon |
21 сентября 2017 г. | Старая версия, больше не поддерживается:4.7 | Samba AD с MIT Kerberos |
13 марта 2018 г. | Старая версия, больше не поддерживается:4.8 | Поддержка Apple Time Machine . Настройки с использованием режимов безопасности «домен» или «реклама» теперь требуют запуска «winbindd». [21] |
13 сентября 2018 г. | Старая версия, больше не поддерживается:4.9 | Много изменений [22] |
19 марта 2019 г. | Старая версия, больше не поддерживается:4.10 | |
17 сентября 2019 г. | Старая версия, больше не поддерживается:4.11 | SMB1 по умолчанию отключен в целях снижения уязвимости WannaCry . |
3 марта 2020 г. | Старая версия, больше не поддерживается:4.12 | |
22 сентября 2020 г. | Старая версия, больше не поддерживается:4.13 | Samba 4.13 повышает минимальную версию Python до 3.6. |
9 марта 2021 г. | Старая версия, больше не поддерживается:4.14 | Капитальный ремонт подсистемы VFS и многое другое. [23] |
20 сентября 2021 г. | Старая версия, больше не поддерживается:4.15 | Много изменений. [24] |
21 марта 2022 г. | Старая версия, больше не поддерживается:4.16 | Много изменений. [25] |
13 сентября 2022 г. | Старая версия, но она все еще поддерживается:4.17 | Много изменений. [26] |
8 марта 2023 г. | Старая версия, но она все еще поддерживается:4.18 | Много изменений. [27] |
4 сентября 2023 г. | Текущая стабильная версия: 4.19 | Много изменений. [28] |
27 марта 2024 г. | Текущая стабильная версия: 4.20 | Много изменений. [29] |
Некоторые версии Samba 3.6.3 и ниже имеют серьезные проблемы безопасности, которые могут позволить анонимным пользователям получить root- доступ к системе из анонимного соединения посредством эксплуатации ошибки в удаленном вызове процедур Samba . [30]
12 апреля 2016 года был раскрыт Badlock, [31] критическая ошибка безопасности в Windows и Samba. Badlock для Samba упоминается в CVE|2016-2118 (возможны атаки SAMR и LSA man in the middle). [32]
24 мая 2017 года было объявлено, что в Samba обнаружена уязвимость удаленного выполнения кода под названием EternalRed или SambaCry , затрагивающая все версии, начиная с 3.5.0. [33] Этой уязвимости был присвоен идентификатор CVE|2017-7494. [33] [34]
14 сентября 2020 года был опубликован концептуальный эксплойт для уязвимости netlogon под названием Zerologon (CVE|2020-1472), для которого исправление существует с августа. [35] Некоторым федеральным агентствам, использующим это программное обеспечение, было предписано установить исправление. [36]
Samba позволяет обмениваться файлами и принтерами между компьютерами под управлением Microsoft Windows и компьютерами под управлением Unix. Это реализация десятков служб и дюжины протоколов, включая:
Все эти службы и протоколы часто неправильно называют просто NetBIOS или SMB. Протоколы NBT (NetBIOS через TCP/IP) и WINS, а также их базовый протокол SMB версии 1 устарели в Windows. Начиная с Windows Vista протокол WS-Discovery был включен вместе с SMB2 и его преемниками, которые заменяют их. (WS-Discovery реализован на Unix-подобных платформах сторонними демонами , которые позволяют обнаруживать общие ресурсы Samba, когда устаревшие протоколы отключены).
Samba настраивает сетевые общие ресурсы для выбранных каталогов Unix (включая все содержащиеся в них подкаталоги). Они отображаются для пользователей Microsoft Windows как обычные папки Windows, доступные через сеть. Пользователи Unix могут либо монтировать общие ресурсы напрямую как часть своей файловой структуры с помощью команды mount.cifs, либо, в качестве альтернативы, использовать утилиту smbclient (libsmb), установленную вместе с Samba, для чтения общих ресурсов с интерфейсом, аналогичным стандартной программе FTP командной строки . Каждый каталог может иметь различные права доступа, наложенные поверх обычных защит файлов Unix. Например: домашние каталоги будут иметь доступ на чтение/запись для всех известных пользователей, что позволит каждому из них получать доступ к своим файлам. Однако они по-прежнему не будут иметь доступа к файлам других, если такое разрешение не будет существовать в обычном режиме. Обратите внимание, что общий ресурс netlogon, обычно распространяемый как общий ресурс только для чтения из /etc/samba/netlogon
, является каталогом входа для сценариев входа пользователя.
Службы Samba реализованы в виде двух демонов :
Конфигурация Samba достигается путем редактирования одного файла (обычно установленного как /etc/smb.conf
или /etc/samba/smb.conf
). Samba также может предоставлять сценарии входа пользователя и реализацию групповой политики через poledit
.
Samba включена в большинство дистрибутивов Linux и запускается во время процесса загрузки. Например, в Red Hat скрипт /etc/rc.d/init.d/smb
запускается во время загрузки и запускает оба демона. Samba не включена в Solaris 8, но совместимая с Solaris 8 версия доступна на веб-сайте Samba. ArcaOS на базе OS/2 включает Samba для замены старого программного обеспечения IBM LAN Server . [38]
Samba включает в себя инструмент веб-администрирования под названием Samba Web Administration Tool (SWAT). [39] [40] SWAT был удален, начиная с версии 4.1. [41]
Этот раздел необходимо обновить . Пожалуйста ( Январь 2016 ) |
Samba TNG (The Next Generation) была разделена в конце 1999 года после разногласий между лидерами Samba Team и Люком Лейтоном по поводу направлений проекта Samba. Они не смогли прийти к соглашению о пути перехода разработки, который позволил бы исследовательскую версию Samba, которую он разрабатывал (известную в то время как Samba-NTDOM), медленно интегрировать в Samba. [42] Разработка была минимальной из-за нехватки разработчиков. Команда Samba TNG часто направляла потенциальных пользователей в сторону Samba из-за ее лучшей поддержки и разработки. [43]
Ключевой целью проекта Samba TNG было переписать все службы доменов NT как проекты FreeDCE . [44] Это было сложно, поскольку службы разрабатывались вручную с помощью сетевого обратного проектирования, с ограниченной ссылкой на документацию DCE/RPC или без нее. [ необходима цитата ]
Ключевое отличие от Samba заключалось в реализации набора протоколов NT Domains и служб MSRPC . Samba делает все службы NT Domains доступными из одного места, тогда как Samba TNG выделила каждую службу в свою собственную программу. [ необходима цитата ]
ReactOS начала использовать сервисы Samba TNG для своей реализации SMB. Разработчики обоих проектов были заинтересованы в том, чтобы увидеть дизайн Samba TNG, используемый для того, чтобы ReactOS мог общаться с сетями Windows. Они работали вместе, чтобы адаптировать сетевой код и построить систему. Многоуровневый и модульный подход упростил портирование каждого сервиса в ReactOS. [45]