nas_linux
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версияСледующая версияСледующая версия справа и слева | ||
nas_linux [2017/05/09 14:10] – [Настройка сервера] kuld | nas_linux [2018/08/03 10:57] – kuld | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Файловое хранилище на Linux ====== | + | ====== Файловый сервер на Linux ====== |
- | В этой статье мы расскажем как установить и настроить файловый сервер на операционной системе Linux, а точнее будет использована серверная Ubuntu 16.04 LTS. Аналогичным образом настраивается большинство deb-based дистрибутивов. | + | В этой статье мы расскажем как установить и настроить файловое хранилище на операционной системе Linux, а точнее будет использована серверная Ubuntu 16.04 LTS. Аналогичным образом настраивается большинство deb-based дистрибутивов. |
Такой сервер можно использовать для сетевой установки файловой базы 1С: | Такой сервер можно использовать для сетевой установки файловой базы 1С: | ||
Строка 7: | Строка 7: | ||
<note warning> | <note warning> | ||
- | Почему Linux? Во-первых это бесплатно и при этом совершенно легально. Во-вторых Linux потребляет гораздо меньше аппаратных ресурсов, | + | Почему Linux? Во-первых это бесплатно и при этом совершенно легально. Во-вторых Linux потребляет гораздо меньше аппаратных ресурсов, |
И так, начнем... | И так, начнем... | ||
Строка 21: | Строка 21: | ||
<note important> | <note important> | ||
+ | <note tip> | ||
===== Установка операционной системы ===== | ===== Установка операционной системы ===== | ||
Строка 104: | Строка 105: | ||
Для дистанционного управления сервером с рабочей станции Windows мы будем использовать [[http:// | Для дистанционного управления сервером с рабочей станции Windows мы будем использовать [[http:// | ||
+ | |||
+ | {{ : | ||
Мы не будем использовать анонимный доступ к нашему файловому серверу, | Мы не будем использовать анонимный доступ к нашему файловому серверу, | ||
Строка 116: | Строка 119: | ||
$ sudo -u storageuser mkdir / | $ sudo -u storageuser mkdir / | ||
</ | </ | ||
+ | |||
+ | <note tip> | ||
Добавим пользователя в Samba | Добавим пользователя в Samba | ||
+ | |||
< | < | ||
- | smbpasswd -a storageuser | + | $ sudo smbpasswd -a storageuser |
</ | </ | ||
+ | |||
- тут нужно указать пароль пользователя Samba, и включим пользователя | - тут нужно указать пароль пользователя Samba, и включим пользователя | ||
+ | |||
< | < | ||
- | smbpasswd -e storageuser | + | $ sudo smbpasswd -e storageuser |
</ | </ | ||
- | |||
Сделаем на всякий случай копию файла настроек и приступим к настройкам файлового сервера Samba. | Сделаем на всякий случай копию файла настроек и приступим к настройкам файлового сервера Samba. | ||
- | |||
- | <note tip> | ||
< | < | ||
Строка 140: | Строка 145: | ||
< | < | ||
[global] | [global] | ||
- | workgroup = WORKGROUP # Здесь укажите имя рабочей группы одноранговой сети | + | |
- | server string = %h server (Samba, Ubuntu) | + | server string = %h server (Samba, Ubuntu) |
name resolve order = wins lmhosts hosts bcast | name resolve order = wins lmhosts hosts bcast | ||
- | dns proxy = no | + | |
wins support = yes # только если в сети нет Wins сервера (он может быть, например, | wins support = yes # только если в сети нет Wins сервера (он может быть, например, | ||
;wins server = 192.168.1.1 | ;wins server = 192.168.1.1 | ||
- | log file = / | + | |
- | max log size = 1000 | + | max log size = 1000 |
- | syslog = 0 | + | syslog = 0 |
- | panic action = / | + | panic action = / |
- | server role = standalone server | + | |
- | passdb backend = tdbsam | + | passdb backend = tdbsam |
- | obey pam restrictions = yes | + | obey pam restrictions = yes |
- | unix password sync = yes | + | |
- | passwd program = / | + | |
- | passwd chat = *Enter\snew\s*\spassword: | + | passwd chat = *Enter\snew\s*\spassword: |
- | pam password change = yes | + | |
- | security = user | + | |
- | username map = / | + | username map = / |
- | map to guest = bad user | + | |
- | + | ||
- | usershare allow guests = yes | + | |
+ | usershare allow guests = yes | ||
[storage] | [storage] | ||
- | comment = nas storage | + | |
- | writable = yes | + | writable = yes |
- | browseable = yes | + | browseable = yes |
- | public = yes | + | public = yes |
- | path = / | + | path = / |
- | guest ok = no | + | guest ok = no |
- | directory mask = 755 | + | directory mask = 755 |
- | create mask = 644 | + | create mask = 644 |
- | valid users = @storageuser | + | valid users = @storageuser |
</ | </ | ||
Перезапустим службу | Перезапустим службу | ||
+ | |||
< | < | ||
$ sudo service smbd restart | $ sudo service smbd restart | ||
Строка 191: | Строка 196: | ||
Пробуем зайти с какой-либо рабочей станции Windows, указав в проводнике путь '' | Пробуем зайти с какой-либо рабочей станции Windows, указав в проводнике путь '' | ||
- | < | + | < |
- | В сетевом окружении сервер появится через какое-то время, когда служба Wins обновит свои данные. | + | |
- | </ | + | |
Windows сначала попробует открыть папку под своей локальной учетной записью, | Windows сначала попробует открыть папку под своей локальной учетной записью, | ||
- | {{ : | + | {{ : |
Готово! | Готово! | ||
- | При необходимости можно добавить новых пользователей, | + | При необходимости можно добавить новых пользователей |
+ | |||
+ | |||
+ | ===== Антивирус ===== | ||
+ | |||
+ | Операционные системы на базе Linux практически не подвержены риску заражения компьютерными вирусами, от части потому, | ||
+ | |||
+ | Но эти вирусы могут использовать файловый сервер Samba для распространения от одной Windows системы на другие. Что бы поддерживать наше файловое хранилище в чистоте, | ||
+ | |||
+ | Установим антивирус ClamAV | ||
+ | |||
+ | < | ||
+ | $ sudo apt install clamav | ||
+ | </ | ||
+ | |||
+ | Сразу же после установки в фоновом режиме запуститься обновление сигнатур, | ||
+ | |||
+ | Удалять подозрительные файлы мы сразу не будем, мы их будем перемещать в карантин, | ||
+ | |||
+ | < | ||
+ | $ sudo mkdir / | ||
+ | $ sudo chmod 600 / | ||
+ | </ | ||
+ | |||
+ | Попробуем просканировать домашние папки пользователей | ||
+ | |||
+ | < | ||
+ | $ sudo clamscan -i -r --move=/ | ||
+ | </ | ||
+ | |||
+ | После сканирования получим протокол | ||
+ | |||
+ | < | ||
+ | ----------- SCAN SUMMARY ----------- | ||
+ | Known viruses: 6278963 | ||
+ | Engine version: 0.99.2 | ||
+ | Scanned directories: | ||
+ | Scanned files: 13 | ||
+ | Infected files: 0 | ||
+ | Data scanned: 4.79 MB | ||
+ | Data read: 1.59 MB (ratio 3.00:1) | ||
+ | Time: 22.176 sec (0 m 22 s) | ||
+ | </ | ||
+ | |||
+ | Все хорошо, | ||
+ | |||
+ | Нам остается настроить автоматическое расписание обновления сигнатур и сканирования домашних папок. Редактируем файл расписания демона cron | ||
+ | |||
+ | < | ||
+ | $ sudo crontab -e | ||
+ | </ | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | Добавьте две строчки | ||
+ | |||
+ | < | ||
+ | 0 1 * * * freshclam | ||
+ | 0 2 * * * clamscan -i -r --move=/ | ||
+ | </ | ||
+ | |||
+ | Каждый день в 1:00 ночи будет автоматически запускаться обновление сигнатур, | ||
+ | |||
+ | |||
+ | ===== Мониторинг ===== | ||
+ | |||
+ | ==== Регулярность резервного копирования ==== | ||
+ | |||
+ | Если Вы пользуетесь мессенджером Telergam, у нас для Вас есть утилита мониторинга резервного копирования. Она умеет сканировать папки сетевого хранилища и сообщать о наличии или отсутствии новых файлов. Например, | ||
+ | |||
+ | Утилита написана на Python, сам Python в Ubuntu установлен по-умолчанию, | ||
+ | |||
+ | < | ||
+ | $ sudo apt install python-pip | ||
+ | $ sudo pip install --upgrade pip | ||
+ | $ sudo pip install python-telegram-bot | ||
+ | </ | ||
+ | |||
+ | Сама утилита устанавливается из репозитория GitHib | ||
+ | |||
+ | < | ||
+ | $ cd ~ | ||
+ | $ git clone https:// | ||
+ | $ cd backtracker | ||
+ | </ | ||
+ | |||
+ | Создайте для себя нового Telegram бота. Подробная инструкция как это сделать приведена [[https:// | ||
+ | |||
+ | Свяжитесь с [[https:// | ||
+ | |||
+ | Открываем конфигурационный файл | ||
+ | < | ||
+ | $ nano backtracker.conf | ||
+ | </ | ||
+ | |||
+ | и настраиваем | ||
+ | |||
+ | < | ||
+ | [Telegram] | ||
+ | token = # Тут нужно указать токен telegram-бота, | ||
+ | failonly = # False если хотите получать сообщения о наличии новых файлов или True если только об их отсутствии | ||
+ | |||
+ | [Scan] | ||
+ | path = # Укажите путь к сканируемым папкам | ||
+ | hours = # Укажите " | ||
+ | </ | ||
+ | |||
+ | Запускайте утилиту | ||
+ | |||
+ | < | ||
+ | $ ./ | ||
+ | </ | ||
+ | |||
+ | Первый запуск нужен для того, что бы автоматически определить ID абонента Telegram, который будет получать сообщения (это не номер его телефона). Подключайтесь к своему боту по ссылке, | ||
+ | |||
+ | После настройки и проверки работы утилиты, | ||
+ | |||
+ | < | ||
+ | $ crontab -e | ||
+ | </ | ||
+ | |||
+ | Добавьте строчку | ||
+ | < | ||
+ | 0 8 * * * ~/ | ||
+ | </ | ||
+ | |||
+ | Проверка будет запускаться каждый день в 8 утра. Если ночью что-то пошло не так, Вы узнаете об этом. | ||
+ | |||
+ | ==== Системные ресурсы ==== | ||
+ | |||
+ | Мониторить ресурсы сервера можно консольной утилитой '' | ||
+ | < | ||
+ | $ sudo apt install htop | ||
+ | $ htop | ||
+ | </ | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Периодически контролируйте использование оперативной памяти. Если часто наблюдается загруженность около 100%, настройте файл подкачки. | ||
+ | |||
+ | < | ||
+ | $ sudo dd if=/ | ||
+ | $ sudo chmod 600 /swapfile && sudo mkswap /swapfile | ||
+ | $ sudo swapoff -a | ||
+ | $ sudo swapon /swapfile | ||
+ | $ echo "/ | ||
+ | </ | ||
+ | |||
+ | Здесь '' | ||
+ | |||
+ | ==== Дисковое пространство ==== | ||
+ | |||
+ | Для мониторинга файловой системы удобно пользоваться файловым менеджером Midnight Commander. Если Вы застали времена MS DOS и Notron Commander, то объяснять ничего не нужно. | ||
+ | |||
+ | Устанавливаем и запускаем | ||
+ | |||
+ | < | ||
+ | $ sudo apt install mc | ||
+ | $ mc | ||
+ | </ | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Так удобно наблюдать за файловым хранилищем, | ||
+ | |||
+ | <note tip> | ||
+ | |||
+ | ~~socialite~~ | ||
+ |
nas_linux.txt · Последнее изменение: 2022/12/02 09:41 — kuld