nas_linux
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
nas_linux [2017/05/09 12:42] – [Установка операционной системы] kuld | nas_linux [2022/12/02 09:41] (текущий) – [Дисковое пространство] 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> | ||
===== Установка операционной системы ===== | ===== Установка операционной системы ===== | ||
Строка 33: | Строка 34: | ||
Далее Вам предложат указать страну, | Далее Вам предложат указать страну, | ||
- | Некоторое затруднение может вызвать разметка диска. Если сомневаетесь, | + | Некоторое затруднение может вызвать разметка диска. Если сомневаетесь, |
{{ : | {{ : | ||
Строка 104: | Строка 105: | ||
Для дистанционного управления сервером с рабочей станции Windows мы будем использовать [[http:// | Для дистанционного управления сервером с рабочей станции Windows мы будем использовать [[http:// | ||
+ | |||
+ | {{ : | ||
Мы не будем использовать анонимный доступ к нашему файловому серверу, | Мы не будем использовать анонимный доступ к нашему файловому серверу, | ||
< | < | ||
- | $ sudo adduser storageuser | + | $ sudo adduser storageuser |
</ | </ | ||
- | Мы будем | + | При создании |
- | Настроим файловый сервер Samba. | + | < |
+ | $ sudo -u storageuser mkdir / | ||
+ | </ | ||
- | <note tip> | + | <note tip> |
+ | |||
+ | Добавим пользователя в Samba | ||
< | < | ||
- | $ sudo nano / | + | $ sudo smbpasswd -a storageuser |
</ | </ | ||
- | В разделе '' | + | - тут нужно |
< | < | ||
- | # | + | $ sudo smbpasswd -e storageuser |
- | # | + | |
- | # | + | |
- | # path = / | + | |
- | # | + | |
- | # guest ok = no | + | |
- | # read only = yes | + | |
- | # | + | |
- | # Windows clients look for this share name as a source of downloadable | + | |
- | # printer drivers | + | |
- | #[print$] | + | |
- | # | + | |
- | # path = / | + | |
- | # | + | |
- | # read only = yes | + | |
- | # guest ok = no | + | |
</ | </ | ||
- | В том же разделе | + | Сделаем на всякий |
< | < | ||
+ | $ sudo cp / | ||
+ | $ sudo nano / | ||
+ | </ | ||
+ | |||
+ | Конфигурационный файл сопровождается подробными комментариями, | ||
+ | |||
+ | < | ||
+ | [global] | ||
+ | workgroup = WORKGROUP | ||
+ | server string = %h server (Samba, Ubuntu) | ||
+ | name resolve order = wins lmhosts hosts bcast | ||
+ | dns proxy = no | ||
+ | |||
+ | wins support = yes # только если в сети нет Wins сервера (он может быть, например, | ||
+ | ;wins server = 192.168.1.1 | ||
+ | |||
+ | log file = / | ||
+ | max log size = 1000 | ||
+ | syslog = 0 | ||
+ | panic action = / | ||
+ | |||
+ | server role = standalone server | ||
+ | passdb backend = tdbsam | ||
+ | obey pam restrictions = no | ||
+ | |||
+ | unix password sync = yes | ||
+ | |||
+ | passwd program = / | ||
+ | passwd chat = *Enter\snew\s*\spassword: | ||
+ | |||
+ | pam password change = yes | ||
+ | |||
+ | security = user | ||
+ | username map = / | ||
+ | |||
+ | map to guest = bad user | ||
+ | |||
+ | usershare allow guests = yes | ||
+ | |||
[storage] | [storage] | ||
- | comment = Сетевое хранилище | + | |
- | | + | |
- | | + | |
- | | + | |
- | read only = no | + | |
- | directory mask = 755 | + | guest ok = no |
- | | + | directory mask = 755 |
+ | create mask = 644 | ||
+ | valid users = @storageuser | ||
</ | </ | ||
+ | |||
+ | Перезапустим службу | ||
+ | |||
+ | < | ||
+ | $ sudo service smbd restart | ||
+ | </ | ||
+ | |||
+ | Пробуем зайти с какой-либо рабочей станции Windows, указав в проводнике путь '' | ||
+ | |||
+ | < | ||
+ | |||
+ | Windows сначала попробует открыть папку под своей локальной учетной записью, | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Готово! | ||
+ | |||
+ | При необходимости можно добавить новых пользователей и новые разделы. Разграничение доступа к разделам производится через опцию '' | ||
+ | |||
+ | |||
+ | ===== Антивирус ===== | ||
+ | |||
+ | Операционные системы на базе Linux практически не подвержены риску заражения компьютерными вирусами, | ||
+ | |||
+ | Но эти вирусы могут использовать файловый сервер Samba для распространения от одной Windows системы на другие. Что бы поддерживать наше файловое хранилище в чистоте, | ||
+ | |||
+ | Установим антивирус ClamAV | ||
+ | |||
+ | < | ||
+ | $ sudo apt install clamav | ||
+ | </ | ||
+ | |||
+ | Сразу же после установки в фоновом режиме запуститься обновление сигнатур, | ||
+ | |||
+ | Удалять подозрительные файлы мы сразу не будем, мы их будем перемещать в карантин, | ||
+ | |||
+ | < | ||
+ | $ sudo mkdir /quarantine | ||
+ | $ sudo chmod 600 /quarantine | ||
+ | </ | ||
+ | |||
+ | Попробуем просканировать домашние папки пользователей | ||
+ | |||
+ | < | ||
+ | $ 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 | ||
+ | </ | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Так удобно наблюдать за файловым хранилищем, | ||
+ | |||
+ |
nas_linux.txt · Последнее изменение: 2022/12/02 09:41 — kuld