Я уже гуглил, кучу всего перечитал, но вот есть 1 затуп который я не могу переступить.
Смотрите есть сервер который должен выступать в качестве proxy сервера, который будет разруливать через себя доступы к другим машинам по ssh, назовём его proxy server. Публичный ключ прокси сервера помещается на удаленные сервера. Публичные ключи разработчиков помещаются на прокси сервер в authorized_keys.
Когда сотрудник хочет получить удалённый доступ к какой-нибудь удалённой машине, он должен сделать это исключительно через прокси сервер. Например:
ssh -J user@proxy_server_ip remote_user@remote_server_ip
Разработчики не должны взаимодейстовать с консолью proxy_server только переходить через него со своей локальной машины. У меня в целом всё получилось.
на proxy_server в authorized_keys я добавляю свой публичный ключь и немного настроек для прав
command="echo 'hello wordl'",no-pty,port-forwarding,permitopen="remote_server_ip:22" ssh-rsa AAAA (мой публичный ключ)
То есть я блокирую доступ к консоли, и разрешаю permitopen="remote_server_ip:22"
После этого я могу через proxy попасть на remote
ssh -J proxy_user@proxy_server_ip remote_user@remort_server_ip
Если я что-то меняю в authorized_keys, допустим айпи в permitopen, то я уже не могу попасть на сервер удаленный. Значит всё вроде как работает! НО!
Какого то фига я после первого прыжка через proxy_server (наверное именно после первого) МОГУ ПОДКЛЮЧИТСЯ К REMOTE_SERVER напрямую без посредника! НАпрямую! Хотя там нет моего публичного ключа? Чё за фигня?) Я могу удалить свой публичный ключ из authorized_keys на proxy сервере И ВСЁ РАВНО ИМЕТЬ ПРЯМОЙ ДОСТУП ПО SSH НА УДАЛЕННЫЙ СЕРВЕР, магия какая-то , я здесь застрял)))))))))))) Кто-нибудь поомжет? Мне нужно чтобы доступ к удаленному серверу был ИСКЛЮЧИТЕЛЬНО через proxy