Dostępny — szukam pierwszej pracy

Mikołaj
Kozłowski

Junior Linux / DevOps Specialist

Samodzielnie wdrożyłem i zabezpieczyłem produkcyjną infrastrukturę webową na AWS EC2 z Dockerem, Nginx, Cloudflare i WordPressem. Pasjonuję się administracją systemami Linux, bezpieczeństwem sieciowym oraz rozwiązaniami Cloud computing.

3
Kontenery Docker
AWS
EC2 Frankfurt
SSL
Full Strict
CDN
Content Delivery Network (cloudflare)

Kim jestem

Jestem Junior Linux/DevOps Specialistą z Poznania, który zamiast czekać na pierwszą pracę — zbudował własną infrastrukturę produkcyjną od zera.

Samodzielnie zaprojektowałem, wdrożyłem i zabezpieczyłem serwer VPS na AWS EC2 z pełnym stosem: Docker Compose, Nginx jako reverse proxy, WordPress z PHP-FPM, MariaDB oraz Cloudflare jako warstwą CDN i bezpieczeństwa.

W dniu uruchomienia strony wykryłem rzeczywisty atak brute-force na panel WordPress, przeanalizowałem logi Nginx i wdrożyłem odpowiednie zabezpieczenia — to doświadczenie, którego nie daje żaden kurs.

Ukończyłem kursy Linux Administration i Nginx na Udemy. Stale rozwijam umiejętności w kierunku cloud computing, automatyzacji i bezpieczeństwa.

LokalizacjaPoznań, Polska
Stronamikolajkozlowski.pl
StanowiskoJunior Linux / DevOps
DyspozycjaPełen etat / Zdalna / Hybrydowa
EdukacjaWSB Merito Poznań — Informatyka (II rok, IV semestr)
Liceum Ogólnokształcące (profil ogólny, 2018)

WordPress na AWS EC2
z Cloudflare

produkcja — mikolajkozlowski.pl — AWS eu-central-1
→ mikolajkozlowski.pl

Pełen stos webowy wdrożony samodzielnie na chmurze AWS. Projekt obejmuje infrastrukturę, konteneryzację, konfigurację serwera, SSL, DNS i bezpieczeństwo sieciowe. Każdy element został skonfigurowany ręcznie — bez gotowych wtyczek czy managed hostingu.

Internet ──▶ Cloudflare (SSL/CDN/WAF) ──▶ Nginx:443 ──▶ WordPress (PHP-FPM) ──▶ MariaDB
AWS EC2 Docker Compose Nginx Cloudflare WordPress 6.9 PHP-FPM 8.3 MariaDB 10.11 Ubuntu 24.04 SSL/TLS UFW Git
🐳
Docker Compose
3 kontenery: Nginx, WordPress (FPM Alpine), MariaDB. Izolowana sieć bridge, named volumes dla trwałości danych.
🔒
SSL Full Strict
Cloudflare Origin Certificate + Nginx SSL. Tryb Full Strict — szyfrowanie end-to-end między Cloudflare a serwerem.
🛡️
Wielowarstwowe zabezpieczenia
Security Group (tylko IP Cloudflare), UFW, Cloudflare WAF, ukryty panel /wp-login.php
☁️
AWS + Cloudflare
EC2 t3.micro Frankfurt, Elastic IP, termination protection. Cloudflare CDN, DDoS protection, WAF reguły.
📊
Analiza incydentu
Wykrycie realnego ataku brute-force w dniu uruchomienia. Analiza logów Nginx, identyfikacja IP atakującego i zablokowanie go.
📦
GitHub + IaC
Konfiguracja jako kod w repozytorium Git. Dane wrażliwe (.env) poza repozytorium — .gitignore.
bash script — github.com/MikolajKozl
Monitor dostępności serwera
→ github.com/MikolajKozl/Project-Alert-Bash-Script

Skrypt Bash monitorujący dostępność strony internetowej. Co minutę sprawdza kod HTTP serwera — w przypadku błędu (3xx/4xx/5xx) wysyła alert emailowy przez Gmail SMTP. Mechanizm blokady pliku zapobiega spamowaniu skrzynki przy długotrwałym przestoju.

cron (co 1 min) ──▶ curl HTTP check ──▶ kod 2xx? OK ──▶ kod 3xx/4xx/5xx? ──▶ sendemail (Gmail SMTP)
Bash curl cron sendemail Gmail SMTP HTTP monitoring Linux
📡
HTTP monitoring
curl sprawdza kod odpowiedzi HTTP co minutę przez cron. Obsługuje kody 2xx/3xx/4xx/5xx.
📧
Alert emailowy
Automatyczny email przez Gmail SMTP (sendemail) z tytułem i kodem błędu gdy serwer przestaje odpowiadać.
🛑
Anty-spam
Mechanizm blokady przez plik /tmp — wysyła tylko jeden alert, nie spamuje skrzynki przy długim przestoju.

Stack technologiczny

🐧 Linux & System
Ubuntu Server (20.04, 22.04, 24.04)
SSH / klucze ED25519
UFW firewall
fail2ban
Bash / terminal
vim / nano
🐳 Docker & DevOps
Docker Compose V2
Konteneryzacja aplikacji
Sieci Docker (bridge)
Volumes & persystencja
Git / GitHub
Analiza logów kontenerów
🌐 Serwery & Sieć
Nginx (reverse proxy, SSL)
PHP-FPM / FastCGI
DNS / rekordy A, NS
SSL/TLS certyfikaty
HTTP/HTTPS protokoły
Analiza ruchu sieciowego
☁️ Cloud & Bezpieczeństwo
AWS EC2 / Security Groups
Cloudflare (CDN, WAF, SSL)
Zarządzanie dostępem (IAM)
MariaDB / MySQL
Analiza incydentów bezp.
WordPress administracja

Dlaczego warto mnie zatrudnić

🚀 Projekt produkcyjny — nie kurs

Wdrożyłem działającą infrastrukturę produkcyjną dostępną pod prawdziwą domeną. Nie symulacja, nie tutorial — rzeczywisty serwer obsługujący ruch z internetu, w tym obsługa realnego ataku hakerskiego w dniu uruchomienia.

🔍 Diagnoza i rozwiązywanie problemów
  • Wykrycie ataku brute-force z analizy logów Nginx
  • Wywołałem i naprawiłem błąd 522 — zmiana WordPress URL spowodowała niedostępność strony, naprawiona przez bezpośrednią edycję tabeli wp_options w MariaDB
  • Debugowanie konfiguracji SSL i przekierowań HTTP
  • Rozumienie nagłówków HTTP/HTTPS (curl -I, curl -v)
🛡️ Myślenie o bezpieczeństwie
  • Defense in depth — wielowarstwowa ochrona
  • Zasada least privilege (chmod 600, Security Group)
  • Ukrywanie prawdziwego IP serwera przez Cloudflare
  • Separacja danych wrażliwych (.env poza Git)
📈 Szybkie przyswajanie wiedzy

Cały projekt — od konfiguracji EC2 po SSL Full Strict i blokowanie Cloudflare IP — zrealizowałem w ciągu 2 dni. Uczę się przez robienie, nie tylko przez czytanie. Każdy błąd to lekcja którą rozumiem głęboko.

Complete Linux Training Course 2025 — Udemy
The Perfect Nginx Server — Ubuntu — Udemy
Projekt praktyczny: AWS EC2 + Docker(Nginx, MariaDB, WordPress) + Cloudflare

Skontaktuj się

Szukam pierwszej pracy jako Junior Linux Administrator lub Junior DevOps. Jestem dyspozycyjny, gotowy do pracy stacjonarnej, zdalnej lub hybrydowej. Chętnie opowiem więcej o projekcie lub o sobie.

📍 Status
Aktywnie szukam pracy

Jestem otwarty na oferty w obszarze:

  • ▸ Junior Linux Systems Administrator
  • ▸ Junior DevOps Engineer
  • ▸ Junior Cloud Administrator
  • ▸ Junior System Administrator

Lokalizacja: Poznań / Stacjonarnie / Zdalnie / Hybrydowo