Свой сервер: зачем, когда и кому он нужен
Собственный сервер — это не только про контроль и безопасность, но и про независимость от чужих правил. Он позволяет запускать сайты, хранить данные, управлять сервисами и экономить в долгосрочной перспективе.
Действительно ли это сложно?
Не более чем выполнение множества других задач, с которыми вы ежедневно сталкиваетесь при работе на компьютере. Установка и настройка базовых функций не займет много времени, особенно если у вас есть более-менее понятная инструкция. С "железом" тоже проблем возникнуть не должно, ведь для большинства задач подойдет практически любой старый компьютер или ноутбук. Под управлением AlmaLinux или FreeBSD всё будет "летать".
Какие задачи он может решить
Кто-то скажет: "зачем мне это всё, мой хостинг в дата-центре или данные в облаке решают все мои вопросы". Все, да не все. Ни облако, ни хостинг в дата-центре не помогут в некоторых случаях.
Банят не только ресурсы, но и вас
Зайти на некоторые российские сайты у вас не получится из-за границы. Особенно из недружественных стран. И VPN в большинстве случаев не поможет, т.к. он тоже "заграничный". Можно конечно попытаться найти подходящий перепробовав десятки разных и потеряв на тестировании кучу времени и денег, но подходящий может и не найтись. Причем проблема не только в том, что иностранные провайдеры банят российские сайты, но и в том, что некоторые российские сайты банят не российские IP-адреса. И попасть на нужный вам ресурс из-за границы никак не получится. Есть и другие ограничения, когда определенный контент не доступен из других регионов - здравствуй, Geo-lock (ограничение доступа к сервису или контенту по географическому признаку)! Т.е. прямого бана нет, но, например новости или фильм не посмотреть: выйдет радостная надпись типа [...] не работает в этом регионе и всё, "давай, до свидания"!
Все подобные вопросы разом отпадают, когда у вас есть свой домашний сервер. Из любой точки планеты вы по SSH подключаетесь к своему серверу, запускаете через Proxy браузер и все, к кому вы подключаетесь, видят ваш домашний IP-адрес. Бинго!
Доступ к браузеру
Иногда может потребоваться удаленно запустить браузер на сервере, чтобы получить доступ, например, к локальным ресурсам, недоступным из внешних сетей. В этом случае proxy никак не поможет.
Лучшее решение: SSH-туннель + локальный браузер. Работает быстро и безопасно.
Windows 7 & Windows 10
Открываем браузер на удаленном клиенте Windows, но через SSH-туннель перенаправляем порт, чтобы трафик шёл от имени сервера, и URL http://somename открывался как будто мы находимся на сервере. Для этого создаем туннель в PuTTY:
- Connection → SSH → Tunnels
- Добавляем туннель для HTTP: Source port: 8080 → Destination: somename:80 Local - Add
- Добавляем туннель для HTTPS: Source port: 8443 → Destination: somename:443 Local - Add
- Сохраняем сессию и подключаемся.
Теперь можно в зависимости от протокола (HTTP или HTTPS):
- Открыть http://localhost:8080/folder
- и https://localhost:8443/folder
Это прекрасно работает с одним локальным именем, которое мы указали в Putty, но что делать, если необходимо использовать несколько разных доменов, которые не могут быть доступны через интернет? Например, домен example.r не является корректным доменом, поскольку домен верхнего уровня .r не существует. Решение есть!
Разрешение имён и файлы hosts
Для разработки и тестирования сайтов часто необходимо иметь их локальные рабочие копии. Чтобы была возможность открывать удаленно любое количество различных доменов, даже невалидных и/или несуществующих необходимо отредактировать файлы hosts на сервере и клиенте.
Добавляем в файл hosts на сервере IP-адреса сервера, на котором находятся требуемые домены: 192.168.1.10 example.r
192.168.1.10 example.c
Добавляем в файл hosts на клиенте: 127.0.0.1 example.r
127.0.0.1 example.c
Теперь мы можем легко и быстро открывать любые необходимые нам локальные ресурсы: http://example.r:8080/folder/ и https://example.c:8443/folder/
При этом не нужны никакие X11, VNC, RDP и это работает даже на слабых каналах - "здравствуй, деревня на море"! Все данные идут по SSH-туннелю, а страница видна у нас в обычном браузере.
Данные всегда рядом
В путешествиях ноутбуки и внешние диски могут падать, ломаться, теряться. Но этого никогда не произойдет с сетевым диском. Если ноутбук можно пойти и купить новый, то доступ к данным поврежденного или утраченного устройства может быть вообще невозможным. Да, "облако" может быть надежней до какого-нибудь форс-мажора, но это не точно. И во сколько обойдется облачное хранилище на 10 террабайт?
Метки: сервер
Опрос
Адаптирован ли ваш сайт для смартфонов и планшетов? (голосов: 35)
- Да - 4 (11%)
- Нет - 2 (6%)
- Не знаю - 1 (3%)
- Нет сайта - 28 (80%)