Un portofoliu Linux bun nu este o colecție de capturi cu ls, pwd și neofetch. Angajatorul trebuie să vadă că poți instala, configura, securiza, verifica și repara un sistem. Fiecare proiect trebuie să prezinte problema, arhitectura laboratorului, comenzile folosite, rezultatul și metoda de recuperare.
Competențele evaluate în certificarea practică LFCS includ operațiuni și deployment, networking, storage, comenzi esențiale, utilizatori, grupuri și ACL-uri. Examenul este bazat pe sarcini executate direct în terminal, apropiate de situații reale de administrare. Aceste domenii reprezintă și o structură bună pentru portofoliu.
Pregătește profilul GitHub
Creează un repository public cu același nume ca utilizatorul tău GitHub și adaugă în rădăcină un fișier README.md. GitHub poate afișa automat acest README în partea superioară a profilului.
În profil scrie concret:
Junior Linux / Cybersecurity
Ubuntu Server, Debian, Bash, Git, Docker
Interes: system administration, blue team, cloud support
Laborator: VirtualBox, rețea izolată, snapshot-uri
Fixează pe profil cele mai bune proiecte, nu toate exercițiile. GitHub permite selectarea a până la șase repository-uri sau gist-uri pentru secțiunea „Pinned”.
Proiectul 1: server Linux configurat și securizat
Instalează Ubuntu Server sau Debian într-o mașină virtuală și documentează următoarele:
utilizator administrativ separat
SSH cu cheie
login root dezactivat
UFW configurat
Nginx instalat
actualizări automate de securitate
backup pentru /etc și /var/www
snapshot înainte de schimbările importante
Repository recomandat:
linux-server-baseline/
├── README.md
├── configs/
│ ├── nginx-site.conf
│ ├── ssh-hardening.conf
│ └── ufw-rules.txt
├── scripts/
│ └── health-check.sh
├── evidence/
│ ├── services.txt
│ ├── ports.txt
│ └── firewall.txt
└── recovery/
└── restore-procedure.md
Generează dovezile fără a publica IP-uri reale sau chei:
systemctl --failed > evidence/services.txt
ss -tulpen > evidence/ports.txt
sudo ufw status verbose > evidence/firewall.txt
README-ul trebuie să explice ce ai configurat, de ce ai ales acele reguli și cum verifici rezultatul.
Proiectul 2: jurnal de troubleshooting
Creează cinci incidente controlate într-o mașină virtuală:
- Nginx oprit;
- configurație Nginx cu eroare de sintaxă;
- folder fără permisiuni corecte;
- partiție de test aproape plină;
- serviciu care nu ascultă pe portul așteptat.
Pentru fiecare incident, documentează:
Simptom observat
Ipoteze
Comenzi de diagnostic
Cauza identificată
Soluția aplicată
Verificarea finală
Metoda de revenire
Exemplu:
systemctl status nginx
sudo nginx -t
journalctl -u nginx -n 100
ss -tulpen | grep ':80'
curl -I http://localhost
Nu publica doar soluția. Arată ordinea verificărilor. Asta demonstrează că poți investiga metodic, nu doar copia comenzi.
Proiectul 3: script Bash pentru verificarea serverului
Scrie un script care verifică:
spațiul pe disc;
memoria disponibilă;
serviciile obligatorii;
porturile așteptate;
necesitatea unui restart;
rezultatele într-un fișier log.
Repository-ul trebuie să includă scriptul, un exemplu de raport și instrucțiuni de rulare:
bash -n server-check.sh
shellcheck server-check.sh
./server-check.sh
echo "$?"
Folosește coduri de ieșire: 0 pentru rezultat normal și o valoare diferită pentru avertizare sau eroare. Nu include parole, tokenuri ori adrese de producție.
Proiectul 4: aplicație web cu Docker Compose
Construiește o aplicație simplă cu două servicii, de exemplu o aplicație web și Redis sau MariaDB. Include:
Dockerfile
compose.yaml
.dockerignore
.env.example
healthcheck
volum persistent
comenzi de pornire și oprire
procedură de depanare
Docker Compose definește serviciile, rețelele și volumele într-un fișier YAML și permite pornirea întregului stack printr-o singură comandă. Documentația oficială include și verificări de sănătate, volume persistente, loguri și depanarea serviciilor.
Nu publica fișierul .env. Pune doar .env.example, cu valori fictive.
Adaugă automatizare cu Ansible
Ca proiect suplimentar, automatizează instalarea Nginx, configurarea firewall-ului și copierea unei pagini web. Ansible folosește un inventory pentru definirea hosturilor și grupurilor administrate.
Include:
inventory.ini
playbook.yml
templates/
README.md
captură a rulării reușite
Un portofoliu credibil are trei-patru proiecte terminate, documentate și reproductibile. Nu încerca să impresionezi cu zeci de tehnologii. Demonstrează că poți construi un sistem, îl poți verifica, îl poți strica în siguranță și îl poți recupera.
Surse folosite
Linux Foundation — LFCS, domenii și competențe practice pentru administrarea Linux.
GitHub Documentation — Profile README și repository-uri fixate pe profil.
Docker Documentation — Docker Compose, health checks, volume și depanare.
Ansible Documentation — inventory, hosturi și grupuri administrate.

















































