Как поменять колодки на кадди


FAQ - [Фотоотчет] Замена задних тормозных колодок

Итак.
Замена задних тормозных колодок.
Кратко, лаконично, по сути. Поехали.

Снимаем колесо.

Отсоединяем разъем датчика АБС. Если разъем не отсоединяется, датчик можно открутить.

Откручиваем суппорт от скобы, придерживая направляющие от проворачивания.

Старые колодки прочь, суппорт пока в сторону.

Старые колодки, пружины и болты в утиль.

Переходим к скобе.

Снимаем направляющие, пыльники. Инспектируем на предмет повреждений.

Снимаем скобу- она к ступице крепится болтами под головку "на 18". Болты также имеют внутренний SPLINE.

Снимаем тормозной диск, чтобы почистить все от грязи и от окалины. Диск крепится одним винтиком "под TORX".

Если диск просто так не снимается, можно помочь ему ВДшкой и кувалдочкой (только осторожно).

Измеряем толщину тормозного диска. Запас еще имеется.

Ну а дальше, особо кому заняться нечем, можно разобрать ступицу для ревизии и обслуживания подшипника. Об этом будет отдельный отчет. Кто ограничен во времени - переходим к сборке.

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

Направляющие и их посадочные места хорошенько очищаем, механически и с помощью растворителя. На скобе очищаем места установки пружин.

Смазываем направляющие специальной смазкой. Синтетическая силиконовая высокотемпературная смазка. Никаких графиток, литолов и прочего мазохизма.

Так же очищаем пыльники и закладываем смазку и в них.

Все, скобу можно ставить на место. На болты наносим резьбовой герметик, а точнее фиксатор резьбы.

Переходим к суппорту.
С помощью специальной приспособы вдавливаем и одновременно закручиваем поршень.

Желательно следить, чтобы пыльник поршня не комковался и усаживался равномерно.

Пришло время доставать новый комплект колодок. Мой выбор - Ferodo.

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

Защелкиваем пружины в скобу, там ошибиться сложно. Рабочие поверхности пружин можно так же чем-то смазать, стараясь не обляпать диск. Новые колодки на месте, осталось только надеть сверху суппорт и закрепить в направляющих.

А дальше сборка в обратной последовательности.
Не забываем надеть разъем датчика АБС, поправить тросик ручника и несколько раз интенсивно поработать ручником, чтобы взбодрить механизм доводчика.

На этом все.
Good bye!

 

FAQ - [Фотоотчет] Замена передних тормозных колодок

Давеча менял передние тормозные колодки. Мои откатали 67 тысяч.

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


Наконец-то прикупил себе полу-проф. домкрат фирмы Airline, кстати рекомендую бренд - достаточно качественный Китай с большим ассортиментом. Домкрат неподъемный - 29 кг. Чисто гаражный вариант, зато устойчивость и удобство сумасшедшие.


Процедура замены колодок незамысловата. Для разборки системы нужно снять пружинный элемент, открутить шестигранником "на 7" направляющие пальцы и вытащить суппорт из скобы.


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


С помощью специального инструмента задавливаем поршень внутрь цилиндра, заранее очистив от грязи пыльник и контролируя уровень тормозной жидкости в бачке, кабы чего не вышло (например перелива).


Очищаем всю систему (суппорт и скобу) металлической щеткой от грязи и продуктов износа (с одной стороны они препятствуют теплоотводу, с другой стороны забивают зазоры и мешают нормальному перемещению колодок). Новые колодки на своем месте - Ferrodo FDB1641.


Все места по которым перемещаются колодки стоит смазать высокотемпературной противоскрипной смазкой. Ну кроме дисков, конечно. Использовал Liqui Moly. По уму пальцы нужно смазывать спец. смазкой, но к своему стыду после начала работы так и не смог найти в гараже необходимый тюбик Textar Ceratec. Вообще для смазки пальцев, которые ходят в резиновых направляющих, рекомендуется использовать силиконовые высокотемпературные смазки.
Дальнейшая сборка сложности не представляет.


Старший Механик за работой. Не будем ему мешать.


Я был бы не я, если бы перед установкой нового комплекта колодок не проточил диск от буртиков и неровностей.


Точили вот такой приспособой. Маленький токарный станочек, закрепляемый вместо скобы суппорта.
К слову, минимальная толщина диска 22 мм. У меня сейчас 23 на обоих сторонах- на следующей замене колодок придется раскошелиться на новые диски.


Случайно, после работы, заглянул в заднюю подвеску.
Oh, Shit Happens! Где мои резиновые упоры?


И вот еще что напоследок.
Напоминаю всем любителям крутить гайки.
Перед вами два инструмента: "трещотка" и вороток. Они по назначению существенно отличаются.
Вороток предназначен для силовых работ - сорвать или затянуть нужный болт или гайку. При необходимости удлиняется рычагом (трубой).
"Трещотка" предназначена для текущих работ по откручиванию и не окончательному затягиванию.
И только так. Срывать или дотягивать болты "трещоткой" - занятие не умное, так как может привести к скорой гибели не предназначенного для таких работ инструмента.


Всем спасибо и до новых встреч!

 

Замена передних тормозных колодок Фольксваген Кадди

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

Смотреть все фото новости >>

Как заменить тормозные колодки на Volkswagen Caddy?

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

Поэтому, прежде чем приступить к замене, необходимо позаботиться о покупке качественного комплекта, в том числе на автомобиль Volkswagen Caddy. Где приобрести комплектующие и как заменить тормозные колодки на Volkswagen Caddy, об этом ниже.

Три пути решения вопроса

 
Приобрести запчасти на Фольксваген Кадди можно на автомобильном рынке. Да, это место словно магнит, притягивает к себе низкими ценами. Однако, именно на рынке, можно купить под видом оригинальных запасных частей дешёвую подделку.

Обращаться в специализированный сервисный центр – это гарантия приобретения оригинальных деталей. Но, цена не каждому водителю по карману. Где же эта золотая середина? Где мирно уживаются цена и качество?

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

О преимуществах уже знакомым многим интернет-магазинов

 
Прежде всего, нам с вами уже не нужно тратить своё личное время на поиск продавцов, гоняясь за ними по всему городу. Достаточно открыть ноутбук или любимый гаджет, зайти в интернет и просмотреть предложения виртуальных продавцов. У каждого продвинутого продавца есть каталог запчастей на Volkswagen Caddy.

Зайдя на страницу магазина по ссылке dniprobus.com.ua/po-brendam/volkswagen/caddy/, можно самостоятельно подобрать интересующий вас товар, используя определённую систему поиска как-то:

● VIN код производителя;
● наименование запчастей;
● классификацию;
● производителя;
● по толщине, ширине и высоте продукции.

Важным аспектом выбора является наличие цены рядом с фотографией товара и краткое описание продукта. Удобно, несомненно. Каталог запчастей на Фольксваген Кадди даёт нам с вами возможность выбора того или иного производителя на определённых условиях.

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

Маленькие, но, очень действенные дополнительные услуги интернет-магазинов

 
С целью привлечения новых потенциальных покупателей интернет-магазины осуществляют адресную доставку товара. Это значит, что купить запчасти на Кадди может любой желающий не зависимо от его места проживания. Достаточно оформить заказ, и указать адрес доставки. Магазин самостоятельно и/или с помощью специальных транспортных служб отправит товар по назначению.

Ещё одна фишка виртуальных продавцов: оплачивать запчасти на Caddy и другую продукцию, можно по поступлению товара в ваш адрес. То есть, не нужно делать предоплату, которой мы боимся (вдруг обманут). Мы можем, получив товар, убедиться в

Как поменять передние тормозные колодки Фольксваген Кадди

avtorin

143 Просмотров0 Лайк

avtorin

94 Просмотров0 Лайк

avtorin

206 Просмотров0 Лайк

avtorin

31 Просмотров0 Лайк

avtorin

52 Просмотров0 Лайк

avtorin

57 Просмотров0 Лайк

avtorin

43 Просмотров0 Лайк

avtorin

34 Просмотров0 Лайк

avtorin

14 Просмотров0 Лайк

avtorin

98 Просмотров0 Лайк

avtorin

33 Просмотров0 Лайк

avtorin

77 Просмотров0 Лайк

Обновление до Caddy 2 - Документация Caddy

Caddy 2 - это совершенно новая кодовая база, написанная с нуля для улучшения Caddy 1. Caddy 2 не имеет обратной совместимости с Caddy 1. Но не волнуйтесь, для большинства базовых настроек мало что отличается. Это руководство поможет вам максимально упростить переход.

Это руководство не будет углубляться в новые доступные функции - которые, кстати, действительно крутые, вы должны их изучить - цель здесь - просто быстро научить вас работать с Caddy 2.

Старшие биты

Ступени

  1. Познакомьтесь с Caddy 2, выполнив наше руководство по началу работы.
  2. Выполните шаг 1, если вы еще этого не сделали. Серьезно - мы не можем подчеркнуть, насколько важно хотя бы знать, как использовать Caddy 2. (Это веселее!)
  3. Используйте приведенное ниже руководство для перехода к вашей команде (командам) caddy .
  4. Используйте приведенное ниже руководство для переноса файла Caddyfile.
  5. Протестируйте новую конфигурацию локально или в промежуточном режиме.
  6. Тест, тест, снова тест
  7. Развертывайте и получайте удовольствие!

HTTPS и порты

Порт по умолчанию

Caddy больше не : 2015 . Порт Caddy 2 по умолчанию - : 443 или, если имя хоста / IP неизвестен, порт : 80 . Вы всегда можете настроить порты в своем config.

Протокол

Caddy 2 по умолчанию - всегда HTTPS, если известно имя хоста или IP. Это отличается от Caddy 1, где только общедоступные домены по умолчанию использовали HTTPS.Теперь на каждом сайте использует HTTPS (если вы не отключите его, явно указав порт : 80 или http: // ).

Для

IP-адресов и доменов localhost будут выданы сертификаты от локально доверенного встроенного центра сертификации. Все остальные домены будут использовать Let's Encrypt. (Все это настраивается.)

Изменилась структура хранения сертификатов и ресурсов ACME. Caddy 2, вероятно, получит новые сертификаты для ваших сайтов; но если у вас много сертификатов, вы можете перенести их вручную, если это не поможет вам.Подробности см. В проблемах № 2955 и № 3124.

Командная строка

Команда caddy теперь называется caddy run .

Все флаги командной строки разные. Удалить их; Вся конфигурация сервера теперь существует в фактическом документе конфигурации (обычно Caddyfile или JSON). Вы, вероятно, найдете то, что вам нужно, в структуре JSON или в глобальных параметрах Caddyfile, чтобы заменить большинство флагов командной строки из v1.

Команда типа caddy -conf ../Caddyfile будет преобразована в caddy run --config../Caddyfile .

Как и раньше, если ваш Caddyfile находится в текущей папке, Caddy найдет и использует его автоматически; в этом случае вам не нужно использовать флаг --config .

Сигналы в основном такие же, за исключением того, что USR1 и USR2 больше не поддерживаются. Вместо этого используйте команду caddy reload или API для загрузки новой конфигурации.

Запуск caddy без какой-либо конфигурации, используемый для запуска простого файлового сервера. Эквивалент в Caddy 2 - это файловый сервер caddy .

Переменные среды больше не актуальны, за исключением HOME (и, необязательно, любых установленных вами переменных XDG_ * ). CADDYPATH заменен условными обозначениями ОС.

Caddyfile

Caddyfile v2 очень похож на то, с чем вы уже знакомы. Главное, что вам нужно сделать, это изменить свои директивы.

⚠️ Обязательно ознакомьтесь с новыми директивами! Особенно, если ваша конфигурация более продвинутая, здесь нужно учесть множество нюансов.Эти советы помогут вам переключиться в основном довольно быстро, но, пожалуйста, прочтите полную документацию по каждой директиве, чтобы вы могли понять последствия обновления. И, конечно же, всегда тщательно проверяйте свои конфиги, прежде чем запускать их в производство.

Основные изменения

Здесь мы перечислим некоторые из наиболее распространенных директив v1 и опишем, как их преобразовать для использования в Caddyfile v2.

⚠️ Тот факт, что директива v1 отсутствует на этой странице, не означает, что v2 не может этого сделать! Некоторые директивы v1 не нужны, плохо переводятся или выполняются другими способами в v2. Для некоторых расширенных настроек вам может потребоваться раскрыться до JSON, чтобы получить то, что вы хотите. Изучите нашу документацию, чтобы найти то, что вам нужно!

базикаут

Базовая аутентификация HTTP по-прежнему настроена с помощью директивы basicauth . Однако конфигурация Caddy 2 не принимает пароли в виде открытого текста.Вы должны хешировать их, с чем может помочь хэш-пароль caddy .

  базикаут / секрет / Иккинг Боба  
 basicauth / secret / * { Боб JDJhJDEwJEVCNmdaNEg2Ti5iejRMYkF3MFZhZ3VtV3E1SzBWZEZ5Q3VWc0tzOEJwZE9TaFlZdEVkZDhX } 

просмотреть

Просмотр файлов теперь включен с помощью директивы file_server .

  просмотреть / подпапка /  
 file_server / subfolder / * просмотр 

ошибок

Пользовательские страницы ошибок могут быть выполнены с помощью handle_errors .

  ошибок { 404 404.html 500 500.html }  
  handle_errors { перезаписать * /{http.error.status_code}.html файловый сервер }  

доб

Подразумеваемые расширения файлов могут быть выполнены с помощью try_files .

fastcgi

Предполагая, что вы обслуживаете PHP, эквивалент v2 - php_fastcgi .

  fastcgi / localhost: 9005 php  
 php_fastcgi локальный хост: 9005 

Обратите внимание, что директива fastcgi из v1 многое сделала «под капотом», включая проверку файлов на диске, перезапись запросов и даже перенаправление. Директива v2 php_fastcgi также делает это за вас, но в документации приводится ее расширенная форма, которую вы можете изменить, если ваши требования отличаются.

В версии 2 не требуется предустановки php , поскольку директива php_fastcgi предполагает использование PHP по умолчанию.Строка, например php_fastcgi 127.0.0.1:9000 php , заставит обратный прокси-сервер думать, что есть второй бэкэнд с именем php , что приведет к ошибкам подключения.

Поддирективы в v2 другие - для PHP они, вероятно, не понадобятся.

gzip

Одна директива encode теперь используется для всех кодировок ответов, включая несколько форматов сжатия.

  gzip  
 кодировать gzip 

Интересный факт: Caddy 2 также поддерживает zstd (но пока еще не поддерживает браузеры).

В основном без изменений, но теперь намного мощнее, поскольку может выполнять замену подстрок в v2.

  заголовок / Strict-Transport-Security max-age = 31536000;  
 заголовок Strict-Transport-Security max-age = 31536000; 

журнал

Разрешает регистрацию доступа; директива log по-прежнему может использоваться в версии 2, но все журналы по умолчанию структурированы и закодированы как JSON.

Рекомендуемый способ включить ведение журнала доступа:

 журнал 

, который отправляет структурированные журналы в stderr.(Вы также можете передать в файл или сетевой сокет; см. Документацию.)

Хотя мы рекомендуем всем использовать структурированное ведение журнала, вы все равно можете записать общий формат журнала (CLF) в файл, если необходимо:

  журнал access.log  
 журнал { выходной файл access.log формат single_field common_log } 

Но мы рекомендуем это только для перехода, когда ваши устаревшие системы все еще требуют CLF.

прокси

Эквивалент v2: reverse_proxy .

Заметные изменения подкаталогов: header_upstream и header_downstream стали header_up и header_down соответственно; а подкаталоги, связанные с балансировкой нагрузки, имеют префикс lb_ .

Еще одно существенное отличие состоит в том, что прокси v2 по умолчанию передает все входящие заголовки (включая заголовок Host ) и устанавливает заголовок X-Forwarded-For . Другими словами, «прозрачный» режим v1 в основном используется по умолчанию в v2 (но если вам нужны другие заголовки, такие как X-Real-IP, вы должны установить их самостоятельно).Вы по-прежнему можете переопределить / настроить заголовок Host с помощью подкаталога header_up .

Прокси-сервер Websocket "просто работает" в v2; нет необходимости «включать» веб-сокеты, как в v1.

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

  прокси / localhost: 9005  
 reverse_proxy локальный: 9005 

редир

Без изменений, за исключением некоторых деталей о необязательном аргументе кода состояния.В большинство конфигураций вносить изменения не нужно.

перепишите

Немного изменилась семантика перезаписи запроса («внутреннее перенаправление»). Если вы использовали так называемый «хак перезаписи» в версии 1 как способ сопоставления запросов с чем-то другим, кроме простого префикса пути, в версии 2 это совершенно не нужно.

Новая директива rewrite очень проста, но очень эффективна, так как большая часть ее сложности обрабатывается сопоставителями в v2:

  rewrite { если {> User-Agent} имеет мобильный на / мобильный {uri} }  
 @mobile { заголовок User-Agent * mobile * } переписать @mobile / mobile {uri} 

Обратите внимание, как мы просто используем обычные токены сопоставления Caddy 2; это больше не особый случай для этой директивы.

Начните с удаления всех хаков перезаписи; вместо этого превратите их в именованные сопоставители. Оцените каждую перезапись версии 1 , чтобы увидеть, действительно ли она нужна в версии 2. Подсказка: Caddyfile v1, в котором используется перезаписать для добавления префикса пути, а затем прокси с без для удаления того же префикса, является хаком перезаписи и может быть удален.

Вы можете найти новые директивы route и handle полезными для большего контроля над расширенной логикой маршрутизации.

корень

Без изменений, но если ваш корневой путь начинается с /, вам нужно добавить токен сопоставления * , чтобы отличить его от сопоставителя пути.

Поскольку он принимает сопоставление в версии 2, это означает, что вы также можете изменить корень сайта в зависимости от запроса.

Не забудьте добавить директиву file_server , если обслуживаете статические файлы, поскольку Caddy 2 не предполагает этого по умолчанию, тогда как в v1 она всегда была включена.

статус

Эквивалент v2: response , который также может записывать тело ответа.

  статус 404 / секреты /  
 ответить / секреты / * 404 

шаблоны

Общий синтаксис директивы templates не изменился, но фактические действия / функции шаблона отличаются и значительно улучшены. Например, шаблоны могут включать файлы, разметку рендеринга, выполнение внутренних подзапросов, синтаксический анализ основного материала и многое другое!

Подробности о новых функциях см. В документации.

TLS

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

Но автоматическая HTTPS-логика Caddy изменилась на , так что имейте это в виду!

Имена наборов шифров также изменились.

Обычная конфигурация в Caddy 2 - использовать tls internal , чтобы он обслуживал локально доверенный сертификат для имени хоста разработчика, которое не является localhost или IP-адресом.

Большинству сайтов эта директива вообще не нужна.

Служебные файлы

Мы рекомендуем использовать один из наших официальных служебных файлов для развертываний Caddy.

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

Подробные сведения см. В инструкциях по установке.

Плагины

Плагины, написанные для v1, автоматически не совместимы с v2. Многие плагины v1 даже не нужны в v2. С другой стороны, v2 намного легче расширяемо и гибко, чем v1!

Если вы хотите написать плагин для Caddy 2, узнайте, как написать модуль Caddy.

Building Caddy 2 с плагинами

Caddy 2 (пока) не имеет общедоступного сервера сборки и интерактивной страницы загрузки, как у v1.Мы над этим работаем. А пока наш конструктор может оказаться полезным. Он просто автоматизирует инструкции в файле main.go Caddy.

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

Получение помощи

Если вы не можете заставить Caddy работать, пожалуйста, сначала просмотрите наш веб-сайт для поиска документации. Найдите время, чтобы попробовать что-то новое и понять, что происходит - v2 очень отличается от v1 во многих отношениях (но также очень знакомо)!

Если вам все еще нужна помощь, присоединяйтесь к нашему сообществу! Вы можете обнаружить, что помощь другим - лучший способ помочь себе.

.

Начало работы - Caddy Documentation

Добро пожаловать в Кэдди! В этом руководстве будут изучены основы использования Caddy и вы познакомитесь с ним на высоком уровне.

Цели:

Предварительные требования:


Если вы установили Caddy из диспетчера пакетов, Caddy уже может быть запущен как служба.Если это так, пожалуйста, остановите службу перед выполнением этого руководства.

Начнем с запуска:

  тележка  

Ой; без подкоманды команда caddy отображает только текст справки. Вы можете использовать это в любое время, когда забываете, что делать.

Чтобы запустить Caddy как демон, используйте подкоманду run :

  caddy run  
Запустить демон

Это блокирует навсегда, но что он делает? На данный момент ... ничего.По умолчанию конфигурация Caddy ("config") пуста. Мы можем проверить это с помощью административного API в другом терминале:

  локальный локальный локальный объект: 2019 / config /  
Попробуйте API

. Мы можем сделать Caddy полезным, предоставив ему конфигурацию. Это можно сделать разными способами, но мы начнем с запроса POST к конечной точке / load с использованием curl в следующем разделе.

Ваша первая конфигурация

Чтобы подготовить наш запрос, нам нужно сделать config. По сути, конфигурация Caddy - это просто документ JSON.

Сохраните это в файл JSON:

 { "Программы": { "http": { "серверы": { "пример": { "слушай": [": 2015"], "маршруты": [ { "ручка": [{ "обработчик": "static_response", "body": "Привет, мир!" }] } ] } } } } } 
Вам не нужно использовать файлы для настройки. API администратора всегда можно использовать без файлов, что удобно при автоматизации.

Затем загрузите его:

  локальный локальный локальный объект: 2019 / загрузка \ -X POST \ -H "Content-Type: application / json" \ -d @caddy.json  
Дайте Кэдди конфигурацию

Мы можем проверить, что Кэдди применила нашу новую конфигурацию с другим запросом GET:

  локальный локальный локальный объект: 2019 / config /  

Проверьте, работает ли он, перейдя на localhost: 2015 в браузере или используя curl :

  локальный локальный локальный объект: 2015 Привет мир!  

Если вы видите Привет, мир! , то поздравляю - работает! Всегда полезно убедиться, что ваша конфигурация работает так, как вы ожидаете, особенно перед развертыванием в производственной среде.

Тестовая конфигурация

Ваш первый Caddyfile

Это было вроде много работы только для Hello World.

Другой способ настройки Caddy - это Caddyfile . Та же самая конфигурация, которую мы написали в JSON выше, может быть выражена просто как:

: 2015 ответить "Привет, мир!" 

Сохраните это в файл с именем Caddyfile (без расширения) в текущем каталоге.

Создайте файл Caddyfile

Stop Caddy, если он уже запущен (Ctrl + C), затем запустите:

  приспособление для кэдди  

Или если вы сохранили файл Caddy в другом месте или назвали его иначе, чем Caddyfile :

  caddy Adapt --config / путь / к / файлу caddy  

Вы увидите вывод в формате JSON! Что здесь случилось?

Мы только что использовали адаптер конфигурации для преобразования нашего файла Caddyfile в собственную структуру JSON Caddy.

Используйте адаптер конфигурации

. Хотя мы можем взять этот вывод и сделать еще один запрос API, мы можем пропустить все эти шаги, потому что команда caddy может сделать это за нас. Если в текущем каталоге есть файл с именем Caddyfile и никакая другая конфигурация не указана, Caddy загрузит файл Caddy, адаптирует его для нас и сразу же запустит.

Теперь, когда в текущей папке есть Caddyfile, давайте снова выполним caddy run :

  caddy run  

Или, если ваш Caddyfile находится где-то еще:

  caddy run --config / путь / к / caddyfile  

(Если он называется чем-то еще, что не начинается с "Caddyfile", вам нужно будет указать --adapter caddyfile .)

Теперь вы можете попробовать загрузить свой сайт еще раз, и вы увидите, что он работает!

Начните с начальной конфигурации

Как видите, есть несколько способов запустить Caddy с начальной конфигурацией:

JSON против Caddyfile

Теперь вы знаете, что файл Caddyfile просто конвертирован в JSON для вас.

Caddyfile кажется проще, чем JSON, но нужно ли всегда его использовать? У каждого подхода есть свои плюсы и минусы. Ответ зависит от ваших требований и варианта использования.

JSON Caddyfile
Полный набор функций Caddy Наиболее распространенные части функциональности Caddy
Легко генерировать Легко изготовить вручную
Легко программируемый Сложно автоматизировать
Чрезвычайно выразительный Умеренно выразительный
Разрешает обход конфигурации Невозможно пройти в Caddyfile
Частичные изменения конфигурации Только изменения всей конфигурации
Возможен экспорт Невозможно экспортировать
Совместимость со всеми конечными точками API Совместимость с некоторыми конечными точками API
Документация создается автоматически Документация рукописная
Повсеместно Ниша
Более эффективный Более вычислительная
Вид расточки Вид удовольствия
Подробнее: структура JSON Подробнее: Caddyfile docs

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

Важно отметить, что и JSON, и Caddyfile (и любой другой поддерживаемый адаптер конфигурации) могут использоваться с API Caddy. Однако вы получаете полный набор функций Caddy и функций API, если используете JSON. При использовании адаптера конфигурации единственный способ загрузить или изменить конфигурацию с помощью API - это конечная точка / load.

Сравните JSON и Caddyfile

API с файлами конфигурации

Под капотом даже файлы конфигурации проходят через конечные точки API Caddy; команда caddy просто завершает эти вызовы API за вас.

Вы также захотите решить, будет ли ваш рабочий процесс на основе API или интерфейса командной строки. (Вы можете использовать и API, и файлы конфигурации на одном сервере, но мы не рекомендуем это делать: лучше иметь один источник правды.)

API Файлы конфигурации
Внесение изменений в конфигурацию с помощью HTTP-запросов Внесите изменения в конфигурацию с помощью команд оболочки
Легко масштабировать Сложно масштабировать
Сложно управлять вручную Легко управлять вручную
Действительно весело Также весело
Подробнее: API Подробнее: Учебник по Caddyfile
Управление конфигурацией сервера вручную с помощью API полностью возможно с помощью соответствующих инструментов, например, любого клиентского приложения REST.

Выбор API или рабочего процесса файла конфигурации ортогонален использованию адаптеров конфигурации: вы можете использовать JSON, но сохранить его в файле и использовать интерфейс командной строки; и наоборот, вы также можете использовать Caddyfile с API.

Но большинство людей будут использовать комбинации JSON + API или Caddyfile + CLI.

Как видите, Caddy хорошо подходит для самых разных сценариев использования и развертываний!

Сравните файлы API и конфигурации

Запуск, остановка, запуск

Поскольку Caddy - это сервер, он работает бесконечно.Это означает, что ваш терминал не будет разблокирован после выполнения caddy run , пока процесс не будет завершен (обычно с помощью Ctrl + C).

Хотя caddy run является наиболее распространенным и обычно рекомендуется (особенно при создании системной службы!), Вы также можете использовать caddy start для запуска Caddy и запустить его в фоновом режиме:

  caddy start  

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

Затем вам придется остановить процесс самостоятельно, поскольку Ctrl + C не остановит его за вас:

  упор для тележки  

Или используйте конечную точку / stop API.

Запуск в фоновом режиме

Перезагрузка конфигурации

Ваш сервер может выполнять перезагрузку / изменение конфигурации без простоев.

Все конечные точки API, которые загружают или изменяют конфигурацию, работают плавно с нулевым временем простоя.

Однако при использовании командной строки может возникнуть соблазн использовать Ctrl + C, чтобы остановить сервер, а затем перезапустить его снова, чтобы получить новую конфигурацию.Не делайте этого: остановка и запуск сервера ортогональны изменениям конфигурации и приведут к простою.

Остановка сервера приведет к его отключению.

Вместо этого используйте команду caddy reload для постепенного изменения конфигурации:

  перезагрузка кэдди  

Это фактически просто использует API под капотом. Он загрузит и, при необходимости, адаптирует ваш файл конфигурации к JSON, а затем аккуратно заменит активную конфигурацию без простоя.

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

Технически новая конфигурация запускается до остановки старой, поэтому на короткое время работают обе конфигурации! Если новая конфигурация терпит неудачу, она прерывается с ошибкой, а старая просто не останавливается. Перезагрузка конфигурации с нулевым временем простоя.

Caddyfile Tutorial - Документация Caddy

Это руководство научит вас основам HTTP Caddyfile, чтобы вы могли быстро и легко создавать красивые функциональные конфигурации сайта.

Цели:

Предварительные требования:


Создайте новый текстовый файл с именем Caddyfile (без расширения).

Первое, что вы должны ввести, это адрес вашего сайта:

 локальный 
Если порты HTTP и HTTPS (80 и 443 соответственно) являются привилегированными портами в вашей ОС, вам нужно будет либо работать с повышенными привилегиями, либо использовать порт более высокого уровня. Чтобы использовать порт более высокого уровня, просто измените адрес на что-то вроде localhost: 2015 и измените порт HTTP с помощью параметра http_port Caddyfile.

Затем нажмите Enter и введите то, что вы хотите. Для этого урока сделайте так, чтобы ваш Caddyfile выглядел так:

 локальный ответить "Привет, мир!" 

Сохраните это и запустите Caddy (поскольку это учебное пособие, мы будем использовать флаг --watch , чтобы изменения в нашем Caddyfile применялись автоматически):

  caddy run - часы  
Если вы получаете ошибки с разрешениями, попробуйте использовать порт более высокого уровня в своем адресе (например, localhost: 2015 ) и измените порт HTTP или запустите с повышенными привилегиями.

В первый раз вам будет предложено ввести пароль. Это сделано для того, чтобы Caddy мог обслуживать ваш сайт по HTTPS.

Caddy обслуживает все сайты по HTTPS по умолчанию, если хост или IP-адрес являются частью адреса сайта. Автоматический HTTPS можно отключить, явно указав в адресе префикс http: // . Первый сайт

Откройте localhost в своем браузере и посмотрите, как работает ваш веб-сервер с HTTPS!

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

Это не особенно интересно, поэтому давайте изменим наш статический ответ на файловый сервер с включенными списками каталогов:

 локальный file_server просмотр 

Сохраните файл Caddyfile, затем обновите вкладку браузера. Вы должны увидеть либо список файлов, либо HTML-страницу, если в текущем каталоге есть индексный файл.

Статический файловый сервер

Добавление функций

Давайте сделаем кое-что интересное с нашим файловым сервером: предоставим шаблонную страницу. Создайте новый файл и вставьте в него:

     Учебник по Кэдди    Страница загружена в: {{сейчас | date "Пн 2 января 15:04:05 MST 2006"}}   

Сохранить как caddy.html в текущем каталоге и загрузите его в свой браузер: https: //localhost/caddy.html

Вывод:

  Страница загружена в: {{сейчас | date "Пн 2 января 15:04:05 MST 2006"}}  

Погодите. Мы должны увидеть сегодняшнюю дату. Почему не сработало? Это потому, что сервер еще не настроен для оценки шаблонов! Легко исправить, просто добавьте строку в Caddyfile, чтобы она выглядела так:

 локальный шаблоны file_server просмотр 

Сохраните это, затем перезагрузите вкладку браузера.Вы должны увидеть:

  Страница загружена в: Чт, 19 ноября, 15:32:58 UTC 2020  

С модулем шаблонов Caddy вы можете делать много полезных вещей со статическими файлами, например, включать другие HTML-файлы, делать подзапросы, устанавливать заголовки ответов, работать со структурами данных и многое другое!

Шаблоны

Рекомендуется сжимать ответы с помощью быстрого и современного алгоритма сжатия. Давайте включим поддержку Gzip и Zstandard с помощью директивы encode :

 локальный закодировать zstd gzip шаблоны file_server просмотр 
Браузеры пока не поддерживают кодировки Zstandard.Надеюсь, скоро! Сжатие

Это базовый процесс для создания и запуска полу-продвинутого, готового к работе сайта!

Когда вы будете готовы включить автоматический HTTPS, просто замените адрес своего сайта ( localhost в нашем руководстве) своим доменным именем. Дополнительную информацию см. В нашем кратком руководстве по HTTPS.

Несколько сайтов

С нашим текущим файлом Caddyfile у нас может быть только одно определение сайта! Только первая строка может быть адресом (а) сайта, а затем весь остальной файл должен быть директивами для этого сайта.

Но это легко сделать, чтобы мы могли добавлять больше сайтов!

Наш Caddyfile на данный момент:

 локальный закодировать zstd gzip шаблоны file_server просмотр 

эквивалентно этому:

 localhost { закодировать zstd gzip шаблоны file_server просмотр } 

, кроме второго, позволяет добавлять больше сайтов.

Заключив блок нашего сайта в фигурные скобки {} , мы можем определить несколько разных сайтов в одном и том же файле Caddyfile.

Например:

: 8080 { ответить "Я 8080" } : 8081 { ответить "Я 8081" } 

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

Для нескольких сайтов с одинаковой конфигурацией вы можете добавить больше адресов, например:

: 8080,: 8081 { ... } 

Затем вы можете определить столько разных сайтов, сколько захотите, при условии, что каждый адрес уникален.

Несколько сайтов

Сопоставители

Мы можем применить некоторые директивы только к определенным запросам.Например, предположим, что мы хотим иметь и файловый сервер, и обратный прокси, но мы, очевидно, не можем делать и то, и другое при каждом запросе! Либо файловый сервер запишет статический файл, либо обратный прокси-сервер будет передавать запрос бэкэнду.

Этот конфиг не будет работать так, как мы хотим:

 локальный файловый сервер reverse_proxy 127.0.0.1:9005 

На практике мы можем захотеть использовать обратный прокси только для запросов API, то есть запросов с базовым путем / api / .Это легко сделать, добавив токен сопоставления:

 локальный файловый сервер reverse_proxy / api / * 127.0.0.1:9005 

Там; теперь обратный прокси будет иметь приоритет для всех запросов, начиная с / api / .

Только что добавленный токен / api / * называется совпадающим токеном . Вы можете сказать, что это токен сопоставления, потому что он начинается с косой черты / и появляется сразу после директивы (но вы всегда можете посмотреть его в документации директивы, чтобы быть уверенным).

Матчеры действительно мощные. Вы можете назвать сопоставители и использовать их, например, @name , чтобы сопоставить не только путь запроса! Прежде чем продолжить, узнайте больше о сопоставителях!

Сопоставители

Переменные среды

Адаптер Caddyfile позволяет заменять переменные среды перед анализом файла Caddyfile.

Сначала установите переменную среды (в той же оболочке, в которой работает Caddy):

  экспорт SITE_ADDRESS = localhost: 9055  

Тогда вы можете использовать это как это в Caddyfile:

 {$ SITE_ADDRESS} файловый сервер 

Перед тем как Caddyfile будет проанализирован, он будет расширен до:

 локальный: 9055 файловый сервер 

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

Переменные среды

И последнее, что вы найдете наиболее полезным: если вы хотите отметить или отметить что-либо в своем Caddyfile, вы можете использовать комментарии, начиная с # :

 # это запускает комментарий 
Комментарии

Дополнительная литература

.

Caddyfile Concepts - Документация Caddy

Этот документ поможет вам подробно узнать о HTTP Caddyfile.

  1. Структура
  2. Адреса
  3. Матчеры
  4. Заполнители
  5. Фрагменты
  6. Комментарии
  7. Переменные среды
  8. Глобальные опции

Конструкция

Структуру Caddyfile можно описать визуально:

Ключевые точки:

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

Блоки

Открытие и закрытие блока выполняется с помощью фигурных скобок:

  ... { ... }  

Когда есть только один блок сайта, фигурные скобки (и отступы) необязательны. Это сделано для удобства быстрого определения одного сайта, например, это:

 локальный обратный_прокси / api / * локальный: 9001 файловый сервер 

эквивалентно:

 localhost { обратный_прокси / api / * локальный: 9001 файловый сервер } 

, когда у вас только один блок сайта; это вопрос предпочтений.

Чтобы настроить несколько сайтов с одним и тем же файлом Caddyfile, необходимо использовать фигурные скобки вокруг каждого из них, чтобы разделить их конфигурации:

 example1.com { корень * /www/example.com файловый сервер } example2.com { reverse_proxy локальный: 9000 } 

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

Директивы

Директивы - это ключевые слова, которые настраивают способ обслуживания сайта.Например, полная конфигурация файлового сервера может выглядеть так:

 локальный файловый сервер 

Или обратный прокси:

 локальный reverse_proxy локальный: 9000 

В этих примерах file_server и reverse_proxy являются директивами. Директивы - это первое слово в строке в блоке сайта.

Во втором примере localhost: 9000 - это аргумент , потому что он появляется в той же строке после директивы.

Поддирективы могут появляться в блоках директив:

 локальный reverse_proxy localhost: 9000 localhost: 9001 { сначала lb_policy } 

Здесь lb_policy является подкаталогом reverse_proxy (он устанавливает политику балансировки нагрузки для использования между бэкэндами).

Токены и котировки

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

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

Директива
 abc def 

Это могло быть проблематично и возвращать ошибки или неожиданное поведение.

Если abc def должно быть значением одного аргумента, его необходимо указать в кавычках:

Директива
 «abc def» 

Цитаты могут быть экранированы, если вам нужно использовать кавычки и в цитируемых токенах:

 директива "\" abc def \ "" 

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

Вы также можете использовать обратную кавычку ` для цитирования токенов:

 директива `" foo bar "` 

Строки обратных апострофов удобны, когда токены содержат литералы кавычек, например Текст JSON.

Адреса

Адрес всегда появляется в верхней части блока сайта и обычно является первым в Caddyfile.

Примеры действительных адресов:

Автоматический HTTPS включен, если адрес вашего сайта содержит имя хоста или IP-адрес. Однако это поведение является чисто неявным, поэтому оно никогда не отменяет явную конфигурацию. Например, если адрес сайта http: // example.com , автоматический HTTPS не будет активирован, потому что схема явно http: // .

По адресу Caddy потенциально может определить схему, хост, порт и путь вашего сайта.

Если вы укажете имя хоста, будут обрабатываться только запросы с соответствующим заголовком Host. Другими словами, если адрес сайта - localhost , то Caddy не будет соответствовать запросам на 127.0.0.1 .

Подстановочные знаки ( * ) могут использоваться, но только для представления точно одной метки имени хоста.Например, * .example.com соответствует foo.example.com , но не foo.bar.example.com , а * соответствует localhost , но не example.com . Чтобы перехватить все хосты, опустите часть адреса, содержащую хост.

Если несколько сайтов имеют одно и то же определение, вы можете перечислить их все вместе:

 localhost: 8080, example.com, www.example.com 

или

 локальный: 8080, example.com, www.example.com 

Обратите внимание, как запятые указывают на продолжение адресов.

Адрес должен быть уникальным; нельзя указывать один и тот же адрес более одного раза.

Матчеры

По умолчанию директива, внедряющая обработчик HTTP, применяется ко всем запросам (если иное не указано в документации).

Устройства сопоставления запросов могут использоваться для классификации запросов по заданным критериям. Эта концепция проистекает из базовой структуры JSON, и важно знать, как использовать их в Caddyfile. С помощью сопоставителей вы можете точно указать, к каким запросам применяется определенная директива.

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

 корень * / var / www # токен сопоставления: * root /index.html / var / www # токен сопоставления: /index.html root @post / var / www # токен сопоставления: @post 

Жетоны сопоставления можно полностью опустить для соответствия всем запросам; например, * указывать не нужно, если следующий аргумент не похож на сопоставление пути.

Прочтите страницу о сопоставителях запросов, чтобы узнать больше.

Заполнители

Вы можете использовать любые заполнители Caddy в Caddyfile, но для удобства вы также можете использовать некоторые эквивалентные сокращения:

Сокращение Заменяет
{dir} {http.request.uri.path.dir}
{файл} {http.request.uri.path.file}
{header. *} {http.request.header. *}
{host} {http.request.host}
{label. *} {http.request.host.labels. *}
{hostport} {http.request.hostport}
{порт} {http.request.port}
{метод} {http.request.method}
{path} {http.request.uri.path}
{path. *} {http.request.uri.path. *}
{запрос} {http.request.uri.query}
{query. *} {http.request.uri.query. *}
{re. *. *} {http.regexp. *. *}
{удаленный} {http.request.remote}
{remote_host} {http.request.remote.host}
{remote_port} {http.request.remote.port}
{схема} {http.request.scheme}
{uri} {http.request.uri}
{tls_cipher} {http.request.tls.cipher_suite}
{tls_version} {http.request.tls.version}
{tls_client_fingerprint} {http.request.tls.client.fingerprint}
{tls_client_issuer} {http.request.tls.client.issuer}
{tls_client_serial} {http.request.tls.client.serial}
{tls_client_subject} {http.request.tls.client.subject}

Фрагменты

Вы можете определить специальные блоки, называемые сниппетами, дав им имя в круглых скобках:

 (перенаправление) { @http { протокол http } redir @http https: // {host} {uri} } 

И затем вы можете повторно использовать это где угодно:

 перенаправление импорта 

Директива import также может использоваться для включения других файлов вместо нее.Как особый случай, он может появляться практически в любом месте файла Caddyfile.

Комментарии начинаются с # и продолжаются до конца строки:

 # Комментарии могут начинать строку директива # или перейти в конец 

Символ решетки # не может появляться в середине токена (т.е. ему должен предшествовать пробел или он должен появляться в начале строки). Это позволяет использовать хэши в URI или других значениях без необходимости использования кавычек.

Переменные среды

Если ваша конфигурация зависит от переменных среды, вы можете использовать их в Caddyfile:

 {$ SITE_ADDRESS} 

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

Если вы хотите отложить замену переменной среды до времени выполнения, вы можете использовать стандартные заполнители {env. *} .

Глобальные опции

Caddyfile может необязательно начинаться со специального блока без ключей, называемого блоком глобальных опций:

 { ... } 

Если присутствует, это должен быть самый первый блок в конфигурации.

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

Узнайте больше о блоке глобальных опций.

.

The Caddyfile - Документация Caddy

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

Это выглядит так:

 example.com корень * / var / www / wordpress php_fastcgi unix // запустить / php / php-version-fpm.sock файловый сервер 

(Это настоящий готовый к работе Caddyfile, который обслуживает WordPress с полностью управляемым HTTPS.)

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

Примечание

Caddyfile - это просто адаптер конфигурации для Caddy. Обычно это предпочтительнее при создании конфигураций вручную, но он не такой выразительный, гибкий или программируемый, как собственная структура JSON Caddy. Если вы автоматизируете конфигурацию / развертывание Caddy, вы можете использовать JSON с API Caddy.(На самом деле вы также можете использовать Caddyfile с API, но в ограниченной степени.)

.

Автоматический HTTPS - Документация Caddy

Caddy - это первый и единственный веб-сервер, который автоматически использует HTTPS и по умолчанию .

Автоматический HTTPS предоставляет сертификаты TLS для всех ваших сайтов и поддерживает их обновление. Он также перенаправляет HTTP на HTTPS за вас! Caddy использует безопасные и современные настройки по умолчанию - без простоев или дополнительных настроек.

Caddy разработала новую автоматическую технологию HTTPS; мы делаем это с первого дня, когда это стало возможным в 2015 году.Логика автоматизации HTTPS Caddy является самой продуманной и надежной в мире.

Вот 28-секундное видео, показывающее, как это работает:

Обзор

Caddy по умолчанию обслуживает все сайты через HTTPS.

Caddy сохраняет все сертификаты обновленными и автоматически перенаправляет HTTP (порт по умолчанию 80) на HTTPS (порт по умолчанию 443).

Для локального HTTPS:

Для публичных доменных имен:

Это общие требования для любого базового производственного веб-сайта, а не только для Caddy. Основное отличие состоит в том, чтобы правильно настроить записи DNS с до с Caddy.

, тогда сайты будут обслуживаться по HTTPS автоматически и без проблем.Вам не нужно будет ничего знать об этом или делать что-либо еще. Он должен «просто работать»!

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

Активация

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

Любое из следующих действий предотвратит активацию автоматического HTTPS, полностью или частично:

Эффекты

При активации автоматического HTTPS происходит следующее:

Автоматический HTTPS никогда не отменяет явную конфигурацию.

При необходимости вы можете настроить или отключить автоматический HTTPS.

Требования к имени хоста

Все имена хостов (доменные имена и IP-адреса) подходят для полностью управляемых сертификатов, если они:

Кроме того, имена хостов соответствуют требованиям для получения общедоступных сертификатов, если они:

Локальный HTTPS

Для обслуживания закрытых сайтов по протоколу HTTPS Caddy создает собственный центр сертификации (ЦС) и использует его для подписи сертификатов.Цепочка доверия состоит из корневого и промежуточного сертификатов. Листовые сертификаты подписываются промежуточным звеном.

Локальный центр сертификации

Caddy основан на библиотеках Smallstep.

Local HTTPS не использует ACME и не выполняет проверку DNS. Он работает только на локальном компьютере и заслуживает доверия только там, где установлен корневой сертификат ЦС.

Корень CA

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

Хотя Caddy может быть настроен на прямую подпись с помощью root (для поддержки несовместимых клиентов), по умолчанию это отключено, и корневой ключ используется только для подписи промежуточных звеньев.

При первом использовании корневого ключа Caddy попытается установить его в локальное хранилище доверенных сертификатов системы. Если у него нет на это разрешения, он запросит пароль. Это поведение можно отключить в конфигурации, если оно не желательно.

Доверять корневому сертификату Caddy на своем компьютере безопасно, если только ваш компьютер не скомпрометирован и ваш уникальный корневой ключ не утек.

После установки корневого центра сертификации Caddy вы увидите его в локальном хранилище доверенных сертификатов как «Caddy Local Authority» (если вы не настроили другое имя). Вы можете удалить его в любое время, если хотите (команда caddy untrust упрощает это).

CA Промежуточные продукты

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

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

Тестирование

Чтобы протестировать или поэкспериментировать с конфигурацией Caddy, убедитесь, что вы изменили конечную точку ACME на промежуточный или разрабатываемый URL-адрес, в противном случае вы, вероятно, столкнетесь с ограничениями скорости, которые могут заблокировать ваш доступ к HTTPS на срок до недели, в зависимости от того, какой предел скорости ты попал.

ЦС

Caddy по умолчанию - Let's Encrypt, у которого есть промежуточная конечная точка, на которую не распространяются те же ограничения скорости:

  https: // acme-staging-v02.api.letsencrypt.org/directory  

ACME вызовы

Для получения общедоступного сертификата TLS требуется проверка сторонним органом, пользующимся всеобщим доверием. В наши дни этот процесс проверки автоматизирован с помощью протокола ACME и может выполняться одним из трех способов («типы запросов»), описанных ниже.

Первые два типа вызовов включены по умолчанию. Если разрешено несколько задач, Кэдди выбирает одну случайным образом, чтобы избежать случайной зависимости от конкретной задачи.

HTTP-вызов

Запрос HTTP выполняет авторитетный поиск в DNS для записи A / AAAA имени хоста кандидата, затем запрашивает временный криптографический ресурс через порт 80 с помощью HTTP. Если центр сертификации видит ожидаемый ресурс, выдается сертификат.

Эта проблема требует, чтобы порт 80 был доступен извне. Если Caddy не может прослушивать порт 80, пакеты с порта 80 должны быть перенаправлены на порт HTTP Caddy.

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

Задание TLS-ALPN

Запрос TLS-ALPN выполняет авторитетный поиск в DNS для записи A / AAAA кандидата имени хоста, затем запрашивает временный криптографический ресурс через порт 443, используя подтверждение TLS, содержащее специальные значения ServerName и ALPN. Если центр сертификации видит ожидаемый ресурс, выдается сертификат.

Эта проблема требует, чтобы порт 443 был доступен извне. Если Caddy не может прослушивать порт 443, пакеты с порта 443 должны быть перенаправлены на порт HTTPS Caddy.

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

Запрос DNS

Запрос DNS выполняет авторитетный поиск в DNS записей TXT имени хоста кандидата и ищет специальную запись TXT с определенным значением. Если центр сертификации видит ожидаемое значение, выдается сертификат.

Эта задача не требует никаких открытых портов, и сервер, запрашивающий сертификат, не должен быть доступен извне. Однако проблема DNS требует настройки.Caddy необходимо знать учетные данные для доступа к поставщику DNS вашего домена, чтобы он мог устанавливать (и очищать) специальные записи TXT. Если запрос DNS включен, другие запросы по умолчанию отключены.

Поддержка провайдера

DNS - это работа сообщества. Узнайте, как включить вызов DNS для вашего провайдера, на нашей вики.

TLS по запросу

Caddy является пионером новой технологии, которую мы называем TLS по требованию, которая получает сертификат для имени во время первого подтверждения TLS, которое требует этого, а не при загрузке конфигурации.Вы можете включить его, используя свойство on_demand в конфигурации автоматизации TLS или подкаталог on_demand Caddyfile.

Эта функция может быть полезна, если вы не знаете заранее все доменные имена или если известные вам доменные имена могут быть неправильно настроены сразу (например, записи DNS еще не установлены правильно). Сертификаты, управляемые по запросу, будут получены и обновлены во время процедуры установления связи TLS, которая требует этого. Этот процесс замедляет только начальное рукопожатие TLS; все остальные не пострадают.

Для предотвращения злоупотреблений вы должны указать ограничения скорости и / или конечную точку, которую Caddy может запрашивать, чтобы узнать, разрешено ли получение сертификата для имени хоста. По сути, вам все еще нужен способ предоставить белый список, но им можно управлять динамически с помощью ваших собственных скриптов или программ, если вы предпочитаете сохранять конфигурацию Caddy более статичной.

Будущая поддержка: Эта функция зависит от CA, выдающего сертификаты без задержки. Если мгновенная выдача становится редкостью для центров сертификации ACME, мы можем прекратить поддержку этой функции в Caddy.

Из-за отложенного характера и возможности того, что некоторые задачи ACME могут занять более нескольких секунд (особенно при использовании задачи DNS), мы обычно рекомендуем использовать TLS по требованию только тогда, когда для вас есть определенные технические или операционные преимущества; а именно, если записи DNS для домена не находятся под вашим контролем, и вы не знаете, когда они будут правильно настроены и готовы к получению сертификатов.

Ошибки

Caddy делает все возможное, чтобы продолжить, если возникают ошибки при управлении сертификатами.

По умолчанию управление сертификатами выполняется в фоновом режиме. Это означает, что он не будет блокировать запуск или замедлять работу ваших сайтов. Однако это также означает, что сервер будет работать даже до того, как будут доступны все сертификаты. Работа в фоновом режиме позволяет Caddy повторять попытку с экспоненциальной задержкой в ​​течение длительного периода времени.

Вот что происходит, если возникает ошибка при получении или обновлении сертификата:

  1. Кэдди повторяет попытку после короткой паузы на случай, если это была случайность
  2. Caddy ненадолго делает паузу, затем переключается на следующий активированный тип запроса
  3. После того, как были опробованы все включенные типы вызовов, он экспоненциально отключается

Во время повторных попыток с Let's Encrypt Caddy переключается в свою промежуточную среду, чтобы избежать проблем с ограничением скорости.Это не идеальная стратегия, но в целом она полезна.

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

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

Caddy в настоящее время составляет 10 попыток на одну учетную запись ACME в минуту.

Хранилище

Caddy будет хранить открытые сертификаты, частные ключи и другие активы в своем настроенном хранилище (или в хранилище по умолчанию, если оно не настроено - подробности см. По ссылке).

Главное, что вам нужно знать, это то, что папка $ HOME должна быть постоянной и доступной для записи.

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

Перед попыткой выполнения любых транзакций ACME Caddy проверит сконфигурированное хранилище, чтобы убедиться, что оно доступно для записи и имеет достаточную емкость. Это помогает уменьшить ненужную конкуренцию за ограничение скорости.

Wildcard сертификаты

Caddy может получать и управлять сертификатами с подстановочными знаками, если он настроен для обслуживания сайта с подходящим именем с подстановочными знаками. Имя сайта подходит для подстановочного знака, если подстановочным знаком является только его крайняя левая метка домена. Например, * .example.com подходит, но не подходит: sub.* .example.com , foo * .example.com , * bar.example.com и *. *. example.com .

Чтобы получить подстановочный знак от Let's Encrypt, вам просто нужно включить вызов DNS и использовать подстановочный домен в своей конфигурации. Мы рекомендуем использовать подстановочные знаки только в том случае, если у вас так много поддоменов, что вы столкнетесь с ограничениями скорости CA при попытке получить сертификаты для всех них.

.

Смотрите также