Тёмный

Создание SSH ключа, настройка SSH-сервера, клиента, проброс портов 

Yuriy Semyenkov
Подписаться 8 тыс.
Просмотров 28 тыс.
50% 1

Представим наш первый день на новой работе - админ просит у нас ssh-ключ, чтобы добавить его на сервер. А где его взять? Какой скидывать?
А еще разберемся как настроить SSH-сервер и SSH-клиент (ssh config) для удобной и безопасной работы.
В конце бонусом научимся пробрасывать порты с удаленного сервера себе на компьютер через SSH.
👉 • Кто такой DevOps-инжен...
Пример sshd_config (конфигурация сервера): gist.github.com/etoosamoe/ecf...
Пример ssh config (конфигурация клиента):
gist.github.com/etoosamoe/07c...
Команды для установки корректных прав на .ssh директорию:
gist.github.com/etoosamoe/6cd...
🛠️ Железо и софт, которым я пользуюсь: etogeek.dev/pages/tech/
✉️ Telegram: t.me/etogeek
🌎 Blog: etogeek.dev
🤝 Linkedin: / yuriy-semyenkov-571a41113
#linux #ssh #ubuntu
⏱️ Таймкоды:
0:00 Вступление
0:28 Теория про SSH
1:32 Создание ключей
3:48 Подключение
4:43 Добавление ключа
9:42 Настройка сервера
12:19 Настройка клиента
14:00 Проброс порта

Наука

Опубликовано:

 

27 май 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 106   
@Den-hs1yq
@Den-hs1yq 10 дней назад
Очень круто! Все по делу! Огонь! Не бросай! Ждем продолжения!
@skysamaraskysamara4081
@skysamaraskysamara4081 3 месяца назад
Кратко и понятно. Лучше некоторых платных курсов. Спасибо!
@user-no4bn4lc4v
@user-no4bn4lc4v 3 месяца назад
Инфа просто мега полезная, а подача ультра простая. Искренне надеюсь, что не забросишь это дело. Удачи!
@ultimate_truth_society
@ultimate_truth_society 19 дней назад
Спасибо. Очень хорошо разложили всё по полочкам и понятно объяснили базовое пользование ssh. Очень хотелось бы увидеть в вашем объяснении темы: более подробная настройка ssh-сервера (может даже что-то совсем фантастическое, как централизованное управление множеством ssh ключей на сервере прогой по типу Bastillion); autossh или удержание открытыми тоннелей через перезпуск в systemd, прямые(-L) и обратные(-R) туннели, ssh-прокси.
@victormog
@victormog 3 месяца назад
Отличное сочетание полезности, краткости и достаточности!
@user-zb9ej9pf5n
@user-zb9ej9pf5n Месяц назад
У тебя отличная и понятная подача материала . Сделайте пожалуйста отдельные плей-лист линукс администратор с нуля и девопс с нуля обучающие ролики 🙏
@AlbertCartel
@AlbertCartel Месяц назад
Спасибо автор, 2 дня искал на Ютубе чтобы кто разжевал эту тему и как сохранить ключ с локалки на удаленном и не только. Спасибо ещё раз
@user-dk9lz5xw3r
@user-dk9lz5xw3r 3 месяца назад
Отличная подача! Спасибо за труды и информацию.
@Serg_vladimirovish
@Serg_vladimirovish 3 месяца назад
Очень достойно и доступно. Продолжай в том же духе.
@palgogo
@palgogo 3 месяца назад
Отличное видео. Все понятно, все приятно
@wefasziengof8180
@wefasziengof8180 3 месяца назад
Юрий, спасибо за грамотную речь и полезный контент!
@brave.circassian77
@brave.circassian77 2 месяца назад
Спасибо как вовремя появилась нужная информация. Не так давно начал работать с ключами ssh, и хотел более подробно узнать по какому механизму оно работает. Лайк, подписка.
@inkorotkova
@inkorotkova 3 месяца назад
Спасибо за видио с нужным материалом! Приятный голос
@UralBashkiria
@UralBashkiria 2 месяца назад
Больше прикладных разборов!!! Расширяй этот плейлист пожалуйста! Очень полезная инфа!
@lavamer
@lavamer 16 дней назад
Я прям удачно зашёл на этот канал. Для меня тут очень много полезной информации. Спасибо за ваш труд.
@etogeek
@etogeek 16 дней назад
Спасибо за приятные слова!
@donrumata9197
@donrumata9197 3 месяца назад
Спасибо за видео. Очень познавательно. Можете сделать видео (а лучше цикл видео) по работе с физическим сервером. От голого железа до полностью работоспособной и настроенной конфетки? Очень надо
@andreykachur3827
@andreykachur3827 2 месяца назад
Спасибо! Узнал новое для себя! Приятно слушать!:)
@helby255
@helby255 3 месяца назад
супергодно, почерпнул полезностей за столь короткое время
@Klaz73
@Klaz73 3 месяца назад
Хороший лайтовый джаз играет в начале ролика :)
@user-bw6ix4vf4p
@user-bw6ix4vf4p 3 месяца назад
Прекрасные видео! Продолжай, пожалуйста)
@user-rz4xj2zt1r
@user-rz4xj2zt1r 3 месяца назад
Спасибо дружище за отличное видео. Продолжай в том же духе !
@alexeymatveev9031
@alexeymatveev9031 3 месяца назад
Спасибо, гопатыч подсказал, но человека слушать комфортнее.
@user-ty9ke8gw4q
@user-ty9ke8gw4q 3 месяца назад
Спасибо большое! Про ссш туннель было здорово.
@envdude
@envdude 3 месяца назад
Шикарный канал! Спасибо за ролики!
@XPERT518
@XPERT518 7 дней назад
Я RSA ключи использую, не факт, что твой метод лучше.
@flowerinpower
@flowerinpower 3 месяца назад
Молодец! У тебя отлично получается 🎉
@user-ny9ux9ss8n
@user-ny9ux9ss8n 3 месяца назад
Подписка и лайк 👍🏼 Все Лайки ставим за прекрасное донесение информации и плюс показывает на примерах автор все 👍🏼👍🏼👍🏼Ждём курс по DevOps 😊
@wefasziengof8180
@wefasziengof8180 3 месяца назад
Трижды лайк
@isthordenvejr2533
@isthordenvejr2533 3 месяца назад
Я гуманитарий мне ничего не понятно, но очень интересно.
@etogeek
@etogeek 3 месяца назад
Спасибо!
@result_123
@result_123 3 месяца назад
Мне одному не нравится разделение на технарей и простых смертных?
@user-rx6bz2gg5w
@user-rx6bz2gg5w 3 месяца назад
​@@result_123 тогда разделяй на хомячков и userof
@biomozgjele
@biomozgjele 3 месяца назад
Для начала нужно основы линуха изучить
@RyAndrey
@RyAndrey 3 месяца назад
Я технарь, всё понятно, но я и до этого это знал.
@MrMarlynrus
@MrMarlynrus 3 месяца назад
Молодец! Продолжай в том-же духе!
@ReizendeR
@ReizendeR 3 месяца назад
самое веселое, когда мне необходим был доступ к виртуальной машине в лабе. снаружи к ней подключиться нельзя было(за натом и возможности проброса к ней портов не предусматривалось). был внешний сервер и домашний компьютер, к которому внешний айпи тоже не предоставлен. в итоге пришлось создать конструкцию, когда я через ssh с виртуалки подключаюсь к внешнему серверу, на нем у меня назначены пробросы портов ssh. и когда с домашнего компа подключался по определенному порту к внешнему серверу, сразу попадал на тот виртуальный за натом)
@fedorsumkin2028
@fedorsumkin2028 3 месяца назад
осмотрелся: а там китайские школьники в нарды играют
@denisttk
@denisttk 3 месяца назад
Спасибо, полезно. Жалко у меня не было этой инструкции 4 года назад
@eggiopain5758
@eggiopain5758 3 месяца назад
Полезный канал для тех кто хочет стать devops
@dkushka
@dkushka 3 месяца назад
какой посоветуешь плейлист уроков по devops?
@yushitsu-6394
@yushitsu-6394 3 месяца назад
Спасибо за отличное видео, буду по новой в девопс вкатываться 😅
@etogeek
@etogeek 3 месяца назад
Отличное решение! 💪
@user-rn6zz3cm2b
@user-rn6zz3cm2b 3 месяца назад
Отличный видос) Жаль, маловато просмотров но помочб может ютифайесли что. почаще снимайте видосы, ставлю лайк)
@user-em5uy7ms7x
@user-em5uy7ms7x 3 месяца назад
Это было сильно!
@dkashkarev
@dkashkarev 3 месяца назад
*Красавчик* 👍
@user-dn6te8fi2q
@user-dn6te8fi2q 3 месяца назад
Грамотно, спасибо.
@blackcake3134
@blackcake3134 3 месяца назад
Хорошая подача материала, всё наглядно и понятно. Вопрос: что за инструмент в браузере? Я увидел только надпись с сырыми логами и телеметрию
@etogeek
@etogeek 3 месяца назад
Спасибо! Это Grafana - сервис визуализации данных. Обычно используется для мониторинга различных систем. Графана делает запросы к различным источникам данных (базы данных) и строит по ним графики. Конкретно на экране - дашборд для анализа логов Nginx
@sda2425
@sda2425 3 месяца назад
Привет! Спасибо за реальные примеры в видео! Планируешь записать, что-то подобное по bash scripts, doker, ansible?
@etogeek
@etogeek 3 месяца назад
Привет! Да, просто не хотелось бы прыгать с настройки SSH сразу на контейнеры :)
@eggiopain5758
@eggiopain5758 3 месяца назад
Теперь давай то же самое через Ansible =)
@user-tk7hx1jk6r
@user-tk7hx1jk6r 3 месяца назад
Пока неплохо, продолжай)
@xor_ax_ax
@xor_ax_ax 3 месяца назад
У меня виртуалка с CentOS под NATом. На хосте Win 10. По паролю заходит, а по ключу никак. Может из-за того, что в пути к приватному ключу имя кириллицей? Скопировал на винде папку .ssh в другое место. Всё равно ключ не подхватывает. Как бы проверить локально, что на самом сервере всё правильно настроено?
@aleshaidetuchitsya4300
@aleshaidetuchitsya4300 3 месяца назад
Можно размер шрифта в терминале прям сильно больше сделать, а так кайф🤓
@etogeek
@etogeek 3 месяца назад
Спасибо, отличное замечание, учту!
@user-sp7et4os8j
@user-sp7et4os8j Месяц назад
Спасибо, четко, ясно и с примерами. Есть вопросик Ты рассказал как сделать туннель во время подключения по SSH. А можно ли сделать туннель, когда мы уже подключены по SSH и находимся на машине?
@etogeek
@etogeek 22 дня назад
Хороший вопрос. Нашел такое - serverfault.com/questions/1041672/programmatically-open-a-ssh-tunnel-in-active-session, надо сессию класть в файл и затем изменять её.
@user-eg9yt7sm2w
@user-eg9yt7sm2w 3 месяца назад
спасибо за видео
@Sergaent1974
@Sergaent1974 3 месяца назад
Extremely useful!
@wefasziengof8180
@wefasziengof8180 3 месяца назад
В каком файле находится сопоставление имени сервера с ip адресом сервера?
@dimitori
@dimitori 3 месяца назад
Спасибо за полезный материал! Не подскажете, что за плагин автозаполнения команд для терминала?
@etogeek
@etogeek 3 месяца назад
Это zsh-autosuggestions, он смотрит по истории команд и по стандартным автокомплитам.
@dimitori
@dimitori 3 месяца назад
@@etogeek благодарю!
@darkm1k0s
@darkm1k0s 2 месяца назад
Огонь
@laurel6661
@laurel6661 27 дней назад
ssh-copy-id без root доступа не помощник?) или он через sudo и на сервере права админа запросит? (без предварительных настроек)
@etogeek
@etogeek 22 дня назад
Чисто copy-id должен отработать без root-прав, потому что он только кладет твой публичный ключ в authorized_keys твоего пользователя. Ну при условии что у тебя есть доступ к серверу вообще.
@DebieCooper
@DebieCooper 3 месяца назад
Я ждал этот канал тысячу лет) Подскажите, есть такой сетап: выделенный сервер, на нем esxi с виртуалками. Винда, на ней ад, днс, dhcp, vpn. И есть убунту сервер. Изучаю сейчас курсы типа девопс и встал вопрос, а что мне с этим сервером вообще делать?) Что нужно в реальной жизни, какие задачи выполняются? Просто крабить bash там или книгу без понятия что делать не заходит. Сам себе придумал автоматическое бэкапирование на другой сервер, так это с чатжпт быстренько сделал. И бэкапирование и автоудаление старых бэкапов, плюс логирование. Что еще можно сделать?) Как набить руку чтобы в резюме написать и не стыдно было идти на собесы, в прошлом был программистом. Может есть линк на какой блог, сайт, форум, где таски для нубов девопс, линух инженеров. Надеюсь вопрос мой понятен, а то каша в голове. Справочник в обсидиан веду)
@etogeek
@etogeek 3 месяца назад
Привет! Спасибо за обратную связь! Круто, что ты практикуешься в свободное время. Вопрос максимально понятен и он беспокоит большинство начинающих :) Попробуй посмотреть первое видео на этом канале, я там описывал примерный порядок задач для практики. В каждую из тем можно углубляться по мере необходимости.
@dmitriynaumov9208
@dmitriynaumov9208 2 месяца назад
Приветы есть воприсики: 1. Почему не генериили ключи на самом сервере ? и позже не раздали клиентам. Вроде как проще не? 2. Подскажите по технологии, может я что то не понимаю, возможно ли заставить винду (а возможно и андройд с айос) после подключения к выделенному серверу, проксировать весь трафик в 22 порт по тоннелю SSH. Без конкретных настроек на уровне приложений. Хотелось бы что бы после коннекта весь трафик проксировался в 22 порт, не зависимо RDP (3389) или HTTPS (443) на уровни ОСей клиентов либо того же клиента Putty. Хочу один раз упростить жизнь на рабочих устройствах, не прокидывая по 1 порту 3. Почему не используете конфиг типа: Ciphers aes256-ctr MACs hmac-sha2-512 Благодарю за внимание ;)
@etogeek
@etogeek 2 месяца назад
Привет - Насчет ключей. А если у нас 100 серверов, на каждом сгенерить отдельный ключ и раздать пользователю сто ключей? Или я не так понял вопрос? Да и на то ключ и приватный, что его знает только пользователь - нам он ни к чему. - Я так понимаю вы хотите использовать SSH в качестве vpn туннеля полноценного? Не пробовал, но кажется что проще и надежнее поднять нормальный vpn, благо серверов полно и настройка совершенно не сложная. - В тему с ciphers не углублялся, тут подсказать не смогу.
@dmitriynaumov9208
@dmitriynaumov9208 2 месяца назад
@@etogeek 1. Эм, наверно не так описал, имел ввиду если рассматривать в случае наличия 1 сервера и 10 клиентов. Мол при разворачивания сервиса, можно нагенерить ключей, а позже их раздать по безопасному каналу удалённым пользователям. Вроде как выглядит более удобно, не придется каждого пользователя просить ключ. 2. Соглашусь, но vpn уже есть, казалось что такой метод будет более безопасным, ну и универсальным, как минимум придется на сервере открыть только 1 порт, при желаниии настроить порт кнокинг. Ну и учитывая что vpn можно определить по длине пакета, тут хз, бывало что провайдер лочил рабочий vpn, тем самым вызывал оврал.
@Kot_off
@Kot_off 3 месяца назад
Подскажите пожалуйста, из-за чего может быть такая ошибка? etc/ssh/ssh_config: line 59: Bad configuration option: authorizedkeysfile файл создан и pub key прописан в нем.
@etogeek
@etogeek 3 месяца назад
Опция для указания файла с публичными ключами относится к ssh-демону, а не клиенту. Тут можно легко запутаться на сервере, я сам во время съемки перепутал файлы и пришлось менять. ssh_config - глобальные настройки клиента, sshd_config - настройки сервера.
@Kot_off
@Kot_off 3 месяца назад
@@etogeek получается редактировать нужно настройки сервера sshd_config
@DebieCooper
@DebieCooper 3 месяца назад
PasswordAuthentication no - и все равно запрашивает пароль. Короче, по адресу /etc/ssh/sshd_config.d лежит какой-то 50-cloud-init.conf. Что это все такое без понятия. Но в этой штуке всего одна строчка PasswordAuth... yes. Поставил no, все заработало. Вопрос, это только у меня так и что это вообще такое и почему обычный способ не работал. Что вообще такое sshd_config.d, почему в конце .d.
@etogeek
@etogeek 3 месяца назад
Обычно в директориях .d лежат дополнительные конфиг. файлы, которые сервис считывает дополнительно. Они обычно нужны для перезаписи или дополнения стандартного конфига, чтобы не менять его. В некоторых образах ubuntu действительно есть такой cloud-init файл, сам наткнулся на PasswordAuth yes недавно на одной виртуалке. Его можно просто удалить, когда он будет не нужен.
@user-vu9nz5bc7x
@user-vu9nz5bc7x 3 месяца назад
Как увеличить или уменьшить длину ключа?
@user-sz4xe4ld8x
@user-sz4xe4ld8x 3 месяца назад
Не совсем уловил, как распознаётся hostname (server1 и server2). С помощью ip всё сделал, а вот на hostname выдаётся ssh: Could not resolve hostname testerserver: No such host is known.
@vvops2540
@vvops2540 3 месяца назад
Не может зарезолвить имя. В файле hosts сопоставить имя сервера и ip лучше сразу на всех серверах
@brave.circassian77
@brave.circassian77 2 месяца назад
Попробуйте в файлике hosts, прописать айпи адрес и имя сервера, чтоб он понимал к какому серверу идёт подключение.
@yogurtl1ve
@yogurtl1ve 2 месяца назад
Доброго времени суток, сделал ключ, в файле sshd_config не было строки PermitRootLogin. Добавил эту строку "PermitRootLogin no" перезапустил демон. Пишу ssh root@ipadress и он меня все равно пускает, пробовал отключать "PasswordAuthentication no", но дела не меняются все равно могу спокойно залогиниться через root. Дайте наставления )
@DebieCooper
@DebieCooper 3 месяца назад
У меня ещё вопросы. У друга два компа. У него есть хом директория. Как правильно делается? На каждый комп отдельный ключ? И добавляется он в его хом? Или делается один ключ и на два компа копируется? Мне надо его теперь добавить на сервер)
@etogeek
@etogeek 3 месяца назад
Он может создать один ключ (приватный) и использовать его на обоих компьютерах для подключения к удаленным серверам. А ты в свою очередь должен добавить его публичный ключ на сервер.
@DebieCooper
@DebieCooper 3 месяца назад
@@etogeekТок сча задумался, почему ssh или пинг робит только по айпи. На винде контроллер домена. Как добавить убунту сервер в домен? И чтобы к нему можно было обращаться по доменному имени? И зачем это вообще нужно делать и нужно ли? Вот например в моем сетапе обычной локалки, где ad,dns,dhcp на винде. А сайт я хочу на убунту например. Какое положение он должен в сети занимать? Он ведь получается как бы отдельно от других компов которые в домене или как? Я тут совсем запутался. Видел ваш первый ролик, не совсем понял что делать надо. Что значит возвращать json, html и слушать порт. Есть какой-нибудь пример что вы имеете в виду? И почему java, go. Самому надо сервис сделать какой-то?) Может lamp, lemp? Вроде везде в вакансиях есть. Не совсем понимаю какие реальные петпрожекты делать для практики девопс, хотя бы примеры какие увидеть. Благодарю
@etogeek
@etogeek 3 месяца назад
@@DebieCooper предлагаю следить за обновлениями :) я будущем я постараюсь раскрыть подробнее каждый из тех пунктов чтобы обращаться к серверу по доменному имени нужно сопоставить DNS имя и IP-адрес. для этого обычно используется dns-сервер (в крайнем случае, запись hosts файле).
@DebieCooper
@DebieCooper 3 месяца назад
@@etogeek dns стоит на винде. В хостс добавлял и ещё куда-то там по статьям из инета. С убунту по доменному имени пингуется вин сервер, наоборот нет.
@DebieCooper
@DebieCooper 3 месяца назад
@@etogeek слежу. Тяжело найти актуальную инфу от практикующего специалиста ещё и с бестпратисом.
@staryj_kudesnik
@staryj_kudesnik 3 месяца назад
больше видосов
@Min-ww7oh
@Min-ww7oh 2 месяца назад
я закрываю доступ к аунтификации по паролю но он у меня всё равно запращивает пароль без ключа. Что делать?
@etogeek
@etogeek 2 месяца назад
Посмотри, нет ли у тебя директории /etc/ssh/sshd_config.d или как-то так. В ней на некоторых образа может лежать по умолчанию файл разрешающий доступ по паролю.
@anatrop5362
@anatrop5362 3 месяца назад
Мне кажется, что 644 на .ssh - плохая идея, все-таки лучше 600)
@biomozgjele
@biomozgjele 3 месяца назад
Го по опен впн урок
@zefirkac_c
@zefirkac_c 2 месяца назад
Как также настроить консоль?)
@etogeek
@etogeek 22 дня назад
Подробнее описано тут etogeek.dev/pages/tech/, но вероятно про это стоит сделать просто видео :)
@zefirkac_c
@zefirkac_c 22 дня назад
Думаю стоит)
@shelezyaka07-30
@shelezyaka07-30 3 дня назад
+++!
@awakeyprime5196
@awakeyprime5196 3 месяца назад
а ведь кто то подумает, что сообщения от админа были смонтированы...
@etogeek
@etogeek 3 месяца назад
Паша передает, что он настоящий, просто очень занят, чтобы ответить лично.
@DzintarsDev
@DzintarsDev 3 месяца назад
Pochemu ljudi tak malo govorit pro SSH Certificates i ih rotaciju. Vedj eto bole udobno i bezopasnee upravljatj imi. V korporavtivnoi srede.
@ivanovivan4806
@ivanovivan4806 3 месяца назад
да надоел ты со своим линуксом
@user-qq8zy8km8n
@user-qq8zy8km8n 2 месяца назад
Куча идиотских вопросов в комментариях. Читайте документацию, а не смотрите видео на ютубе. Автор в этом рассаднике тоже косвенно виноват.
@fpv_cinematic2460
@fpv_cinematic2460 2 месяца назад
Ничего не работает, сделал как ты показал, дизлайк
Далее
Shu bahormi ? | Million jamoasi
00:57
Просмотров 1 млн
Что-то пошло не так 😂
00:15
Просмотров 417 тыс.
Cosa è stato messo nel suo zaino?
00:37
Просмотров 3,5 млн
A Worlds First On This Top Tier Radio - TIDRadio H3
11:52
How SSH Works
8:54
Просмотров 464 тыс.
Китайский XRAY VPN - shadowsocks, VLESS
29:12
ПК с Авито за 3000р
0:58
Просмотров 1,3 млн
Google Pixel 8 Pro #apple #googlepixel #iphone
0:17
Просмотров 14 тыс.