Как сделать сервер делегативной ноды A безопаснее



  • 1. Создаем нового пользователя sthadmin с root привилегиями

        adduser sthadmin
        gpasswd -a sthadmin sudo
    

    2. Для удобства - выполнение sudo команд без пароля

        sudo apt-get install nano
        visudo
    

    В конце файла добавляем

    sthadmin ALL=(ALL) NOPASSWD: ALL
    

    3. Генерируем ssh ключи

        su sthadmin
    
        cd /home/sthadmin/
    
        ssh-keygen    (прожимаем ENTER)
    
        chmod 700 .ssh
    
        cat ~/.ssh/id_rsa.pub
    

    Выделяем выведенный на экран публичный ключ - теперь он скопирован в буфер обмена. Сохраняем его для входа в систему при помощи ключа:

    nano .ssh/authorized_keys
    

    Правым кликом вставляем содержимое из буфера обмена. Жмем CTRL+O и ENTER

    Теперь нам нужно сохранить наш приватный ключ.

    cat ~/.ssh/id_rsa
    

    Копируем содержимое и сохраняем уже у себя на компьютере. Никому не пересылайте содержимое - это ключ от Вашего сервера.

    4. Настраиваем Putty

    Сохраненный файл не подходит для использования в Putty, тут нам поможет утилита Puttygen. Её можно скачать на официальном сайте: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

    Запускаем утилиту, жмем Load, выбираем сохраненный файл id_rsa и жмем Save private key. На вопрос, хоитие ли вы сохранить приватный ключ без пароля отвечаем да, и сохраняем файл с расширением ppk. Созданный файл мы и будем использовать для входа.

    Открываем Putty. Из списка выбираем профиль Вашего сервера и жмем Load. Если Вы еще не создали профиль, вписываем IP Вашего сервера. Далее идем в настройки как показано ниже. Выбераем ppk файл. В настройках возвращаемся в начальное окно, выбрав пункт Session в левой части окна.

    Теперь сохраняем профиль нажав Save (если профиль еще не создан, просто вписываем название профиля и нажимаем Save).

    Все, ключ создан. Теперь можно проверить все ли сделано правильно. Двойным щелчком по названию профиля откройте окно сессии. Если все сделано правильно, то для входа в систему понадобится просто ввести Ваш логин, в нашем случае это sthadmin. Если войти не удалось, перепроверьте еще раз пункты 3-4. Если войти удалось - двигаемся дальше.

    alt text
    alt text

    5. Отключаем логин по паролю

    Если Вы смогли подключиться к серверу при помощи ключа созданного в пункте 3, то двигаемся дальше. Теперь нам нужно отключить возможность подключения при помощи пароля. Подключаемся к серверу при помощи ключа.

    sudo nano /etc/ssh/sshd_config
    

    Тут находим строку

    Port 22
    

    и меняем 22 на значение от 1025 до 65536 (потом не забываем обновить порт и в профиле Putty).

    Далее отключаем root логин. Находим строку

    PermitRootLogin yes
    

    И меняем yes на no

    И теперь самое главное - отключаем логин для sthadmin и для smartholdem. Для этого в конце файла добавляем строки

    Match User smartholdem,sthadmin
        PasswordAuthentication no
    

    Перезапускаем SSH

    sudo service ssh restart
    

    Готово, теперь к серверу можно подключится только при помощи ключа или (если есть такая возможность) с панели управления вашего VPS провайдера.

    Оригинальный пост


  • administrators

    отличный гайд. а отключать root обязательно? это же получается обрубаешь себе доступ, если потеряешь ключ.



  • @kobatejib said in Как сделать сервер делегативной ноды A безопаснее:

    отличный гайд. а отключать root обязательно? это же получается обрубаешь себе доступ, если потеряешь ключ.

    Спасибо. Так если root не оключить, то всеравно можно будет брутфорсить по известному логину. Так его ненадо терять )) Это если и сид фразу от смарта потерять, то небудет возможности вывести монетки )


  • administrators

    @komokhepbob согласен 🙂 все справедливо 🙂


Log in to reply
 

Looks like your connection to Community was lost, please wait while we try to reconnect.