Тут отключаем возможность коннектится по паролю для нового юзера. Повышаем ему привилегии
Основы работы с VPS / Добавление юзера в sudoers. Отключение авторизации по паролю. Смена locale
Если вы сделали предыдущее задание у вас должно все отлично работать, а настройки подключения выглядеть примерно так
Отключаем ssh-авторизацию по паролю
Давайте теперь подключимся под root юзером и отключим данному юзеру возможность подключатся по паролю.
Пишем
nano /etc/ssh/sshd_config
и добавляем в конец файла
Match all
PasswordAuthentication no
Match User root
PasswordAuthentication yes
то есть отключаем всем возможность коннектится через пароль, и оставляем такую возможность только для root.
когда вы выполняете действия с sshd_config надо быть предельно аккуратным. Этот файлик отвечает за ssh соединения и если написать тут что-то с ошибкой есть риск больше никогда не подключится к серверу =)
Перезапускаем ssh демона
systemctl restart sshd
ни в коем случае не закрывайте оболочку где вы авторизованы под root. Потому что если что-то пойдет не так можно будет просто вернуть настройки sshd_config обратно.
давайте теперь проверим что наш новый юзер не может коннектится через пароль.
Проверка на Windows
Идем в настройки dev юзера
и меняем галку на пароль (не забываем загнать корректный пароль)
должно выскочить окошко
даже несмотря на то что пароль корректный.
Попробуйте приконнектится опять через ключик, все должно работать корректно.
Проверка на linux
Попробуйте выполнить
ssh dev@ovz2.mkatash.m29on.vps.myjino.ru -o PreferredAuthentications=password -o PubkeyAuthentication=no -p49651
в ответ должно прийти
> dev@ovz2.mkatash.m29on.vps.myjino.ru: Permission denied (publickey).
Повышаем привилегии юзера
Теперь опять вернемся к консоли с рутом. И повысим нашему юзеру привилегии, чтобы он мог выполнять команды sudo. Пишем:
usermod -aG sudo dev
данная команда добавляет юзера dev в групп sudo, которая позволяет выполнять команды с использованием sudo.
Теперь надо перезайти в юзера dev
и попробуйте что-нибудь поставить
как видите у вас попросят пароль. Вводим его, и программа должна успешно поставиться! =)
Меняем оболчку по умолчанию
Давайте поменяем нашему юзеру оболчку на zsh
.
sudo apt install zsh git -y
поставим oh-my-zsh
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
по ходу установки нас попросят пароль. По завершению установки закроем сеанс и по новой подключимся, увидим такую красоту:
Переводим консоль в UTF8
Сейчас если использовать русские символы в консоли, она вводит всякую ерунду и даже может ломать ввод. За символы в консоли отвечает локаль. Локаль – это такой набор переменных, среды которые используется оболочкой и которые содержат инфу о том какую кодировку использовать в консоли, формат времени, чисел, денежный формат и так далее. Давайте глянем что она сейчас использует. Пишем команду:
locale
У нас POSIX. По сути это одна из самых древних локалей с поддержкой только ASCII символов, ориентированная на английский язык.
Можно глянуть, например, как будет выводится время если использовать эту локаль. Пишем:
locale -k LC_TIME
Теперь глянем какие локали доступны
нам надо переключить на ru_RU.utf8. Пишем команду:
sudo localectl set-locale LANG=ru_RU.utf8
теперь перезайдем на сервер и проверим что выдаст locale
красота! =) Можно теперь русские буквы писать в консольке