Rocky Linux 9 е безплатният избор, съвместим с RHEL: същите пакети, същият dnf, същите firewalld и SELinux. Ако вече сте настройвали Debian или Ubuntu, редът на стъпките е същият; различни са инструментите. Ето първите десет минути на нов сървър с Rocky 9.
Изпълнихме всяка команда по-долу на нашия образ Rocky Linux 9 преди публикуване. На чист сървър цялата последователност отнема няколко минути.
1. Обновете системата
Влезте като root с паролата от панела и обновете:
dnf -y upgrade
На нашия образ това отне секунди при теста, защото образът вече беше актуален.
2. Създайте потребител със sudo и добавете SSH ключа си
В Rocky групата на администраторите е wheel, а не sudo:
useradd -m -G wheel deploy
passwd deploy # sudo will ask for this password
Качете публичния си ключ на сървъра (как да си създадете такъв). Ако сте го копирали в /root/key.pub:
install -d -m 700 -o deploy -g deploy /home/deploy/.ssh
install -m 600 -o deploy -g deploy /root/key.pub /home/deploy/.ssh/authorized_keys
restorecon -R /home/deploy/.ssh
restorecon задава етикетите на SELinux, които sshd очаква. С грешен етикет влизането с ключ се проваля без ясна грешка.
Отворете втори терминал и проверете, че ssh deploy@YOUR.SERVER.IP работи, а sudo -v приема паролата. Дотогава не затваряйте сесията на root.
3. Забранете влизането като root и с парола
Тук Rocky се различава от учебната промяна в sshd_config. Настройките са в отделни файлове в /etc/ssh/sshd_config.d/, а sshd взема първата намерена стойност. В нашия образ първият файл е 00-eqvps.conf: той разрешава root и парола, за да можете да влезете в първия ден. Променете там:
sed -i -e 's/^PermitRootLogin .*/PermitRootLogin no/' \
-e 's/^PasswordAuthentication .*/PasswordAuthentication no/' \
/etc/ssh/sshd_config.d/00-eqvps.conf
sshd -t && systemctl reload sshd
sshd -T | grep -E '^(permitrootlogin|passwordauthentication) '
Последната команда показва какво sshd реално прилага. Трябва да видите:
permitrootlogin no
passwordauthentication no
След това ssh root@… се отказва дори с ключ, а deploy влиза само с ключ.
4. Защитна стена: firewalld
В облачния образ няма firewalld. Инсталирайте го, стартирайте го и оставете отворено само нужното:
dnf -y install firewalld
systemctl enable --now firewalld
firewall-cmd --permanent --add-service=ssh
firewall-cmd --permanent --remove-service=cockpit
firewall-cmd --reload
firewall-cmd --list-services
Зоната по подразбиране отваря cockpit (порт 9090) и dhcpv6-client. Cockpit не е инсталиран, но няма причина портът му да остава отворен. Когато добавите приложение, отворете порта му по същия начин, например firewall-cmd --permanent --add-service=https.
5. Автоматични обновления за сигурност
dnf-automatic изтегля обновленията по таймер. По подразбиране не ги инсталира, затова включете инсталирането:
dnf -y install dnf-automatic
sed -i 's/^apply_updates = .*/apply_updates = yes/' /etc/dnf/automatic.conf
systemctl enable --now dnf-automatic.timer
systemctl list-timers dnf-automatic.timer
Ако искате само поправки за сигурност, в същия файл задайте и upgrade_type = security.
6. Оставете SELinux включен
На нов сървър getenforce извежда Enforcing и всичко по-горе работи с него. Когато приложение има нужда от нестандартен порт или папка, решението е етикет (semanage port, restorecon), а не setenforce 0.
Какъв план
Rocky 9 заема в покой около 400 MB RAM. Планът Nano (1 GB, $3/месец) стига за една малка услуга; Micro (2 GB, $5/месец) оставя място за база данни. При плановете с NAT SSH влиза през личен порт, показан в панела. Ако ви трябват портове 80/443, отворени за всички, изберете план със собствен IPv4, например Micro-IP за $10/месец.
Rocky Linux 9 е един от образите на страницата на семейството RHEL и е наличен във всички планове в раздела VPS. Плащането е в USDT, USDC или ETH в мрежите Base, Ethereum или Polygon, без документи и карта. Ако предпочитате да управлявате сървъра със скриптове, поръчката, преинсталирането и подновяването са описани в документацията на API.
Коментари
Още няма коментари. Бъди първият.