как подружить Git и Debian

Автор Екатерина, 23 мая 2017, 15:51:05

« назад - далее »

0 Пользователи и 3 гостей просматривают эту тему.

ZEN

#15
update-ca-certificates  должен написать в выводе о новых сертификатах.

ЦитироватьUpdating certificates in /etc/ssl/certs... 0 added, 0 removed; done.

Тут он пишет, что 0 найдено. Думаю, что нужно написать относительный путь к сертификату в файле /etc/ca-certificates.conf и еще раз выполнить команду update-ca-certificates.

$ sudo -s
# echo "extra/gitlab.vka.loc.crt" >> /etc/ca-certificates.conf
# update-ca-certificates
Crimea is Ukraine

Екатерина

katerina@KaterinaDeb:/$ sudo -s
[sudo] password for katerina:
root@KaterinaDeb:/# echo "extra/gitlab.vka.loc.crt" >> /etc/ca-certificates.conf
root@KaterinaDeb:/# update-ca-certificates
Updating certificates in /etc/ssl/certs... 0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d....
done.
done.


Сделала. не сработало( думаю, тут дело в том, что я туда добавляла .cer файл.
и он успешно виделся. Но хром все-равно отказывается работать и git clone https:// c ним заодно

ZEN

А файл точно начинается с следующей строки:
$ head -n1 /usr/share/ca-certificates/extra/gitlab.vka.loc.crt
-----BEGIN CERTIFICATE-----

?
Crimea is Ukraine

Екатерина

вот сам файл. может дело в хроме? но с другой стороны почему тогда git clone по https не работает?

[вложение удалено администратором]

ZEN

#19
Дело точно не хроме, так как если попытаться скачать главную страницу с помощью curl или wget - будет та же ошибка на сертификат. Я записал видео, как я экспортировал сертификат из firefox в систему.
https://fex.net/load/613441513195/18325956
Попробуй повторить все так же, как на видео (Естественно, вместо self-signed.badssl.com открой gitlab).
Crimea is Ukraine

Екатерина

#20
Слушайте, у меня вот в Firefox он упорно экспортируется БЕЗ расширения .crt может что-то не так с сертификатом?
кстати на firefox'e я решила эту проблему добавив исключение для этого сайта и теперь он мне показывает зеленый замочек и говорит, что мое подключение защищено.
А вот по днске не пашет даже в Firefox
katerina@KaterinaDeb:~$ wget -S https://gitlab.local
--2017-06-15 14:05:19--  https://gitlab.local/
Распознаётся gitlab.tc-secur.local (gitlab.local)... 192.168.0.95
Подключение к gitlab.tc-secur.local (gitlab.local)|192.168.0.95|:443... соединение установлено.
Владелец сертификата не совпадает с именем узла «gitlab.local»


и ошибка у меня другая( говорит владелец не сопадает. это я уже походу перемудрила где-то

Cообщение объединено 15 Июня 2017, 14:19:15

Проделала все, что было в видяшке. (кстати спасибо огроменное за нее, она максимальна понятна и поучительна)
root@KaterinaDeb:/usr/share/ca-certificates# update-ca-certificates
Updating certificates in /etc/ssl/certs... 1 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d....
Replacing debian:gitlab.vka.loc.pem
done.
done.

в файле ca-certificates.conf в конце были уже пару раз эти сертификаты. Я те записи удалила, а новую добавила в самое начало. и все-равно владелец сертификата не совпадает с именем узла. как так может быть?

[вложение удалено администратором]

ZEN

#21
Цитата: Екатерина от 15 июня 2017, 14:07:46Владелец сертификата не совпадает с именем узла «gitlab.local»
Кажется мне, что нужно сгенерировать новый сертификат и перенастроить GitLab на использование нового. И скорее всего, перед созданием нового сертификата, нужно будет открыть файл /usr/lib/ssl/openssl.cnf и в секции [v3_ca] добавить строчку "subjectAltName = gitlab.local". Думаю, что выше перечисленная ошибка случается потому, что openssl использовал hostname при создании сертификата. И hostname != gitlab.local
Crimea is Ukraine

Екатерина

ох... а как это сделать не подскажите? так то у меня доступ везде есть  ;D только вот знать бы что делать. а то мне айайай скажут в случае падения всего(

ZEN

Вот ссылка как сгенерировать сертификат:
https://www.bonusbits.com/wiki/HowTo:Generate_Self-Signed_SSL_Certificate_with_OpenSSL
(На этапе "Enter server hostname i.e. URL" нужно будет ввести gitlab.local, который как я понял у тебя используется в качестве домена сервера)

А вот как задеплоить новый сертификат:

По-идее, у тебя на сервере уже есть старый сертификат по пути /etc/gitlab/ssl/gitlab.local.crt и ключ к нему /etc/gitlab/ssl/gitlab.local.key
Нужно будет сделать резервную копию и заменить их новыми. Вот статья как подкинуть серверу сертификат:

https://www.bonusbits.com/wiki/HowTo:Setup_HTTPS_for_Gitlab#Deploy_Trusted_SSL_Cert_to_GitLab
(Выполнять команды до раздела "Configure Firewall")


Цитироватьтолько вот знать бы что делать. а то мне айайай скажут в случае падения всего(
Был бы удаленный доступ, я бы помог настроить или в крайнем случае откатить все как было.
Crimea is Ukraine

Екатерина

etc/gitlab/ssl/gitlab.local.crt - такой папки нет( зато есть папка /etc/nginx/ssl/gitlab.crt
она же подойдет?
попробую сейчас своими одарённо изогнутыми ручонками туда залезть)))

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

Екатерина

#25
Я прошу прощения, в пятницу было много дел и меня отвлекли от этого увлекательного занятия - ломать то, что не я настраивала(
в общем я перевыпустила себе сертификат на новый hostname по инструкции и изменила сертификаты на nginx сервере


Cообщение объединено 19 Июня 2017, 17:03:10

:o я торопышка. Оказывается там целых 2 отдельных файла для http и https) и сертификат там заменила, этот сертификат скачала на рабочую станцию (кстати он так и не экспортирует мне его с расширением),
скопировала его в папку /usr/share/ca-certificates, подправила /etc/ca-certificates.conf и он у меня успешно добавился в систему

root@KaterinaDeb:/etc/ca-certificates# update-ca-certificates
Updating certificates in /etc/ssl/certs... 1 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d....
Adding debian:gitlab.tc-secur.local.pem
done.
done.
root@KaterinaDeb:/etc/ca-certificates# wget https://gitlab.tc-secur.local--2017-06-19 16:56:48--  https://gitlab.tc-secur.local/
Распознаётся gitlab.tc-secur.local (gitlab.tc-secur.local)... 192.168.0.95
Подключение к gitlab.tc-secur.local (gitlab.tc-secur.local)|192.168.0.95|:443... соединение установлено.
HTTP-запрос отправлен. Ожидание ответа... 302 Found
Адрес: https://gitlab.tc-secur.local/users/sign_in [переход]
--2017-06-19 16:56:48--  https://gitlab.tc-secur.local/users/sign_in
Повторное использование соединения с gitlab.tc-secur.local:443.
HTTP-запрос отправлен. Ожидание ответа... 200 OK
Длина: нет данных [text/html]
Сохранение в: «index.html»

index.html                 [ <=>                          ]   8,00K  --.-KB/s   за 0s     

2017-06-19 16:56:48 (80,5 MB/s) - «index.html» сохранён [8192]



Git clone по https так же идет. Только вот мозилла и хром все-равно параноят и не пускают меня на сайт без предупреждения. пойду попробую склонировать гитом(
Перезагрузка не помогла
Я все еще что-то делаю не так(

ZEN

Цитата: Екатерина от 19 июня 2017, 16:19:32потому что у меня нет файла /etc/gitlab/gitlab.rb, а во-вторых команд - gitlab-ctl
Видимо установка GitLab не стандартная. Что-то типа вот такой, но наверняка с другими путями установки... В таком случае нам не нужна команда gitlab-ctl и остается заняться только Nginx

Цитата: Екатерина от 19 июня 2017, 16:19:32Вот вообще интересно) в nginx'е у меня висит 2 сайта - git и redmine. Притом во втором все чинно - открыты и 80 и 443 порты и есть ссылочка на сертификаты, все как по учебнику. Там сертификаты на новые я заменила. А вот в файлике с гитом полнейший паноптикум( в разделе server {} есть server-name, но ни 80 ни 443 порта нет(  но работает только git, redmine не пашет(
Nginx должен быть настроен как реверс-прокси, что бы пробрасывать http/https трафик. Но тут сложно без доступа к серверу гадать почему не прописаны порты. Тем более, что ничего не мешает конфиг nginx -a назвать redmine.conf, а использовать его для gitlab -a..
Crimea is Ukraine

endru

а можно публичную часть ключа для проверки?
современные браузеры ругаются на не безопасный SHA-1 (если генерировали сертификат по старинным мануалам) - проблемы будут даже если вы принудительно всем поставите этот сертификат в доверенные. такая политика гугла...

Екатерина

открытая часть ключа - это сертификат?
а как правильно его сгенерировать?  я его уже умею менять  8)

[вложение удалено администратором]