Към съдържанието

Настройки за бисквитки

Изберете кои видове бисквитки разрешавате. Можете да промените избора си по всяко време чрез „Настройки за бисквитки“ в долната част на всяка страница. Декларация за поверителност

Необходими

Винаги включени

Нужни са за вход, за запазване на количката и на Вашите избори. Те са винаги включени.

Кои бисквитки?
  • weboke_sessie, weboke_klant, weboke_remember: Вашата сесия и оставането в акаунта
  • weboke_basket: Вашата количка
  • wkBtwIncl: показване на цените с или без ДДС
  • wok_cookies: Вашият избор за бисквитките, 12 месеца

Измерват коя реклама води до посещение или поръчка, за да не плащаме за реклами без резултат.

Кои бисквитки?
  • Google Ads чрез Google Tag Manager (_gcl_au, _gcl_aw), до 90 дни
  • OpenAI Ads, реклами в ChatGPT
  • wok_aff: кой партньор Ви е препратил към нас (партньорска програма), 60 дни

4,6

Държава и език

Всяка държава има собствен сайт, с цените и ДДС на тази държава.

Преглед

Финална проверка: оценка на Вашия сървър

Модул 10: Безопасност в дългосрочен план · Време за четене: 10 минути

Цел на урока: След този урок ще можете да оцените собствения си сървър с контролен списък и с автоматична проверка отвън, ще знаете кои точки имат предимство и ще имате постоянен ритъм на поддръжка и кратко досие на сървъра.

Основни понятия: контролен списък, приоритет, проверка отвън, досие на сървъра, ритъм на поддръжка (седмично, месечно, на тримесечие, годишно), крайна дата на поддръжка на версията, тест за възстановяване

От отделни уроци към едно цяло

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

Един сървър никога не е "завършен". Софтуерът остарява, сертификатите изтичат, дисковете се запълват, версиите достигат end of life. Затова постоянният ритъм е също толкова важен, колкото и първоначалната настройка.

Контролният списък, подреден по важност

Не всичко е еднакво спешно. Преминете през списъка отгоре надолу: първите блокове предотвратяват най-много неприятности.

Блок 1: никой не влиза просто така (модул 2, 3, 5)

  • Влизане само с ключове; PasswordAuthentication no и KbdInteractiveAuthentication no, проверено с sudo sshd -T.
  • Root не влиза с парола; работите като обикновен потребител със sudo.
  • Базите данни, кешовете и клъстерите за търсене слушат на 127.0.0.1; портовете 3306, 5432, 6379, 9200 и 27017 са затворени отвън, както за IPv4, така и за IPv6.
  • Защитна стена, която по подразбиране затваря всичко входящо; отворени са само портовете, които са Ви нужни.
  • fail2ban работи за SSH (fail2ban-client status sshd).

Блок 2: пропуските в сигурността се затварят (модул 4)

  • Автоматичните обновявания за сигурност са включени и проверени (лог, apt list --upgradable).
  • План за рестартиране; /var/run/reboot-required не стои там с седмици.
  • Версията все още се поддържа; крайната дата е записана в календара Ви.

Блок 3: можете да се върнете назад (модул 8)

  • Криптирани резервни копия извън сървъра, автоматично, с наблюдение.
  • Направен е тест за възстановяване и знаете колко време отнема възстановяването.
  • Знаете как се прави snapshot и как се отваря конзолата.

Блок 4: външната страна е наред (модул 7)

  • Записите A и AAAA сочат към сървъра Ви; reverse DNS (PTR) сочи обратно към същото име.
  • https с валиден сертификат, който се подновява автоматично; http пренасочва към https.
  • HSTS и няколко headers за сигурност; security.txt с работещ адрес за контакт и дата на изтичане.

Блок 5: виждате какво се случва (модул 6, 8)

  • Journal е постоянен; можете да четете логове отпреди рестартиране.
  • Наблюдение отвън (достъпност, сертификат) и отвътре (диск, услуги), с известия, които наистина пристигат.
  • systemctl --failed е празно.

Блок 6: контейнерите са под контрол (модул 9, ако използвате Docker)

  • Портовете на контейнерите са на 127.0.0.1 или зад reverse proxy; без docker.sock в контейнери, които наистина не се нуждаят от това.
  • Volumes са включени в резервното копие; images се обновяват редовно.
  • Тайните стоят във файлове .env със строги права, а не в Git.

Проверката отвън

Част от този списък програмата на курса може да провери отвън, точно както всеки в интернет вижда сървъра Ви. Финалната задача (Z10.4) обединява проверките от предишните задачи:

ЕлементКакво прави програматаОт урок
SSHЧете банера с версията и пита кои методи за влизане предлага сървърът Ви за Вашето потребителско име; не влиза2.2
Портове на бази данниСамо опитва връзка към 3306, 5432, 6379, 9200 и 27017; не изпраща нищо5.1
httpsПроверява сертификата (валиден, доверен, правилно име)7.3
HeadersЧете HSTS и другите headers за сигурност7.4
security.txtИзтегля /.well-known/security.txt и проверява Contact и Expires7.4
КонтейнерТърси header с Вашия код, зададен от reverse proxy9.4

Програмата не изпълнява нищо на сървъра Ви, не опитва пароли и не сканира други портове. Всеки адрес може да бъде проверен само няколко пъти на час. Зеленият резултат означава: отвън най-известните грешки отсъстват. Той не казва нищо за това, което се случва вътре в сървъра Ви; това е останалата част от контролния списък и я преглеждате сами.

Досието на сървъра

За всеки сървър напишете кратък документ, който пазите извън сървъра (например в мениджъра на пароли или в споделена папка):

  • име, IP адреси, доставчик, версия и крайна дата на поддръжка;
  • какво работи (услуги, контейнери, уебсайтове) и защо;
  • кои портове са отворени и за какво;
  • къде са резервните копия, как се възстановява, кога е бил последният тест;
  • какви тайни има на сървъра (не самите тайни, а кои са и къде се сменят);
  • какво сте направили съзнателно различно от стандарта (например препоръка на Lynis, която сте пропуснали, урок 10.1);
  • кой има достъп (кои ключове са в authorized_keys).

Това досие е безценно при инцидент (урок 10.3), при надграждане на версията (урок 4.3) и когато някой друг поеме администрирането.

Ритъм на поддръжка

Без ритъм вниманието отслабва. Ето пример за малък сървър; адаптирайте го към собствената си ситуация.

КогаКакво
Всяка седмицаПреглед на наблюдението и известията; systemctl --failed; рестартиране, ако е налице /var/run/reboot-required (или проверка, че автоматичното рестартиране е сработило)
Всеки месецapt list --upgradable (остава ли нещо неинсталирано?); docker compose pull и up -d за контейнерите, заедно с release notes; място на диска; fail2ban-client status; логове за забележими грешки (journalctl -p err --since "1 month ago")
Всяко тримесечиеТест за възстановяване от резервно копие; преглед на authorized_keys и на потребителите (премахнете всеки, който вече не трябва да има достъп); повторно изпълнение на Lynis; повторна финална проверка отвън (задача Z10.4)
Всяка годинаОбновяване на security.txt (Expires); преглед на крайната дата на версията и планиране на надграждане; обновяване на досието на сървъра и на аварийния план

Запишете тези моменти в календара си. Голяма част можете да автоматизирате и с наблюдението от урок 8.3, но личният преглед остава необходим.

На практика

Независимо дали сървърът Ви е при WebOké или при друг доставчик: доставчикът отговаря за хардуера, мрежата и възможността да правите snapshots и резервни копия, а Вие отговаряте за всичко вътре в сървъра. Този курс е самопомощ: никой не наблюдава сървъра Ви заедно с Вас. С този контролен списък, досието и ритъма обаче имате всичко необходимо, за да извършвате това администриране самостоятелно и добре.

Обобщение

  • Преглеждайте сървъра си на блокове: никой не влиза просто така, пропуските се затварят, можете да се върнете назад, външната страна е наред, виждате какво се случва, контейнерите са под контрол.
  • Проверката отвън разглежда методите за влизане в SSH, портовете на бази данни, https, headers, security.txt и header на контейнера Ви; останалото преглеждате сами.
  • Поддържайте досие на сървъра, съхранявано извън сървъра.
  • Работете с постоянен ритъм: седмично, месечно, на тримесечие и годишно.

Тест (quiz)

1. Разполагате само с един час. С коя точка от контролния списъка започвате?



2. Финалната проверка отвън е изцяло зелена. Какво означава това?



3. Защо пазите досието на сървъра извън сървъра?



4. Коя задача е част от тримесечния ритъм?



5. Вашият security.txt има дата Expires през май следващата година. Какво правите?



Задача

Задача Z10.4: Финална задача: Вашият сървър отвън. Оставете програмата на курса да провери сървъра Ви отвън наведнъж: методите за влизане в SSH за Вашето потребителско име, петте порта на бази данни, https и headers на сайта Ви, Вашия security.txt и header X-Weboke-Cursus с Вашия код на името, на което работи контейнерът Ви. Освен това попълнете контролния списък от блокове 1 до 6 за това, което програмата не може да види.

Задача Z10.4: Финална задача: Вашият сървър отвън

Не влизаме в сървъра и не пробваме пароли или ключове. Първо покажете, че сървърът е Ваш: кликнете върху "Покажете моя код" и поставете файл /.well-known/weboke-cursus-<code>.txt само с този код на уеб сървъра на Вашето име на хост. Изтегляме го директно от всеки IP адрес, който проверяваме (IPv4 и IPv6 поотделно); TXT запис не се зачита тук. Проверката идва от heavy.webawere.nl (185.158.167.16 и 2a07:ae80:100:0:185:158:167:16), а не от нашия уеб сървър. Само за регистрирани курсисти; най-много 6 проверки на час за сървър. Финалната проверка изпълнява последователно проверките от Z2.2, Z5.1, Z7.3, Z7.4 и Z9.4. SSH, портовете и https трябва да са зелени; headers, security.txt и заглавният ред са препоръки.








Това, което въвеждате, и резултатите от проверката не се съхраняват. Браузърът Ви запомня отговорите и дали сте изпълнили задачата. Ако сте влезли, запазваме само дали задачата е била (почти) правилна в Моите курсове; и там можете да го изтриете.

Задача O10.4: Вашият ритъм на поддръжка. Създайте собствено досие на сървъра и собствен ритъм на поддръжка: какво правите седмично, месечно, на тримесечие и годишно, и запишете тези моменти в календара си.

Задача O10.4: Вашият ритъм на поддръжка

Тази задача изпълнявате сами; никой не я проверява. Отбележете какво сте направили и маркирайте задачата като изпълнена.




Вашите отметки и бележки остават само в този браузър; не ги изпращаме никъде. Ако сте влезли, в Моите курсове запазваме само че сте изпълнили задачата.

Още за четене

Моля, изчакайте…

Настройте домейните си

За всеки домейн настройте сървърите за имена, връзката с хостинга и кой ще бъде собственикът.

Домейните Ви се зареждат…