Назад | Перейти на главную страницу

Удаленный хост делает странный запрос. Я в безопасности?

Я начинаю работать в организации на их сервере. Им необходимо разрешить соединения с моего сервера, чтобы использовать GIT через SSH.

Они попросили меня поместить это в мой SSH-каталог:

SHORTNAME=abcdef
FULLNAME=12.34.56.789
PORT=9999
ssh-keygen -t rsa -N '' -f ~/.ssh/id_rsa_${SHORTNAME}
cat <<EOF >> ~/.ssh/config
host ${SHORTNAME}
hostname ${FULLNAME}
port ${PORT}
identityfile ~/.ssh/id_rsa_${SHORTNAME}
compression yes
protocol 2
ServerAliveInterval 60
EOF
ssh ${SHORTNAME} "mkdir -p ~/.ssh"
scp -P ${PORT} ~/.ssh/id_rsa_${SHORTNAME}.pub ${FULLNAME}:~/.ssh/id_rsa_${SHORTNAME}.pub
ssh ${SHORTNAME} "cat ~/.ssh/id_rsa_${SHORTNAME}.pub >> ~/.ssh/authorized_keys"

Я новичок в Linux. Я просто хочу убедиться, что запуск этого в SSH не позволит им получить доступ к моему серверу. Мы пытаемся найти решение, в котором моему серверу разрешено подключаться к их серверу для запросов push и pull через GIT через SSH. Это безопасно? Или есть лучшее решение для выполнения этой задачи?

Этот сценарий ... при запуске в вашей локальной системе ... будет:

  • Создайте новую пару ключей ssh ​​в своем .ssh каталог. Вы получите два файла, id_rsa_abcdef и id_rsa_abcdef.pub.
  • Он создаст для вас файл конфигурации ssh в .ssh/config со следующим содержанием:

    host abcdef
    hostname 12.34.56.789
    port 9999
    identityfile ~/.ssh/id_rsa_abcdef
    compression yes
    protocol 2
    ServerAliveInterval 60
    

    Это позволит вам ввести ssh abcdef, например, и ssh будет знать, чтобы подключиться к хосту 12.34.56.789 в порту 9999 используя только что созданную пару ключей, без необходимости вводить кучу дополнительных параметров командной строки.

  • Затем он скопирует ваш открытый ключ ssh на удаленный сервер, чтобы вы могли использовать свой закрытый ключ для аутентификации.

Он не предоставит никому доступ к вашей локальной машине.

Команды / скрипт, которые вы разместили здесь, безопасны и создадут пару ключей для использования для аутентификации SSH и скопируют открытый ключ в $ {FULLNAME}. Это хорошее решение.