UTF 8 SSH Free BSD — настройка кодировки и сервера
Потребность создать виртуальный сервер с удаленным доступом может появиться у любого человека. Реализация этой затеи может проходить на всех известных ОС, включая разные версии Windows, Linux, Debian и другие.
Но чаще всего виртуальный сервер создают в ОС Free BSD, так как это операционная система как раз подходит для этих решений.
Но есть у нее некоторые недостатки, которые лучше решить еще в процессе настройки, а именно нетипичная для других ОС кодировка KOI-8R, а также возможные проблемы с безопасностью и работой веб-интерфейса.
Содержание
Почему лучше изменить кодировку KOI-8R на UTF 8 во Free BSD
Настройка иной кодировки — это не просто прихоть от нечего делать, а хорошее решение, ведь многие, кто создает сервер по SSH протоколу работают с UTF 8. Это уже практически мировой стандарт, который нельзя игнорировать. Придет момент, когда ваш SSH сервер станет неактуальным из-за того, что у вас стоит не UTF 8. Кроме того, если вам нужно удаленное управление компьютером для работы с хостом сайта, то KOI-8R может вызвать проблемы и сбои, в которых вы навряд ли сразу же разберетесь. UTF 8 сразу работает бесперебойно и надежно, так что вам придется подредактировать ваш Free BSD «из коробки» и изменить в ОС кодировку.
Как во Free BSD изменить кодировку на UTF 8
Если бы все пользователи ОС Free BSD знали, что в этой операционной системе можно так просто изменить кодировку KOI-8R на UTF 8 , это бы уже давным-давно все сделали. Но к сожалению, об этом знают лишь единицы, и вы войдете в их число. Для начала вам нужно найти файл /etc/login.conf. В нем вы найдете строку russian, в которой вам необходимо напротив charset и после lang прописать нужную кодировку UTF 8. После этого еще в консоли нужно обязательно прописать следующее:
cap_mkdb /etc/login.conf
pw usermod -n $имя_пользователя -L russian
Указанных действий достаточно, чтобы вы могли работать по SSH во Free BSD с нормальной, человеческой кодировкой UTF 8.
Как настроить SSH подключение во Free BSD
Очень важна правильная настройка сервера Free BSD по SSH протоколу. Если у вас будет стоять стандартная настройка конфигураций, ваш сервер будет не в безопасности. И хоть SSH считается наиболее защищенным протоколом для создания удаленного доступа, в нем есть слабые места, и они находятся в стандартных конфигурациях файла sshd_config.
Именно его вам и нужно будет отредактировать. В данной статье разберем основные опции, которые вам стоит изменить.
Настройка файла sshd_config начинается с запрета входа для root пользователя. Для этого вам нужно изменить опцию PermitRootLogin, которая дословно переводится как «Разрешение для root пользователя логиниться». Если у вас стоит опция forced-commands-only, without-password или просто написано yes, то это плохой знак — значит root пользователь может зайти к вам на сервер, зарегистрировавшись по открытому ключу или даже без пароля. Вам же лучше прописать параметр no — тогда root пользователь никак не сможет попасть на сервер. А если root не зайдет на сервер, то ни один юзер не сможет внести фатальные изменения на компьютер. Так что будьте с root осторожны!
Следующим шагом вам необходимо указать иное значение порта, который прописан в файле конфигураций. Если у вас будет оставаться стандартный Port 22, то хакерам для входа не нужно будет прописывать дополнительно значение порта, а значит они легко смогут подобраться к форме авторизации и попытаются взломать сервер. Если же вы укажите другое значение порта, то им нужно будет указывать -p Port №, чего они не смогут сделать, если не будут знать новый порт. Чтобы изменить порт, достаточно вместо 22 написать другую цифру.
Очень часто в стандартных настройках в качестве способа аутентификации указана парольная авторизация. Это в корне не верный способ аутентификации, ведь пароли могут перехватить, как это делали с предыдущим протоколом Telnet. Потому-то и была выпущена вторая версия протокола SSH, которая поддерживает аутентификацию по публичному ключу. Вам необходимо возле опции PasswordAuthentication прописать no, а там, где PubkeyAuthentication прописать yes. Тогда пользователю нужно будет сгенерировать у себя на устройстве открытый ключ и перенести его к вам на сервер.
Как сделать веб-интерфейс во Free BSD
Если вы хотите просматривать данные сервера в виде страницы web формата, то вам понадобится Shellinabox. Такое решение вам понадобится, если нет Putty и вы привыкли к web браузерам. Выглядит Shellinabox, конечно, не так, как стандартный web браузер, поскольку содержимое сервера совсем не похоже на код сайта. Но тем не менее, с Shellinabox удобнее будет работать на хосте.
Иногда во время работы с Shellinabox возникает проблема — интерфейс закрывается и появляется надпись: «Web session closed». И эта надпись может появляться каждый раз после попытки авторизоваться. Чтобы web интерфейс Shellinabox заработал, нужно перенастроить файл /etc/hosts. Надпись «Web session closed» пропадет и Shellinabox заработает, когда вы пропишите имя вашего хоста в опциях.