серверная в частном доме
Домашний веб-сервер, или сам себе хостинг-провайдер
Для того, чтобы сделать свой веб-сервер дома, нам понадобится компьютер и постоянный доступ в интернет с внешним IP-адресом, как это проверить описано дальше.
Делать сервер буду из старого нетбука Samsung N102SP со сломанной клавиатурой, для небольших нагрузок его вполне достаточно, к тому же он маленький и совсем не шумит. Интернет дома у меня раздаётся wifi роутером tp-link TL-WR840N, через него и буду подключать свой сервер.
Ставить буду Centos 7, качаем отсюда минимальный образ (Minimal ISO), образ записываю на флешку с помощью программы Rufus. Теперь надо загрузить нетбук с флешки, и тут возникает первая проблема, так как клавиатура не работает, не могу войти в биос, внешнюю usb клавиатуру он не видит, сброс биоса решает проблему (в нетбуке Samsung N102SP биос сбрасывается замыканием контактов rtc reset под крышкой memory, замыкать надо на 30 секунд), выбираем в биосе приотритетную загрузку с флешки и начинаем установку, даже при минимальной версии Centos 7 устанавливается в графическом режиме. Никаких сложностей с установкой возникнуть не должно, удаляем все старые разделы на диске и отдаём все под Centos, устанавливаем пароль root и прописываем настройки сети, в моем случае подключаемся к домашней сети wifi (это можно сделать и потом с помощью команды nmtui), несколько минут и Centos 7 установлен.
Заходим под root. Останавливем firewall командой «systemctl stop firewalld», отключаем firewall из автозагрузки командой «systemctl disable firewalld». Пока он нам не нужен, настроим firewall позже. Еще надо обязательно отключить спящий режим при закрытии крышки нетбука, для этого надо в файле /etc/systemd/logind.conf заменить строку «#HandleLidSwitch=suspend» на строку «HandleLidSwitch=ignore», затем перезапустить командой «systemctl restart systemd-logind».
Теперь можно мой нетбук поставить в удаленный угол и забыть про его физическое существование, все дальнейшие действия со своим домашним веб-сервером можно произвоить через ssh.
Теперь нужно настроить wifi роутер, в случае с tplink открываем tplinkwifi.net логин и пароль по умолчанию admin, в разделе «Состояние» смотрим состояние WAN, IP адрес должен быть статическим и не должен начинаться с 192.168.х.х, 172.х.х.х, 10.х.х.х, в противном случае свяжитесь с провайдером и попросите предоставить внешний IP, скорее всего это можно сделать и через личный кабинет, мой провайдер предоставил мне IP за 90 рублей в месяц. Все новые настройки нужно прописать в разделе «Сеть/WAN». Теперь нужно зарезервировать внутренний IP адрес на роутере для нашего сервера, заходим в раздел «DHCP/Список клиентов DHCP» и находим там наш сервер (чтобы узнать IP на сервере наберите команду ifconfig), после копируем MAC-адрес и переходим в раздел «DHCP/Резервирование адресов» и добавляем там MAC-адрес нашего сервера и его IP. Всё, теперь роутер всегда будет выделять для нашего сервера этот IP. Теперь надо пробросить порты, чтобы при обращении из интернета роутер отправлял запросы на домашний веб-сервер, заходим в раздел «Переадресация/Виртуальный сервер» и добавляем 80 порт. Также добавляем 22 порт, чтобы можно было подключаться к серверу через ssh. У меня при добавлении 80 порта возникала ошибка «Порт удалённого управления веб-интерфейсом конфликтует с портом виртуального сервера». Чтобы этого избежать предварительно изменим порт удалённого управления на 8080, для этого откроем вкладку «Защита/Удалённое управление». Теперь управление роутером доступно по адресу tplinkwifi.net:8080/
Для удалённого управления веб-сервером качает утили Putty с www.chiark.greenend.org.uk/
Теперь для полнофункционнальной работы веб-сервера установим необходимые компоненты, первым делом подключим репозиторий Epel, там есть практически всё необходимое для автоматической установки, вводим команду «yum install epel-release». Затем для отслеживания состояния сервера устанавливаем htop командой «yum install htop», для удобной работы с файлами усталавливаем midnight commander, командой «yum install mc», теперь ставим Apache, для этого вводим «yum install httpd», запускаем и ставим в автозагрузку командами «systemctl start httpd» и «systemctl enable httpd», теперь установим MariaDB командой «yum install mariadb-server», аналогично запускаем и ставим в автозагрузку «systemctl start mariadb» и «systemctl enable mariadb», производим первичные настройки при помощи команды «mysql_secure_installation», устанавливаем root пароль, удаляем анонимного пользователя и тестовую базу, затем нужно устанавить PHP с необходимыми модулями «yum install php php-mysql php-common php-mbstring php-mcrypt php-devel php-xml php-gd», перезагружаем httpd командой «systemctl restart httpd». Теперь при вводе в браузере IP адреса видим приветственную страницу Apache. Корневой каталог находится в «/var/www/html/». Вот теперь наш домашний веб-сервер доступен с любой точки планеты.
Сборка домашнего NAS сервера самостоятельно | Обзор компонентов для NAS
Подбор компонентов для NAS
1. Корпус.
IN WIN BP655 200W
Данный корпус позволяет разместить в себе до двух жестких дисков и имеет встроенный блок питания 200 Вт. Нет комплектующих, перекрывающих элемент охлаждения процессора.
Thermaltake Element Q VL52021N2E 200W
Отличный корпус в плане комфорта внутреннего размещения комплектующих. Особенно радует дизайн и качество исполнения. Использую его сам, но не в качестве сетевого хранилища. Радует возможность установить 2.5″ диски. Недостатком могу назвать лишь возможность размещения до 2-х жестких дисков 3.5″.
SilverStone SG01B-F Black
Данный вариант дороже предыдущих (≈3000 руб.), но его явным преимуществом является установка до 4-х жестких дисков 3.5″, продуманная система охлаждения и возможность установки блока питания форм-фактора ATX.
Lian Li PC-Q08 Silver
Самый дорогой вариант из представленных корпусов для домашних серверов (≈3500 руб.). Отличительной особенностью данного экземпляра является установка до 7 жестких дисков 3.5″ и один 2.5″ HDD или SSD, небольшие размеры, отличное штатное охлаждение. Возможность установки БП форм-фактора ATX. Недостаток: тяжеловат доступ к внутренним комплектующим. Если вы рассматриваете для покупки корпус для NAS с возможностью добавления HDD в будущем, то это идеальный вариант.
2. Материнская плата для NAS сервера.
Обзор материнских плат для NAS формата Mini-ITX. Именно такой форм-фактор материнских плат используется для сборки современных NAS серверов и HTPC. В данный момент в интернет-магазинах огромный выбор «материнок» любых производителей: Asrock, Asus, Zotac, MSI и др. Давайте рассмотрим несколько удачных вариантов.
ASUS AT5NM10T-I
Моя любимая материнская плата для сборки NAS и обычных серверов, на ней работает уже не один собранный мной сервер.
ASRock E350M1
Данная материнская плата станет отличным вариантом для производительного NAS сервера с возможностью использования его как HTPC. Думаю, всегда найдутся сторонники универсальности в технике, поэтому ASRock E350M1 должна присутствовать в обзоре. Преимущества этого компонента NAS в 2-x ядерном процессоре AMD E-350, интегрированной графике ATI Radeon HD 6310, возможности установки памяти обычных DDR3 DIMM до 8 Гб, а также HDMI интерфейсе. Все перечисленное несомненно устроит желающих собрать HTPC или реализовать потоковое видео. Для реализации NAS: на борту платы 4 SATA порта, низкое энергопотребление и достаточно тихий кулер на радиаторе процессора. Собирал связку NAS + HTPC своему другу, «клиент» остался несказанно доволен. До этого момента не раз использовал эту «материнку» как основу для сборки портативных домашних кинотеатров. Стоит отметить и материнские платы на базе ION 2, которые неплохо зарекомендовали себя в качестве компонента бюджетного HTPC.
Zotac FUSION350-A-E
Третий вариант материнской платы будет под брендом ZOTAC. Мне очень симпатизируют их Mini-ITX решения, по причине высокой интеграции современных интерфейсов. Данная «материнка» обладает низким энергопотреблением и приличной графикой AMD Radeon HD 6310, как у предшественницы. Повторюсь, что для реализации NAS такая видеокарта не нужна, но в совокупности с портом HDMI и оптическим S/PDIF-выходом, плата превращается в неплохого кандидата на «должность» мультимедийного ПК. Не будет лишним и модуль WiFi 802.11n, работающий со скоростью до 150 Мбит/с и конечно же 4 порта USB 3.0 + eSATA. А для установки HDD мы имеем 4 порта SATA 6 Гбит/с.
Обращайте внимание на поддержку современных интерфейсов при выборе материнской платы — eSATA, USB 3.0: это даст вам возможность расширить сетевое хранилище для дома или использовать машину в другой конфигурации.
Не хочу превращать статью в интернет-магазин, поэтому не буду перечислять все понравившиеся или подходящие варианты. Добавлю лишь, что при выборе материнской платы для NAS, руководствоваться необходимо следующими параметрами:
3. Жесткий диск
HDD — один из самых важных компонентов нашего будущего NAS сервера. Универсальным решением в качестве носителя для сетевого хранилища я считаю жесткие диски серии Caviar Blue от Western Digital, хотя многие, в том числе и я, ради экономии используют Western Digital GreenPower, но есть и противники данной линейки HDD из-за проблемы парковки головок, поэтому их не рекомендуют как носители для частого обращения к данным. Правда, моя практика этого не подтверждает. Еще хорошо зарекомендовали себя жесткие диски от Hitachi и Samsung, что не могу сказать о Seagate. Необходимый объем вы можете выбрать сами, наиболее оптимальным выбором будет — 2Гб (2 или 4 диска). По желанию вы можете использовать один «ноутбучный» диск. Помните, какой бы быстрый диск вы ни купили, скорость передачи данных у NAS-устройств ограничена пропускными возможностями гигабитной сети. Приобретайте модели, рассчитанные на длительную эксплуатацию, от Hitachi и Western Digital, ориентированные на серверное использование.
4. Оперативная память
Выбор огромен. Я предпочитаю использовать модули памяти от Samsung и Kingston. Файловый сервер не очень требователен к оперативной памяти, поэтому слоты в материнской плате можно занять любыми планками от известного производителя. Пара модулей по 1-2 Гб сейчас очень доступны по цене.
При выборе комплектующих для NAS необходимо опираться на две противоречивых тенденции:
5. Операционные системы для NAS-сервера
Выше представлен список операционных систем, которые можно использовать в качестве программной оболочки для NAS. Об установке FreeNAS я писал в этом материале.
Если вы решите использовать Ubuntu Server, то вам придется по вкусу большой репозитарий различных программ, который даст возможность сделать сервер по образу и подобию сервера своей мечты. Если вам сложно настраивать серверную ОС, то вы можете воспользоваться дистрибутивом с графической оболочкой.
Предложу вариант для пользователей мало знакомым с Linux, которым отлично подойдет операционная система Windows Home Server 2011 со своей простотой установки и настройки. Тем более, что данный вариант бесперебойно справляется с восстановлением и архивацией данных на компьютере, а также обеспечивает потоковую передачу мультимедиа контента по домашней сети. В представленном ниже видео вы сможете ознакомиться с интерфейсом и функционалом WHS 2011. Кстати говоря, функционал этой ОС можно расширить специальными дополнениями, а ознакомиться с ними вы можете здесь.
Управлять таким сервером можно с других домашних компьютеров с установленным клиентским ПО, которое можно установить, набрав в браузере: \\имя_сервера, но и получить доступ к серверу удаленно через внешний IP. Плюс ко всему вы сможете быстро и просто организовать свой web-сервер, легко расшарить свои файлы на телевизор Smart TV, Xbox 360, смартфон и на любой компьютер под управлением Windows XP, Windows Vista и Windows 7. В Windows Home Server работают все привычные приложения, которые вы использовали на Windows Vista и Windows 7.
Собрав и запустив свое сетевое хранилище (NAS), вы будете обладать следующими преимуществами перед готовыми решениями:
Я всегда готов помочь с выбором конфигурации для домашнего NAS и с выбором подходящей операционной системы в том числе. Пожалуйста, оставляйте комментарии.
Как создать файловый сервер на шесть HDD на основе старого компьютера
Содержание
Содержание
Современный жесткий диск потребляет около пяти ватт при обычной работе и до 10-15 ватт при старте. И вот, когда количество жестких дисков у меня достигло восьми штук, я понял что нужно собирать для них отдельный файловый сервер.
Для чего нужен файловый сервер
Читатель может задаться вопросом — а что же я храню на таком количестве жестких дисков? В основном домашний фото- и видеоархив с дублированием, огромную коллекцию аудиокниг, бэкапы и разную файловую ерунду, которая есть на каждом компьютере.
Конечно, можно поставить парочку больших жестких дисков на 6-8 терабайт в компьютер или NAS для этих же целей, и это будет компактно, энергоэффективно, но и цена такого решения будет намного выше.
Как раз мои домашние списали в утиль старенький компьютер на основе трехъядерного Phenom первого поколения, материнской платы Asus M3N78-VM, четырех гигабайт оперативной памяти, блока питания Corsair VS550 мощностью 550 Вт и корпуса Asus TA-668. Из этих комплектующих я и решил собирать файловый сервер.
Сразу уточню, почему я называю его «файловый сервер«, а не «самосборный NAS«. Я собираюсь пока использовать его в виде локальной сети между двумя системниками без выхода в домашнюю сеть и интернет, поэтому называть его NAS пока рановато.
В будущем доукомплектую его уже имеющейся Wi-Fi платой и буду экспериментировать и настраивать, а пока мне хватит простого файлового сервера.
Требования к серверу
Требования будут довольны серьезны:
Реализация
Сразу скажу, что не все пункты удалось выполнить, но в целом задумка удалась. Но обо всем по порядку.
Корпус Asus TA-668 довольно простой и устаревший, но сделан качественно, весь металл завальцован по краям, а многочисленные штамповки дают прочность. Штатно можно установить четыре внутренних устройства 3.5″ и одно внешнее.
Плохо то, что пространства для кабель менеджмента практически нет и пучок проводов придется оставлять болтающимся в центре корпуса, что будет выглядеть очень неприглядно.
Размещение жестких дисков
Сначала я думал, что один из жестких дисков можно будет установить во внешний отсек для FDD, но это не удалось, диск не влез. Зато очень много места в отсеках 5.25″, чем я и воспользуюсь.
На скорую руку я собрал салазки из старого dvd-привода и корзины для жестких дисков от старенького корпуса, которые позволят установить пару HDD в отсек для DVD-приводов.
Спереди крепится вентилятор 92 мм.
Кстати, подобные салазки продаются в магазинах, их необязательно «колхозить» самому.
Итого, я смогу установить как минимум шесть жестких дисков. Еще остается много свободного места внизу-сзади корпуса, туда можно дополнительно установить пару жестких дисков в салазках, ведь дискретной видеокарты не будет, так как мне хватит пока и встроенной GeForce 8200.
Но я «уперся» в провода блока питания. У Corsair VS550 всего четыре SATA разъема, причем два из них расположены на ветках с двумя разъмами molex, что крайне неудобно в моем случае.
Как выход, можно использовать переходники питания molex-SATA, но не всегда у них бывает хороший и надежный контакт. Используя такие переходники, сразу поджимайте контакты питания поплотнее (иголкой) и выбирайте такие, где провода не слишком длиннные.
Идеально было бы сделать «кастомные» провода с четырьмя разъемами питания SATA на один провод, припаявшись к проводам molex, но я не рискнул пускать «под нож» блок питания, не опробовав предварительно в работе файловый сервер.
При попытке установить семь жестких дисков вот таким способом, я понял, что хоть работать это и будет, но подключать и отключать диски и кабели передачи данных SATA будет просто мучительно. Да и такая «вязанка проводов» вполне может сработать как пружина и нарушить и без того слабый контакт в «data» SATA разъемах.
В результате я остановился на шести накопителях, но в будущем возможно спаяю нормальные провода, достану корзину для жестких дисков от старого корпуса, и будет возможно установить в сервер и семь-восемь HDD.
Проблема дисков объемом более 2 ТБ и старых материнских плат
Кстати, на материнской плате есть пять SATA разъемов и один eSATA, но у меня есть дискретный PCI-E контроллер на два SATA устройства, что позволит не тянуть провод в eSATA порт на задней панели компьютера.
Сразу расскажу об одной проблеме, с которой вы можете столкнуться при построении файлового сервера на столь старой материнской плате, как Asus M3N78-VM.
При сборке я воткнул пару своих дисков на три терабайта в материнскую плату, и она правильно опознала (на первый взгляд) жесткие диски и запустилась. Однако я совсем забыл о проблеме дисков объемом более 2 ТБ и старых материнских плат.
При загрузке сервера были видны все файлы на диске, но были ошибки доступа к ним, похожие на недостаток прав NTFS в «безопасности» и постоянно запускался CHKDSK, пытаясь «исправить» ошибки.
Я решил — «пусть исправит», и оставил компьютер с включенным CHKDSK. В результате на диске осталось около 800 ГБ данных, а 2 ТБ пропало, именно так и видит ОС большой диск на старой материнской плате — доступно в районе 800 ГБ файлов и все.
К счастью, мой сторонний контроллер поддерживал диски объемом 3 ТБ и выше, и при подключении больших дисков к нему, «проверка диска» из под Windows исправила все ошибки и вернула файлы на место.
Помните об это проблеме и будьте осторожны! При покупке сторонних контроллеров уточняйте поддержку больших жестких дисков.
Я покупал свой контроллер пару лет назад, сейчас в DNS по Москве доступен вот такой, подороже.
Гигабитная сеть
Почему я сразу отказался от подключения файлового сервера в домашнюю сеть и интернет со скоростью в 100 мегабит, а подключил его в локальную сеть с основным компьютером на 1 гигабит? Все дело в объемах данных, которые придется гонять между компьютером и сервером.
100-мегабитная сеть даст в идеале всего около 12 мегабайт в секунду, что очень мало для видеофайлов на несколько гигабайт. А вот гигабитная сеть даст уже почти 120 Мб/сек, что близко к скорости копирования между дисками.
Реализовать ее очень просто, достаточно соединить порты сетевых плат на компьютерах, они давно гигабитные даже на дешевых материнских платах. А в компьютер, которому нужен будет обычный доступ в интернет, вставляем недорогую сетевую плату. Главное, учитывайте, что разъем PCI уже отмирает, и в новых материнских платах его уже попросту нет. Поэтому лучше берите сетевую плату PCI-E.
Выбор операционной системы для сервера
Тут есть простор для выбора, можно поставить и одну из многочисленных версий Linux, даже просто на флешку, чтобы не занимать SATA порт на материнской плате отдельным накопителем. Можно установить специальную ОС для NAS, например EasyNAS или FreeNAS.
Но я выбрал старый добрый Windows 7 для простоты настройки, и так как этот компьютер будет иногда использоваться как медиапроигрыватель для фильмов и видео и запускать шахматы, Heroes of Might and Magic III и прочие старые игры. Так как выхода в интернет не будет, ОС я поставил без обновлений и антивирусов.
Теперь о том, где же эта Windows 7 будет установлена. Как вариант, можно установить ее на один из HDD с данными, в отдельный раздел, и это будет работоспособно (я проверял).
Но я решил установить ее на отдельный диск, «гулять так гулять», плюс ничто не будет тормозить работу сервера. Я нашел под нее старенький HDD на 250 ГБ. Хватит и самого дешевого SATA диска на 80 ГБ, которые продаются на барахолках за 100-200 рублей.
Проблемы при сборке
Файлсервер я сразу начал настраивать на как можно более тихую работу и поставил вентиляторы на вдув и выдув на обороты менее 1000 в минуту, но столкнулся с сильным перегревом южного моста материнской платы (MCP). Даже в простое температура уходила за 60 градусов.
Проблема была решена установкой дополнительного вентилятора на 80 мм на обдув чипсета. Asus M3N78-VM умеет управлять всеми вентиляторами в зависимости от температуры, поэтому я настроил их старт с 6 вольт. В плане шума стало сразу лучше, ведь эти вентиляторы расположены в глубине корпуса.
А на MCP температура сразу упала на 20 градусов даже под стресс тестом.
И самый шумный из вентиляторов я дополнительно «придушил» переменным резистором от Zalman.
Также я дополнительно поставил тихоходный 120 мм кулер на обдув четырех нижних дисков. Шума он не прибавит, а несколько градусов сбивает. Воздух этот кулер будет брать из перфорации на боковой стенке.
Температурный режим жестких дисков
Температура всех HDD порадовала, даже тех, что обдуваются одним вентилятором 92 мм сверху. За счет чего такие низкие температуры? Во-первых, при таком расположении жестких дисков — вдоль, между стенок корпуса, без отдельных корзин под каждый диск, создается эффект «аэродинамической трубы» — воздух легко и быстро проходит вдоль всей поверхности диска, не распыляясь об корзину или не уходя вбок.
Во-вторых, ход воздуха в корпусе идет эффективно, снизу вверх и без застойных зон, боковой вентилятор на 120 мм и вентилятор на чипсете очень помогают.
Я использовал эти же жесткие диски в корпусе Zalman, где они стояли поперечно, в корзинах, и при такой же температуре в комнате (26 градусов) их температуры были на 3-6 градусов выше.
Функционирование без клавиатуры, мыши и монитора
Я поставил файловый сервер в нишу «горки», за телевизором 43″, где его не видно и практически не слышно, подведя к нему кабель питания и LAN кабель.
В биосе я настроил параметр Restore on ac power loss как Power On. Теперь компьютер включается автоматически при появлении электричества в розетке. Я щелкаю кнопкой сетевого фильтра 220 В, и он включается. О выключении напишу ниже.
Сначала я думал, что придется настроить в BIOS и поведение ПК при отсутствии клавиатуры, но он запускается и без нее, лишь давая один дополнительный сигнал через PC Speaker.
Теперь при включении через минуту в сетевом окружении появляется сервер и его диски.
При копировании скорости немного не дотягивают до 120 Мб/сек, но вполне меня устраивают.
Удаленное управление
Удаленное управление удалось организовать очень просто, средствами Windows, включив в настройках сервера «Разрешение подключения удаленного помощника».
Теперь по щелчку значка сервера в папке «Сеть» появляется пункт «Подключение к удаленному рабочему столу». И при выборе этого пункта мы через 10 секунд оказываемся на рабочем столе сервера, полностью управляя им.
Удаленное выключение
Как оказалось, сервер невозможно выключить через меню «Пуск» при удаленном управлении, в меню просто отсутствуют пункты «перезагрузить» и «выключить», но эта проблема легко решается созданием ярлыка на рабочем столе сервера, с прописанным путем:
Этот ярлык теперь работает как кнопка выключения.
Выводы
Как видите, сделать свой файловый сервер на основе старого компьютера совсем не трудно. У меня ушло около двух дней, да и то большая часть времени ушла на решение «проблемы больших дисков» на старой материнской плате.
Я не стал подробно останавливаться на сетевых настройках, так как слабо разбираюсь в них. Но связать в сеть основной ПК и сервер у меня получилось практически методом тыка и при небольшом «гуглении».
Конечно, внутри он выглядит очень колхозно, но главное, что железо не греется и не шумит. После полной обкатки файл-сервера можно будет сделать и нормальные, компактные провода питания SATA. Также на очереди оснащение его платой Wi-Fi и превращение в полноценный NAS.