Z repozytorium debiana Czytaj dalej MariaDB – instalacja, hardening
Apache2, Http2 – instalacja, konfiguracja
Apache z mpm_event, PHP-FPM i HTTP/2 Czytaj dalej Apache2, Http2 – instalacja, konfiguracja
php – hardening
Utwardzenie w /etc/php/8.5/fpm/conf.d/99-custom.ini
fail2ban – Automatyczne aktualizacje bezpieczeństwa
Fail2ban to otwartoźródłowy system zapobiegania włamaniom, który chroni serwery Linux przed atakami siłowymi Czytaj dalej fail2ban – Automatyczne aktualizacje bezpieczeństwa
ssh – config / hardening
Przygotowanie Czytaj dalej ssh – config / hardening
UFW – linux firewall
sudo apt install -y ufw sudo ufw default deny incoming sudo ufw default allow outgoing sudo ufw allow OpenSSH sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw enable
tzdata
Current default time zone: 'Europe/Warsaw’
Local time is now: Wed Sep 23 12:38:45 CEST 2026.
Universal Time is now: Wed Sep 23 10:38:45 UTC 2026.
Run 'dpkg-reconfigure tzdata’ if you wish to change it.
# dpkg-reconfigure tzdata
zmiana lokalizacji zdalnego repozytorium
Uwaga: remote zgłasza, że repozytorium przeniesiono na https://github.com/john/tripalbums.git. Warto zaktualizować URL origin, żeby uniknąć dalszych ostrzeżeń — chcesz?
# git remote set-url origin https://github.com/john/tripalbums.git; # git remote -v; # git fetch origin; # git status
export do csv
$this->viewBuilder()->setOptions([ 'serialize' => 'exports', 'header' => $header, // Excel w polskiej wersji językowej traktuje przecinek jako separator // dziesiętny, więc jako separator kolumn CSV oczekuje średnika — inaczej // cały wiersz ląduje w jednej komórce. BOM pozwala Excelowi rozpoznać UTF-8 // (polskie znaki) bez ręcznego wyboru kodowania przy imporcie. 'delimiter' => ';', 'bom' => true, 'dataEncoding' => 'UTF-8', 'csvEncoding' => 'UTF-8', ]);
cron
*/5 * * * * cd /full/path/to/root && bin/cake myshell myparam # * * * * * command to execute # │ │ │ │ │ # │ │ │ │ │ # │ │ │ │ \───── day of week (0 - 6) (0 to 6 are Sunday to Saturday, # | | | | or use names) # │ │ │ \────────── month (1 - 12) # │ │ \─────────────── day of month (1 - 31) # │ \──────────────────── hour (0 - 23) # \───────────────────────── min (0 - 59)
mcp filesystem
claude mcp add-json server-filesystem --scope project '{
"command": "npx",
"args": [
"-y", "@modelcontextprotocol/server-filesystem",
"/var/www/project-1",
"/var/www/sources"
]
}'
MCP mariadb – uvx
Zawartość pliku: my_proj_dir/.mcp.json
PDF – ustawienie nazwy przy pobraniu na dysk lokalny
Kontroller projects
Akcja view() {
Czytaj dalej PDF – ustawienie nazwy przy pobraniu na dysk lokalny
sidebar nav – obsługa zwijania / rozwijania
Przechowywanie informacji o tym czy boczny sidebar jest zwinięty czy rozwinięty w LocalStorage
Czytaj dalej sidebar nav – obsługa zwijania / rozwijania
Fonty zewnętrzne – pliki .otf
Open Type Format .otf
Czytaj dalej Fonty zewnętrzne – pliki .otf
Zmiana hasła usera
> ALTER USER claude IDENTIFIED BY 'afrieE&89)8r7jE1l9TaG5nYxK8a'; > FLUSH PRIVILEGES;
Lista dostępnych pakietów php8.5
apt-cache search php8.5-
Filtrowanie po nazwie – inna opcja
Wzorzec DEBOUNCE Czytaj dalej Filtrowanie po nazwie – inna opcja
jQuery Ajax
Obsługa ajax API
UUID
CREATE TABLE `transactions` ( ... `uuid` BIGINT UNSIGNED DEFAULT(uuid_short()), `uuid` UUID DEFAULT(uuid()),
MariaDB – RexExp example
Tworzy kolumnę i wypełnia ją wg. wzorca regexp
robots.txt
webroot/robots.txt
User-agent: * Disallow: /
CakePHP 5 – Instalacja
# cd /var/www/project # composer create-project --prefer-dist cakephp/app:~5.3 .
MCP postgresql
Dodaje serwer mcp postgresql
MCP mySQL – npx
Dodaje serwer mcp mysql
Generacja hasła PowerShell
> [guid]::NewGuid().ToString() 872779d0-a0a1-4c91-b8b8-d580d78af8d7 - przykładowe hasło
Windows – generowanie UUID
PowerShell
[guid]::NewGuid().ToString()
9604d3a8-e390-41fa-8863-01fca67adb3c
PHP – 32 bajty
# php -r "echo base64_encode(random_bytes(32));" O5PPyu3QZtfZD5f6Oj2WaxZdux2k4OJ1vcy0Y4jomJk= .... gdzieś w kodzie ... $str = base64_decode($var);
Nodejs on Debian
# curl -fsSL https://deb.nodesource.com/setup_22.x | bash - # apt install -y nodejs
Serwery MCP – 1
Model Context Protocol
- mcp.so — katalog serwerów
- smithery.ai — kolejny katalog z łatwą instalacją
- github.com/modelcontextprotocol/servers — oficjalne serwery referencyjne
Wymagane narzędzia: npx, uv, uvx
# curl -LsSf https://astral.sh/uv/install.sh | sh
Max upload file:
Pliki które trzeba sprawdzić
/etc/php/8.4/fpm/php.ini /etc/php/8.4/cli/php.ini
Wartości które trzeb ustawić:
upload_max_filesize: 50M post_max_size: 50M
Sprawdzenie tylko CLI (nie fpm który faktycznie przesyła pliki przez Apache2)
# php -r "echo 'upload_max_filesize: ' . ini_get('upload_max_filesize') . PHP_EOL; echo 'post_max_size: ' . ini_get('post_max_size').PHP_EOL;"
Komendy: postgres
Sposób wyświetlania
SELECT * FROM tabela \gx - Odpowiednik \G (dla zapytania) \x - włączenie trybu pionowego na stałe \x auto - przełączenie na pionowy widok tylko wtedy, gdy wiersze są za szerokie dla ekranu
SELECT * FROM tabela \x\g\x - włącza tryb pionowy, wysła zapytanie i wyłącza tryb w jednej linii
Operacje na bazach danych
\l - lista baz danych \c moja_baza - połączenie z bazą
Tabele
\d - lista relacji \dt - lista tabel \d moja_tabela - struktura tabeli \d+ moja_tabela - szczegóły tabeli: komentarze, rozmiar na dysku,