Как использовать ssh в git

Переходим с HTTPS на SSH доступ в GitHub

Table of Contents

C 13 августа 2021 года Github блокирует доступ по HTTPS протоколу к репозиториям, то есть теперь вы не сможете, получить или отправить изменений в удаленный репозиторий без SSH ключа.

В этом гайде покажу как создать ключ, загрузить на сервер и перенастроить локальный репозиторий на SSH доступ. В качестве примера используется Windows 10 и GitBash.

Что необходимо

Создание пары ключей SSH

Открывайте GitBash или терминал, вводите:

После заходите в папку.

В итоге для запуска генерации ключа, выполните:

Вам будут заданы несколько вопросов:

Подтвердить кодовую фразу или ее отсутсвие, тоже нажав Enter.

В результате вам покажут рисунок вашего ключа:

Вывод должен быть таким:

Активация ключа

Для того чтобы ключ использовался системой, необходимо добавить ключ в ssh-agent.

результат, номер процесса может отличаться:

Добавьте ранее созданный ключ:

При успехе получите ответ:

Ключи SSH готовы к использованию!

Добавление публичного ключа в профиль на GitHub

ℹ Кратко про ключи. С помощью публичного ключа, каждый может зашифровать информацию, расшифровать может только владелец приватного ключа, поэтому приватный ключ нельзя передавать, отправлять или хранить в открытом виде. Желательно пару ключей дополнительно скопировать на отдельный носитель, на случай потери ключа на компьютере.

В GitHub для работы с репозиториями скопируйте публичный ключ, одним из способов:

это скопирует публичный ключ в буфер обмена.

Нажимайте не кнопку New SSH Key

В поле Key вставьте скопированный ключ:

Как использовать ssh в git. 2021 08 16 01 26 49. Как использовать ssh в git фото. Как использовать ssh в git-2021 08 16 01 26 49. картинка Как использовать ssh в git. картинка 2021 08 16 01 26 49

В поле Title можете вставить название ключа, пригодится если у вас будет в профиле более одного ключа. Поможет их различать.

Теперь можно использовать SSH доступ к вашим репозиторияем!

Получение репозитория по SSH

Откройте репозиторий и скопируйте ссылку для SSH доступа:

Как использовать ssh в git. 2021 08 17 00 54 23. Как использовать ssh в git фото. Как использовать ssh в git-2021 08 17 00 54 23. картинка Как использовать ssh в git. картинка 2021 08 17 00 54 23

И как обычно используйте команду git clone:

Как сменить работу с HTTPS на SSH

Если у вас есть локальный (на вашем рабочем компьютере) репозиторий полученный по https, очень просто сменить доступ на SSH.

Для этого убедитесь что доступ по HTTPS, для этого выведите список remote:

ссылки начинаются c https, а значит вы не можете ни загрузить ни получить обновления удаленного репозитория.

Зайдите в репозиторий и скопируйте SSH ссылку доступа, перейдите в локальный репозиторий и удалите текущий remote origin:

и добавьте новый, последняя строка в команде это ссылка доступа SSH:

проверьте список удаленных репозиториев:

и если у вас формат без https в начале ссылки, то все выполнено верно, можно работать с репозиторием и проверить командой git fetch

На этом вопросы с доступом к вашим репозиториям на гитхабе закрыт!

Источник

Git инструкция для начинающих. Работаем с GitHub

Как использовать ssh в git. 1 9pnpjpi65fgwlimfluvlrw. Как использовать ssh в git фото. Как использовать ssh в git-1 9pnpjpi65fgwlimfluvlrw. картинка Как использовать ssh в git. картинка 1 9pnpjpi65fgwlimfluvlrw

Это запись о том как быстро начать работу с Git’ом. Не какой воды.

Установка Git

Первоначальная настройка git

Настройка SSH-авторизации

Далее жмем несколько раз “Enter” и получаем вот такое сообщение в консоли.

Как использовать ssh в git. post 13548 5eb1687d23156. Как использовать ssh в git фото. Как использовать ssh в git-post 13548 5eb1687d23156. картинка Как использовать ssh в git. картинка post 13548 5eb1687d23156

Далее копируем открытый ssh-ключ в буфер обмена. Команда для копирования вводится в зависимости от Вашей OS.

Для Mac

Для Linux (Ubuntu)

Для Windows (Git Bash)

Как ввести SSH ключ на стороне Git’a

Входим в свой аккаунт на Git’e, далее наводим курсор мышки на свою аватарку и жмем “Settings”:

Как использовать ssh в git. post 13548 5eb1687e72fe0. Как использовать ssh в git фото. Как использовать ssh в git-post 13548 5eb1687e72fe0. картинка Как использовать ssh в git. картинка post 13548 5eb1687e72fe0

Теперь жмем на вкладку “SSH and GPG keys”:

Как использовать ssh в git. post 13548 5eb1687fbe636. Как использовать ssh в git фото. Как использовать ssh в git-post 13548 5eb1687fbe636. картинка Как использовать ssh в git. картинка post 13548 5eb1687fbe636

Далее нажимаем кнопку “New SSH Key”. Указываем имя и вставляем ключ в поле Key. Нажимаем Add Key.

Работа с репозиторием

Теперь на сайте github.com создадим новый репозиторий, если это новый проект.
Теперь перейдём в папку с проектом на локальной машине и дадим команду:

Клонирование репозитория

Покажу на примере Windows.

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

В этой процедуре предполагается, что вы уже создали хранилище на GitHub или имеете существующее хранилище, принадлежащее кому-то, кому вы хотели бы внести свой вклад.

Клонирование репозитория с помощью командной строки

На GitHub перейдите на главную страницу репозитория.

Примечание. Если хранилище пустое, вы можете вручную скопировать URL-адрес страницы хранилища из браузера и перейти к шагу 4.

Как использовать ssh в git. post 13548 5eb16887c4701. Как использовать ssh в git фото. Как использовать ssh в git-post 13548 5eb16887c4701. картинка Как использовать ssh в git. картинка post 13548 5eb16887c4701

Как использовать ssh в git. post 13548 5eb1688862d76. Как использовать ssh в git фото. Как использовать ssh в git-post 13548 5eb1688862d76. картинка Как использовать ssh в git. картинка post 13548 5eb1688862d76

Откройте Git Bash. TerminalTerminal

Измените текущий рабочий каталог на место, где вы хотите сделать клонированный каталог.

Введите, git clone а затем вставьте URL-адрес, скопированный на шаге 2.

Нажмите Enter. Ваш местный клон будет создан.

Источник

Как настроить подключение к удаленному Git репозиторию

Удаленный репозиторий находится на сервере с git. мне нужно просто склонировать содержимое. никаких пушей обратно. там есть идентификация. сгенерил паблик кей и отослал спец-ту на той стороне. как мне добавить ранее сгенеренный-свой ключ через консоль и подключиться к серверу? какие команды. Windows 7 на моей машине.

Как использовать ssh в git. OZndo. Как использовать ssh в git фото. Как использовать ssh в git-OZndo. картинка Как использовать ssh в git. картинка OZndo

3 ответа 3

Установка

Если ещё не установлен, то Git можно взять здесь. Вместе с ним будет unix-like консоль Git Bash.

Клонирование через SSH

Пример команды для клонирования через SSH.

В общем случае команда для клонирования по SSH выглядит так:

Не перепутайте с HTTPS, который потребует авторизации через логин-пароль:

Создание ssh-ключа.

На Windows можно как через cmd, так и Git Bash, на *nix — просто в консоли. Но в cmd я не разбираюсь, поэтому привожу инструкцию только для Git Bash & *nix:

Можно выбрать passphrase, который повышает надёжность, но его нужно будет вводить каждый раз при использовании. Если забудете — ключ бесполезен для дальнейшего использования.

После выполнения команды публичный ключ появляется соответственно в

Именно публичный ключ нужно передавать специалисту на той стороне. (Наверняка вы так и сделали, но всё-таки стоит об этом сказать)

Если всё сделали правильно, то при попытке соединения по ssh ключ будет использоваться автоматически.

Если ключ уже есть

Как использовать ssh в git. OZndo. Как использовать ssh в git фото. Как использовать ssh в git-OZndo. картинка Как использовать ssh в git. картинка OZndo

В ней полностью показаны клиентские программы для работы с push-ом и pull-ом. У меня лично Windows недолюбливал родной Git клиент, но всегда прекрасно работает с Tortoise (есть в статье).

В ней есть полное руководство по подключению. Не уверен правильная ли это аналогия, но вы можете поставить себе программу Composer и ей подобные, после чего можно через консоль Windows полностью клонировать себе репозиторий с Git-а.

Если же касается более специфичного подключения именно к Git, то эта страница будет полезной: http://webhamster.ru/site/page/index/articles/comp/171

Добавил, как попросили, кратко содержимое статьи:

Идем на официальную страницу Git http://git-scm.com, кликаем на Download for Windows. В открывшемся окне кликаем на Full installer for official Git. Запускаем полученный exe-шник.

Я рекомендую выбрать «Run Git from the Windows Command Prompt». Все остальные опции можно оставлять по-умолчанию. После установки Git нужно перегрузиться или завершить сеанс пользователя и снова войти, чтобы применились изменения в системной переменной PATH.

Далее нужно проверить, доступен ли Git для работы. В любом каталоге даем команду:

Если получаем информацию о версии, то Git установлен и работает. Если получаем информацию что программа git не найдена, разбираемся что сделали не так.

Настройка SSH-ключей в Windows

В операционной системе Windows генератор SSH-ключей включен в комплект поставки Git. Для генерации ключей необходимо запустить на выполнение файл C:\Program Files\Git\Git bash.vbs. Его можно запустить как обычный exe-шник. Откроется программа «Консоль git». В ней надо дать команду:

Будьте внимательны, в этой консоли подглючивает копи-паст, проще ввести команду вручную. В качестве email указываем свой почтовый ящик. На запрос «Enter file in which to save the key» просто нажимаем Enter. При запросе пароля «Enter passphrase» и «Enter same passphrase again» просто нажимаем Enter. В процессе генерации ключей в консоли будет выдаваться примерно следующая информация:

После выполнения этой программы, в каталоге C:\Documents and Settings\username.ssh будут лежать файлы id_rsa и id_rsa.pub, они нам пригодятся в дальнейшем.

Установка SSH-ключа в GitHub

Нас колько я помню, эта часть ответа несколько изменилась в современном дизайне GitHub-а, но интуитивно можо найти.

Сразу после регистрации необходимо прописать в системе GutHub свой публичный ключ шифрования (открытый SSH-ключ). Для добавления ключа, надо в правом верхнем углу нажать «Account Settings».

В поле Title можно написать название компьютера, на котором сгенерирован публичный ключ. Можно писать по-русски.

После добавления ключа, компьютер может соединяться с GitHub через программу git, и никаких ошибок не должно возникать.

Работа с репозитарием на GitHub через программу Git

Начиная с этого момента, пляски вокруг web-интерфейса GitHub можно считать законченными. Далее можно работать только используя программу git.

Вначале нужно сделать небольшую настройку программы git: указать локальной системе git имя пользователя и email. Это делается следующими командами, которые можно выполнить, находясь в любом каталоге:

После этих настроек, можно заливать свои файлы в репозитарий. Переходим в каталог со своим проектом, и даем команды:

После этих команд на сервере GitHub образуется копии файлов того каталога, в котором были выполнены данные команды. Далее можно уже делать коммиты, заливки на сервер GitHub изменений, считывания изменений с сервера. Но это уже совсем другая история.

Источник

Использование проверки подлинности с ключом SSH

Настройте SSH с помощью командной строки. bash является общей оболочкой в Linux и macOS, а git для Windows установки добавляет ярлык для git Bash в меню. Другие среды оболочки будут работать, но не будут рассмотрены в этой статье.

Шаг 1. Создание ключей SSH

Если вы уже создали ключи SSH в системе, пропустите этот шаг и перейдите к разделу Настройка ключей SSH.

Команды здесь позволяют создавать новые ключи SSH по умолчанию, перезаписывая существующие ключи по умолчанию. Прежде чем продолжить, проверьте

/.ssh папку (например,/Хоме/Жамал/.СШ или к:\усерс\жамал\.СШ) и найдите следующие файлы:

Если эти файлы существуют, вы уже создали ключи SSH. Вы можете перезаписать ключи с помощью следующих команд или пропустить этот шаг и перейти к разделу Настройка ключей SSH для повторного использования этих ключей.

Создайте ключи SSH с помощью ssh-keygen команды из bash командной строки. Эта команда создаст 3072-разрядный ключ RSA для использования с SSH. При появлении запроса можно предоставить парольную фразу для закрытого ключа — Эта парольная фраза обеспечивает еще один уровень безопасности для закрытого ключа. Если вы выдаете парольную фразу, обязательно Настройте агент SSH для кэширования парольной фразы, чтобы не вводить его каждый раз при подключении.

Эта команда создает два ключа, необходимых для проверки подлинности SSH: ваш закрытый ключ ( id_rsa ) и открытый ключ ( id_rsa. pub ). Важно никогда не предоставлять общий доступ к содержимому закрытого ключа. Если закрытый ключ скомпрометирован, злоумышленники могут использовать его, чтобы заставить серверы подумать о том, что подключение поступает от вас.

шаг 2. добавление открытого ключа в Azure DevOps Services/тфс

Свяжите открытый ключ, созданный на предыдущем шаге, с ИДЕНТИФИКАТОРом пользователя.

Как использовать ssh в git. select ssh public keys. Как использовать ssh в git фото. Как использовать ssh в git-select ssh public keys. картинка Как использовать ssh в git. картинка select ssh public keys

Выберите + новый ключ.

Как использовать ssh в git. ssh accessing security key. Как использовать ssh в git фото. Как использовать ssh в git-ssh accessing security key. картинка Как использовать ssh в git. картинка ssh accessing security key

Как использовать ssh в git. ssh key input. Как использовать ssh в git фото. Как использовать ssh в git-ssh key input. картинка Как использовать ssh в git. картинка ssh key input

Шаг 2. Добавление открытого ключа в Azure DevOps

Свяжите открытый ключ, созданный на предыдущем шаге, с ИДЕНТИФИКАТОРом пользователя.

Как использовать ssh в git. ssh profile access. Как использовать ssh в git фото. Как использовать ssh в git-ssh profile access. картинка Как использовать ssh в git. картинка ssh profile access

Выберите + новый ключ.

Как использовать ssh в git. ssh accessing security key. Как использовать ssh в git фото. Как использовать ssh в git-ssh accessing security key. картинка Как использовать ssh в git. картинка ssh accessing security key

Как использовать ssh в git. ssh key input. Как использовать ssh в git фото. Как использовать ssh в git-ssh key input. картинка Как использовать ssh в git. картинка ssh key input

Шаг 3. Клонирование репозитория Git с помощью SSH

Сведения о подключении по протоколу SSH из существующего клонированного репозитория см. в разделе обновление удаленных служб до SSH.

Как использовать ssh в git. ssh clone url. Как использовать ssh в git фото. Как использовать ssh в git-ssh clone url. картинка Как использовать ssh в git. картинка ssh clone url

Project url-адреса были изменены в выпуске Azure DevOps Services и теперь имеют формат dev.azure.com// , но можно использовать существующий visualstudio.com формат. дополнительные сведения см. в разделе Visual Studio Team Services теперь Azure DevOps Services.

Выполните git clone в командной строке.

SSH отображает этот отпечаток при подключении к неизвестному узлу и защищает вас от атак типа «злоумышленник в середине». Приняв отпечаток узла, SSH не выводит запрос повторно, пока отпечаток не изменится.

Вопросы и устранение неполадок

Вопрос. После выполнения git clone я получаю следующую ошибку. Что следует делать?

Ответ . Вручную запишите ключ SSH, выполнив команду:

Вопрос. как с помощью Git запоминать парольную фразу для моего ключа на Windows?

Ответ . выполните следующую команду, входящую в Git, чтобы Windows запустить процесс в PowerShell или в Windows командной строке. ssh-agent кэширует вашу парольную фразу, чтобы не указывать ее при каждом подключении к репозиторию.

Если вы используете оболочку Bash (включая Git bash), запустите ssh-agent с:

Вопрос. я использую в качестве моего клиента SSH ввод и создал ключи с помощью PuTTYgen. Можно ли использовать эти ключи с Azure DevOps Services?

Ответ. Да. Загрузите закрытый ключ с помощью PuTTYgen, перейдите в меню преобразования и выберите Экспорт ключа OpenSSH. Сохраните файл закрытого ключа и выполните действия по настройке ключей, не относящихся к по умолчанию. Скопируйте открытый ключ непосредственно из окна PuTTYgen и вставьте в поле Data ( Ключевые данные ) в параметры безопасности.

Вопрос. Как убедиться, что открытый ключ, который я отправил, имеет тот же ключ, что и локальный?

Ответ . Отпечаток открытого ключа, который отображается в профиле, можно проверить с помощью следующей команды, выполняемой для открытого ключа в bash командной строке. Если значения по умолчанию не используются, необходимо будет изменить путь и имя файла открытого ключа.

Затем можно сравнить сигнатуру MD5 с той, которая есть в вашем профиле. Эта проверка полезна при возникновении проблем с подключением или при неправильном вводе открытого ключа в поле данных ключа при добавлении ключа в Azure DevOps Services.

Вопрос. как начать использовать SSH в репозитории, где сейчас используется протокол HTTPS?

Ответ . Вам потребуется обновить Удаленный в Git, чтобы изменить URL-адрес HTTPS на SSH. Получив URL-адрес клона SSH, выполните следующую команду:

вопрос. я использую Git LFS с Azure DevOps Services и получаю сообщения об ошибках при получении файлов, отслеживаниющих с помощью Git LFS.

ответ . Azure DevOps Services сейчас не поддерживает LFS через SSH. Используйте HTTPS для подключения к репозиториев с отслеживанием файлов LFS Git.

Вопрос. как использовать расположение ключа не по умолчанию, т. е. not/.СШ/id_rsa и

Ответ . Чтобы использовать ключи, созданные в, в другом месте, отличном от используемого по умолчанию, выполните следующие две задачи:

в Windows перед запуском необходимо ssh-add выполнить следующую команду из команды, включенной в Git, для Windows:

Эта команда выполняется как в PowerShell, так и в командной строке. При использовании git Bash необходимо использовать следующие команды:

его можно найти ssh-add как часть Git для Windowsного распространения, а также запускать в любой среде оболочки на Windows.

Вопрос. у меня несколько ключей SSH. Разделы справки использовать разные ключи SSH для разных серверов SSH или репозиториев?

Ответ . Как правило, если вы настроили несколько ключей для клиента SSH и подключились к серверу SSH, клиент может попытаться использовать ключи по одному, пока сервер не примет его.

однако это не работает с Azure DevOps по техническим причинам, связанным с протоколом ssh, и о том, как структурированы url-адреса SSH Git. Azure DevOps будет отменять первый ключ, предоставляемый клиентом во время проверки подлинности. Если этот ключ недопустим для запрошенного репозитория, запрос завершится со следующей ошибкой:

для Azure DevOps необходимо настроить SSH для явного использования определенного файла ключа. Один из способов сделать это для изменения

/.ssh/config файла (например, /home/jamal/.ssh или C:\Users\jamal\.ssh ) следующим образом:

Вопрос. Разделы справки исправить ошибки с упоминанием «не найден соответствующий метод обмена ключами»?

Ответ . Git для Windows 2.25.1 поставляется с новой версией OpenSSH, которая по умолчанию удалила некоторые протоколы обмена ключами. в частности, определено diffie-hellman-group14-sha1 как проблематичное для некоторых Azure DevOps Server и клиентов TFS. Эту проблему можно обойти, добавив следующую команду в конфигурацию SSH (

Вопрос. какие уведомления могут получать сведения о ключах SSH?

Ответ . при регистрации нового ключа ssh с Azure DevOps Services вы получите уведомление по электронной почте о том, что в учетную запись добавлен новый ключ ssh.

Как использовать ssh в git. ssh notification. Как использовать ssh в git фото. Как использовать ssh в git-ssh notification. картинка Как использовать ssh в git. картинка ssh notification

Вопрос. что делать, если я полагаю, что кто-то, помимо меня, добавляет ключи SSH в мою учетную запись?

Ответ . Если вы получили уведомление о регистрации SSH-ключа и вы не перегрузили его в службу вручную, возможно, ваши учетные данные были скомпрометированы.

Следующий шаг — выяснить, не был ли ваш пароль скомпрометирован. Изменение пароля всегда является хорошим первым шагом для защиты от этого вектора атак. если вы являетесь Azure Active Directory пользователем, обратитесь к администратору, чтобы проверить, использовалась ли ваша учетная запись из неизвестного источника или расположения.

Ответ . некоторые дистрибутивы linux, например Fedora Linux, имеют политики шифрования, требующие более строгих алгоритмов подписи SSH, чем поддерживает Azure DevOps (по состоянию на январь 2021). Есть запрос на открытие функции для добавления этой поддержки.

Можно обойти эту ошибку, добавив следующий код в конфигурацию SSH (

Замените на ssh.dev.azure.com правильное имя узла при использовании Azure DevOps Server.

Azure DevOps Services | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018-TFS 2015

URL-адреса SSH изменились, но старые URL-адреса SSH продолжат работать. Если вы уже настроили SSH, необходимо обновить удаленные URL-адреса в новом формате:

начиная с Visual Studio 2017 можно использовать SSH для подключения к Azure DevOps репозиториев Git.

Как работает проверка подлинности SSH-ключа

Проверка подлинности с помощью открытого ключа SSH работает с асимметричной парой созданных ключей шифрования. открытый ключ предоставляется Azure DevOps и используется для проверки первоначального ssh-подключения. Закрытый ключ обеспечивает безопасность и безопасность в системе.

Настройка проверки подлинности ключей SSH

Следующие шаги охватывают настройку проверки подлинности ключей SSH на следующих платформах:

Источник

Подключение к Git по SSH в Windows без PuttyGen на примере BitBucket

Много статей (в том числе и на Хабре) посвящено подключению к Git по SSH-ключам. Почти во всех из них используется один из двух способов: либо с помощью puttygen.exe, либо командами ssh-keygen или ssh-add.

Вчера на одном из компьютеров у меня не получилось сделать это для msysgit ни одним из описанных в интернете способов, и я потратил несколько часов на попытки настроить SSH-доступ, так ни чего и не добившись.

Как я решил эту проблему — под катом.

BitBucket всё время ругался на то, что ему требуется подключение с помощью ключа:

Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.

Мои попытки сгенерировать ключи, указать пути в переменных среды, привязать ключи к гиту были бесполезны. Либо гит ругался крякозябрами (в случае ssh-agent cmd.exe), либо просто игнорировал всё предложенное.

Как использовать ssh в git. image loader. Как использовать ssh в git фото. Как использовать ssh в git-image loader. картинка Как использовать ssh в git. картинка image loader

Как использовать ssh в git. image loader. Как использовать ssh в git фото. Как использовать ssh в git-image loader. картинка Как использовать ssh в git. картинка image loader

Если вы столкнулись с такой проблемой, то скорее всего у вас там ни чего не будет:

Как использовать ssh в git. image loader. Как использовать ssh в git фото. Как использовать ssh в git-image loader. картинка Как использовать ssh в git. картинка image loader

Ну а дальше читать будут, скорее всего, только самые педантичные… Жмём Generate key, видим окно запроса пароля (два раза) для приватного ключа:

Как использовать ssh в git. image loader. Как использовать ssh в git фото. Как использовать ssh в git-image loader. картинка Как использовать ssh в git. картинка image loader

И видим сгенерировавшийся публичный ключ:

Как использовать ssh в git. image loader. Как использовать ssh в git фото. Как использовать ssh в git-image loader. картинка Как использовать ssh в git. картинка image loader

Копируем его, и добавляем вэб-морду ГИТа (в моём случае это BitBucket; ключи там можно добавить в двух местах — в настройках аккаунта и в настройках проекта, нам первый вариант, ибо второй — для деплоя проекта) [Аккаунт]Управление аккаунтомSSH-ключиДобавить ключ:

Как использовать ssh в git. image loader. Как использовать ssh в git фото. Как использовать ssh в git-image loader. картинка Как использовать ssh в git. картинка image loader

Ну, а дальше — просто делаем что нужно — или пуш, или клон (предполагается, что git remote add вы уже сделали сами). Git спросит, можно ли добавить хост к доверенным, и запросит passphrase (пароль приватного ключа). Всё, можно работать.

PS: Большое спасибо за наводку на решение моему коллеге Ивану!

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *