Аперацыйныя сістэмы

Кіраванне серверам Linux праз SSH: асноўныя каманды для вэб-майстроў

  • 16 хвілін на чытанне
  • Каманда Hostragons
Кіраванне серверам Linux праз SSH: асноўныя каманды для вэб-майстроў

Кіраванне серверам Linux праз SSH-каманды — гэта ўменне вэб-майстра бяспечна падключацца да аддаленага сервера на Linux і выконваць праз тэрмінал аперацыі з файламі, службамі, карыстальнікамі, логамі, бяспекай і прадукцыйнасцю. Для задавальнення базавых патрэб выкарыстоўваецца падключэнне праз ssh карыстальнік@ip-сервера; з дапамогай каманд ls, cd, pwd, cp, mv, rm, nano, systemctl, journalctl, top, df, du, chmod, chown, tar, scp і rsync сайт публікуецца, аналізуюцца памылкі, перазапускаюцца службы і кіруюцца рэзервовыя копіі. Гэта інструкцыя на практычных прыкладах тлумачыць асноўныя коды, якія найбольш часта патрабуюцца ў штодзённых аперацыях вэб-майстрам, што выкарыстоўваюць хостынг, VPS ці выдзелены сервер.

Хоць часта кіраваць сайтам толькі праз панэль кіравання дастаткова, валоданне SSH дае велізарную перавагу, калі расце трафік, патрабуецца спецыфічнае ПЗ, трэба прааналізаваць логі памылак ці тэрмінова ўмяшацца. Напрыклад, калі ваш сайт на WordPress выдае памылку 500, замест таго каб чакаць загрузкі панэлі, можна некалькімі камандамі за лічаныя хвіліны праверыць запаўненне дыска, стан PHP-FPM, логі Nginx ці Apache і апошнія змененыя файлы. Гэта памяншае час прастою і дапамагае захаваць SEO-пазіцыі. Калі вы яшчэ на этапе выбару сервернай інфраструктуры, карысна параўнаць варыянты VPS Server і Вэб-хостынг у адпаведнасці з вашымі патрэбамі.

Што такое SSH і чаму гэта важна для вэб-майстроў?

SSH — гэта абрэвіятура ад Secure Shell, бяспечны пратакол для ўстанаўлення зашыфраванага злучэння з аддаленым серверам. Калі FTP выкарыстоўваецца толькі для перадачы файлаў, SSH дае вам камандны радок сервера. Дзякуючы гэтаму вы можаце перайсці ў каранёвы вэб-каталог, выправіць правы доступу, перазапусціць службы, праверыць брандмаўэр, зрабіць рэзервовую копію базы дадзеных і сачыць за лог-файламі ў рэжыме рэальнага часу.

З пункту гледжання вэб-майстра, веданне SSH дае тры асноўныя перавагі. Першая — гэта хуткасць; сцісканне вялікіх файлаў непасрэдна на серверы замест спампоўкі праз панэль можа заняць секунды ці хвіліны. Другая — бачнасць; логі, выкарыстанне працэсара, спажыванне RAM і стан дыска бачныя непасрэдна. Трэцяя — кантроль; такія праблемы, як парушэнне правоў доступу, падзенне службы ці няправільная канфігурацыя, вырашаюцца без затрымак. Асабліва на VPS, воблачных і выдзеленых серверах SSH — гэта практычна абавязковы навык кіравання.

Што трэба ведаць перад усталяваннем SSH-злучэння

Звычайна для SSH-злучэння патрабуюцца тры рэчы: IP-адрас сервера ці даменнае імя, імя карыстальніка і метад аўтэнтыфікацыі. Прадвызначаны порт у большасці сістэм Linux — 22; у мэтах бяспекі можа выкарыстоўвацца іншы порт. Каманда падключэння ў самым простым выглядзе: ssh карыстальнік@ip-сервера. Калі порт адрозніваецца, падключэнне адбываецца так: ssh -p 2222 карыстальнік@ip-сервера.

Пры першым падключэнні тэрмінал просіць пацвердзіць лічбавы адбітак ключа сервера. Гэты крок патрэбны, каб пераканацца, што вы падключаецеся да патрэбнага сервера. Калі вы напішаце Yes і працягнеце, запіс сервера дадасца ў файл known_hosts на вашым кампутары. Калі пазней сервер зменіцца ці IP-адрас будзе прызначаны нанова, вы можаце атрымаць папярэджанне бяспекі; у такім выпадку спачатку пераканайцеся, што вы сапраўды падключаецеся да правільнага сервера.

Розніца паміж уваходам па паролі і SSH-ключом

Уваход па паролі просты, але больш уразлівы да brute force атак. SSH-ключ працуе так, што на вашым кампутары знаходзіцца прыватны ключ, а на серверы — адкрыты ключ, і гэта больш бяспечна. Для стварэння ключа можна выкарыстаць каманду ssh-keygen -t ed25519. Каб дадаць адкрыты ключ на сервер, зручна выкарыстоўваць каманду ssh-copy-id карыстальнік@ip-сервера. Пасля ўсталявання ключа адключэнне ўваходу па паролі сур'ёзна павышае ўзровень бяспекі.

Розніца паміж уваходам па паролі і SSH-ключом
МетадПеравагаРызыкаРэкамендуемае выкарыстанне
SSH па пароліХуткая ўстаноўкаВысокая рызыка атакі пры слабым пароліЧасовы доступ і першапачатковая ўстаноўка
SSH-ключБольш бяспечны і падыходзіць для аўтаматызацыіРызыка, калі не абаронены прыватны ключПастаяннае кіраванне серверам
Іншы портЗмяншае сканаванне ботаміСам па сабе не з'яўляецца дастатковай бяспекайРазам з ключом і брандмаўэрам
Уваход root адключаныЗмяншае злоўжыванне прывілеяміНяправільная налада sudo можа ўскладніць доступПрацоўныя серверы

Асноўныя каманды навігацыі і спісу файлаў

Першыя каманды, якія трэба вывучыць у тэрмінале Linux — гэта прагляд бягучага каталога, змена каталога і спіс файлаў. Каманда pwd паказвае бягучае месцазнаходжанне. cd /var/www/html дазваляе перайсці ў каранёвы вэб-каталог. cd .. падымае на адзін каталог уверх, а cd вяртае ў хатні каталог карыстальніка. Каманда ls выводзіць спіс файлаў; ls -la паказвае правы доступу, уладальніка, памер і дату разам са схаванымі файламі.

Для вэб-майстра асабліва важна хутка знаходзіць такія файлы, як .htaccess, wp-config.php, robots.txt, sitemap.xml і index.php. Каманда ls -lah паказвае памеры файлаў у зручным для чытання фармаце. Напрыклад, замест 1048576 вы ўбачыце 1.0M. Калі ў каталогу шмат файлаў, ls -lt сартуе іх па часе змены, паказваючы апошнія зверху. Гэта карысна для аналізу змененых файлаў пасля ўзлому ці праверкі нядаўна ўсталяваных файлаў плагінаў.

Практычны сцэнар: Праверка каранёвага вэб-каталога

Файлы сайта звычайна знаходзяцца ў /var/www, /home/карыстальнік/public_html ці /usr/share/nginx/html. Прыклад паслядоўнасці дзеянняў: pwd пакажа, дзе вы знаходзіцеся, cd /var/www/назва-сайта перамесціць у каталог сайта, ls -lah выведзе спіс файлаў, du -sh . праверыць агульны памер каталога. Калі вы размяшчаеце некалькі сайтаў, трымаць кожны сайт пад асобным карыстальнікам і ў асобным каталогу больш бяспечна і зручна для абслугоўвання. Вы можаце паралельна карыстацца інструкцыямі па кіраванні даменамі Даменны запыт і працэсамі публікацыі сайта Усталёўка хостынгу.

Аперацыі з файламі і каталогамі: Стварэнне, капіраванне, перамяшчэнне, выдаленне

Каб стварыць файл, выкарыстоўвайце touch файл.txt, для стварэння каталога — mkdir назва-каталога. Каб стварыць укладзеныя каталогі адной камандай, можна напісаць mkdir -p backup/2026/студзень. Капіраванне файла: cp крыніца прызначэнне, капіраванне каталога: cp -r каталог-крыніца каталог-прызначэнне. Для перамяшчэння ці перайменавання выкарыстоўваецца каманда mv старая-назва новая-назва.

Каманды выдалення патрабуюць асцярожнасці. rm файл.txt выдаляе адзін файл, rm -r назва-каталога выдаляе каталог з яго змесцівам. Каманда rm -rf прымусова выдаляе без запыту пацвярджэння і можа прывесці да вялікіх страт, калі выканаць яе не ў тым каталогу. Перад выкарыстаннем rm -rf на працоўным серверы абавязкова праверце сваё месцазнаходжанне праз pwd і мэту праз ls. Зрабіць кароткую рэзервовую копію праз tar ці rsync перад крытычнымі аперацыямі — гэта некалькі хвілін працы, якія могуць прадухіліць гадзіны аднаўлення.

Звычка бяспечнага выдалення

Для пачаткоўцаў самы бяспечны метад — замест выдалення спачатку перамясціць файл у каранцінны каталог. Напрыклад, камандамі mkdir /root/karantin і mv padazrony-fajl.php /root/karantin/ можна ізаляваць файл без яго выдалення. Калі сайт працуе без праблем, пазней можна яго канчаткова выдаліць. Гэты падыход асабліва карысны пры ачыстцы шкоднасных файлаў, выдаленні плагінаў і змене тэмы.

Каманды прагляду і рэдагавання змесціва файлаў

Каб убачыць увесь змест файла, выкарыстоўвайце cat файл.txt, для пастаронкавага прагляду — less файл.txt. Для вялікіх лог-файлаў cat можа залішне запоўніць тэрмінал, таму less больш дарэчны. Каб паказаць першыя радкі файла, выкарыстоўвайце head файл.txt, для апошніх радкоў — tail файл.txt. Для сачэння за логам у рэальным часе вельмі каштоўная каманда tail -f /var/log/nginx/error.log.

Для рэдагавання файлаў можна выкарыстоўваць такія рэдактары, як nano, vim ці micro. Для пачаткоўцаў nano самы практычны. Камандай nano .htaccess вы адкрыеце файл, пасля рэдагавання націсніце Ctrl+O для захавання і Ctrl+X для выхаду. Памятайце, што пры рэдагаванні канфігурацыі PHP, блока сервера Nginx, віртуальнага хоста Apache ці robots.txt маленькая памылка друку можа паўплываць на сайт. Добрай практыкай з'яўляецца стварэнне рэзервовай копіі перад зменамі праз cp файл файл.bak.

Кіраванне правамі доступу і ўладальнікам: chmod і chown

На серверах Linux правы доступу да файлаў крытычна важныя для працы і бяспекі сайта. Каманда chmod змяняе правы, chown — уладальніка. Для тыповага сайта часта выкарыстоўваюцца значэнні 755 для каталогаў і 644 для файлаў. Напрыклад, chmod 644 wp-config.php наладжвае правы файла. Для масавай змены правоў у каталогах выкарыстоўваецца логіка find . -type d -exec chmod 755 {} ;, а для файлаў — find . -type f -exec chmod 644 {} ;.

Што да ўладальніка, выкарыстоўваюцца каманды кшталту chown -R www-data:www-data /var/www/назва-сайта, але гэта значэнне можа мяняцца ў залежнасці ад дыстрыбутыва і вэб-сервера. На Ubuntu Apache ці Nginx звычайна выкарыстоўваюць www-data; у асяроддзях тыпу cPanel кожны сайт можа мець уласнага карыстальніка. Няправільны ўладальнік можа выклікаць праблемы з загрузкай ці памылкі 403. Празмерна шырокія правы, напрыклад 777, хоць і могуць здацца хуткім рашэннем, ствараюць уразлівасць у бяспецы. Асабліва ў каталогах загрузак неабходна блакаваць выканальныя файлы і абмяжоўваць правы на запіс.

Асноўныя каманды кантролю дыска, RAM і CPU

Пры праблемах з прадукцыйнасцю першае, куды трэба зірнуць — гэта выкарыстанне рэсурсаў. df -h паказвае ўзровень запаўнення дыскавых раздзелаў. Калі каранёвы раздзел запоўнены на 100 адсоткаў, службы не могуць пісаць логі, база дадзеных можа быць заблакаваная, а сайт — выдаваць памылку 500. Каманда du -sh * паказвае сумарны памер каталогаў у бягучым месцы. Каб знайсці вялікія логі, кэш ці файлы рэзервовых копій, можна выкарыстаць du -ah /var/www | sort -h | tail.

Для кантролю RAM і працэсара выкарыстоўваюцца top ці htop. Калі htop не ўсталяваны, гэта можна зрабіць праз apt install htop ці dnf install htop. Каманда free -m паказвае стан RAM і swap. uptime паведамляе, як доўга сістэма працуе, і паказвае load average. Калі на аднаядзерным серверы значэнне load доўгі час трымаецца вышэй за 1, а на шмат'ядзерным — перавышае колькасць ядраў, гэта можа сведчыць аб праблемах з прадукцыйнасцю. Калі рост трафіку стаў рэгулярным, магчыма, спатрэбіцца больш магутны план ці аптымізацыя; у гэты момант варта разгледзець Linux VPS і Карпаратыўны Хостынг.

Кіраванне службамі: Кантроль Apache, Nginx, PHP і MySQL праз systemctl

У сучасных дыстрыбутывах Linux кіраванне службамі часцей за ўсё ажыццяўляецца праз systemctl. Каб праверыць статус службы, выкарыстоўвайце systemctl status nginx, для перазапуску — systemctl restart nginx, для перазагрузкі канфігурацыі — systemctl reload nginx. Для Apache імем службы можа быць apache2 ці httpd, для PHP-FPM — php8.2-fpm ці падобнае з указаннем версіі, для MySQL — mysql ці mariadb.

Добрая звычка — перад кожным перазапускам правяраць канфігурацыю. Для Nginx выкарыстоўваецца каманда nginx -t, для Apache — apachectl configtest. Калі тэст не пройдзены, перазапуск можа прывесці да адключэння сайта. Напрыклад, калі ў канфігурацыі Nginx прапушчана кропка з коскай, nginx -t пакажа памылку з нумарам радка. Бяспечней спачатку выправіць памылку, а потым выканаць systemctl reload nginx.

Кантрольны спіс хуткай праверкі службаў для вэб-майстра

  • Калі сайт не адкрываецца, спачатку замест ping ці браўзера праверце на серверы systemctl status назва-вэб-службы.
  • Пры памылцы 502 праверце стан PHP-FPM і лог памылак Nginx.
  • Пры памылцы злучэння з базай дадзеных праверце systemctl status mysql і запаўненне дыска.
  • Калі вы змянілі канфігурацыю, па магчымасці выкарыстоўвайце reload замест restart.
  • Перад любымі зменамі рабіце копію .bak адпаведнага файла.

Аналіз логаў: Як знайсці крыніцу памылкі за лічаныя хвіліны

Лог-файлы — гэта як чорная скрыня сервера. Для Nginx часта выкарыстоўваюцца /var/log/nginx/access.log і /var/log/nginx/error.log, для Apache — /var/log/apache2/access.log і /var/log/apache2/error.log. Логі PHP-FPM у залежнасці ад дыстрыбутыва могуць быць у /var/log/php8.2-fpm.log ці ўнутры journalctl. Логі MySQL можна знайсці ў /var/log/mysql/error.log.

Каманда journalctl -xe паказвае апошнія памылкі, звязаныя з сістэмнымі службамі. Для канкрэтнай службы journalctl -u nginx -n 100 выводзіць апошнія 100 запісаў службы Nginx. Для сачэння ў рэальным часе можна выкарыстаць journalctl -u php8.2-fpm -f. Для пошуку пэўнага слова ў логу выкарыстоўваецца каманда grep. Напрыклад, grep 500 access.log дапаможа знайсці коды стану 500. grep -i error файл.log выконвае пошук без уліку рэгістра.

З пункту гледжання SEO, аналіз логаў каштоўны не толькі для вырашэння памылак, але і для ацэнкі краўлінгавага бюджэту і паводзін ботаў. Праз access log можна ўбачыць, якія старонкі наведвае Googlebot, на якіх URL канцэнтруюцца памылкі 404 і якія рэсурсы адказваюць павольна. Для тэхнічнага SEO-аўдыту карысна рэгулярна аналізаваць логі разам з матэрыяламі SEO-сумяшчальны хостынг і Аптымізацыя хуткасці сайта.

Каманды пошуку, фільтрацыі і апрацоўкі тэксту

Каманды пошуку, фільтрацыі і апрацоўкі тэксту

Для пошуку файлаў ці тэксту на серверы магутнымі інструментамі з'яўляюцца каманды find, grep, awk і sed. find /var/www -name wp-config.php шукае пэўны файл. find . -type f -mtime -1 паказвае файлы, змененыя за апошнія 24 гадзіны. Гэтая каманда вельмі карысная пры падазрэнні на несанкцыянаваную змену файлаў. grep -R base64_decode . шукае файлы, якія змяшчаюць base64_decode у бягучым каталогу; хоць гэты выраз не заўсёды азначае шкоднаснасць, ён часта сустракаецца ў шкоднасным PHP-кодзе.

Пры аналізе логаў з дапамогай awk можна выдзяляць пэўныя слупкі. Напрыклад, каб убачыць IP-адрасы з найбольшай колькасцю запытаў у access log, з дапамогай awk вылучаецца слупок IP, а затым сартуецца і падлічваецца праз sort і uniq -c. Такі аналіз дазваляе рана выявіць празмерны бот-трафік, спробы падбору пароляў ці паводзіны, падобныя на DDoS. На больш прасунутым узроўні гэта можна камбінаваць з fail2ban, абмежаваннем частаты запытаў (rate limiting) і WAF.

Перадача файлаў: scp, sftp і rsync

SSH выкарыстоўваецца не толькі для выканання каманд, але і для перадачы файлаў. Каманда scp лакальны-файл карыстальнік@ip-сервера:/шлях/прызначэння адпраўляе файл з вашага кампутара на сервер. Каб забраць з сервера на кампутар, выкарыстоўваецца scp карыстальнік@ip-сервера:/шлях/да/файла ./. Для вялікіх каталогаў rsync больш эфектыўны за scp, бо не перадае паўторна файлы, якія не змяніліся.

Каманда rsync -avz крыніца/ карыстальнік@ip-сервера:/прызначэнне/ выконвае перадачу ў архіўным рэжыме са сцісканнем і падрабязным вывадам. Параметр --delete выдаляе файлы ў месцы прызначэння, якіх няма ў крыніцы; выкарыстоўваць яго трэба асцярожна. rsync — гэта магутнае рашэнне для пераносу WordPress, перадачы файлаў са staging-асяроддзя на працоўнае ці сінхранізацыі з рэзервовым серверам. Калі вы наладжваеце SSL ці пераходзіце на HTTPS, перад перадачай файлаў удакладніце план сертыфікатаў і перанакіравання; змесціва Сертыфікат SSL можа дапамагчы ў гэтым працэсе.

SSH-каманды для стварэння і аднаўлення рэзервовых копій

Рэзервовая копія — гэта страхоўка кіравання серверам. Для файлавай копіі можна выкарыстаць каманду tar -czf site-backup.tar.gz /var/www/назва-сайта. Гэтая каманда пераўтварае каталог у архіў, сціснуты gzip. Каб распакаваць архіў, выкарыстоўваецца tar -xzf site-backup.tar.gz. Для буйных сайтаў бяспечней захоўваць рэзервовую копію па-за вэб-каталогам і па магчымасці перадаваць яе ў аддаленае сховішча.

Для рэзервовай копіі базы дадзеных распаўсюджана каманда mysqldump -u карыстальнік -p назва_бд > backup.sql. Для аднаўлення выкарыстоўваецца mysql -u карыстальнік -p назва_бд < backup.sql. Для вялікіх баз дадзеных час выканання можа быць працяглым; выкарыстанне screen ці tmux дазваляе працягнуць працэс, нават калі злучэнне абарвецца. Напрыклад, вы можаце адкрыць сесію камандай screen -S backup, запусціць працэс рэзервовага капіравання, а затым адлучыцца ад сесіі праз Ctrl+A і D. Пазней вярнуцца можна праз screen -r backup.

Крытычныя налады бяспекі SSH

Бяспека SSH — гэта брама бяспекі сервера. Першая рэкамендацыя — адключыць прамы ўваход пад карыстальнікам root. Замест гэтага ствараецца звычайны карыстальнік з правамі sudo. Каманда adduser webmaster дадае карыстальніка, usermod -aG sudo webmaster дае правы sudo. Затым рэдагуецца канфігурацыя SSH у файле /etc/ssh/sshd_config. Такія налады, як PermitRootLogin no і PasswordAuthentication no, можна выкарыстоўваць разам з уваходам па ключы.

Пасля змены надзвычай важна праверыць канфігурацыю sshd і паспрабаваць падключыцца праз новы тэрмінал, не закрываючы бягучую сесію. Пры няправільнай наладзе вы можаце страціць доступ да сервера. На брандмаўэры камандамі кшталту ufw allow 2222/tcp і ufw enable трэба адкрываць толькі неабходныя парты. Аднак калі вы змянілі порт SSH, не закрываючы старую сесію, пераканайцеся, што можаце падключыцца праз новы порт.

Мінімальны кантрольны спіс бяспекі

  • Выкарыстоўвайце надзейны пароль ці, што лепш, SSH-ключ.
  • Адключыце ўваход пад root і стварыце карыстальніка з правамі sudo.
  • Адключыце непатрэбныя службы і адкрывайце толькі неабходныя парты.
  • Рэгулярна абнаўляйце сістэмныя пакеты: apt update і apt upgrade.
  • Рэгулярна аналізуйце логі; для падазроных IP выкарыстоўвайце fail2ban.
  • Не пакідайце рэзервовыя копіі ў адзіным экзэмпляры на тым жа серверы.

Каманды кіравання пакетамі і абнаўлення

У сістэмах на базе Ubuntu і Debian выкарыстоўваецца apt, у сістэмах на базе RHEL, такіх як AlmaLinux і Rocky Linux, — dnf ці yum. Для Ubuntu apt update абнаўляе спіс пакетаў, apt upgrade абнаўляе ўсталяваныя пакеты. Каб усталяваць пэўны пакет, выкарыстоўвайце apt install nginx, для выдалення — apt remove назва-пакета. У сістэмах на базе RHEL аналагічныя функцыі выконваюць dnf update і dnf install назва-пакета.

Замест выпадковага абнаўлення на працоўным серверы больш правільна рабіць гэта падчас акна абслугоўвання. Асабліва абнаўленні PHP, MySQL, OpenSSL і вэб-сервера могуць паўплываць на паводзіны сайта. Нельга адкладаць крытычныя абнаўленні бяспекі, але прафесійны падыход — спачатку зрабіць рэзервовую копію, праверыць канфігурацыі і па магчымасці пратэставаць у staging-асяроддзі.

Прыклад экстранага рэагавання для вэб-майстроў

Уявіце, што аднойчы раніцай ваш сайт не адкрываецца. Замест панікі самы хуткі шлях — прытрымлівацца стандартнага алгарытму. Спачатку падключыцеся праз SSH. Праверце uptime, каб даведацца, ці адказвае сервер, і load average. Праверце df -h для кантролю запаўнення дыска. Праверце free -m і top для аналізу RAM і CPU. Затым праверце стан вэб-службы праз systemctl status nginx ці apache2. Калі ёсць памылка 502, праверце стан службы PHP-FPM. Калі ёсць памылка базы дадзеных, праверце systemctl status mysql і адпаведны лог-файл.

Пасля гэтага прачытайце апошнія памылкі праз tail -n 100 лог-памылак. Калі праблема пачалася пасля абнаўлення плагіна ці тэмы, знайдзіце апошнія змененыя файлы праз ls -lt. Пры неабходнасці часова пераймянуйце адпаведны каталог. Калі дыск запоўнены, вызначце старыя логі ці непатрэбныя копіі; перад непасрэдным выдаленнем пераканайцеся, што гэта за файлы. Гэтыя крокі дазваляюць звузіць кола прычын у большасці базавых сцэнарыяў прастою на працягу 5-15 хвілін.

Распаўсюджаныя памылкі пры выкарыстанні SSH-каманд

Самая распаўсюджаная памылка — капіраванне і выкананне каманды без яе разумення. Не кожная каманда, знойдзеная ў інтэрнэце, падыходзіць для вашага сервера. Асаблівую рызыку нясуць rm -rf, chmod -R 777, chown -R і каманды выдалення баз дадзеных. Другая памылка — пастаянная праца пад карыстальнікам root. Выкарыстанне sudo, калі патрэбны правы root, змяншае рызыку выпадковай змены сістэмных файлаў.

Трэцяя памылка — унясенне змен без рэзервовай копіі. Нават просты файл канфігурацыі можа вывесці сайт з ладу. Чацвёртая памылка — пастаянны перазапуск службаў без чытання логаў. Перазапуск часам дае часовае рашэнне, але можа схаваць першапрычыну. Пятая памылка — поўнае ігнараванне абнаўленняў бяспекі. Састарэлыя версіі PHP, CMS ці серверных пакетаў павялічваюць паверхню для атакі.

Зводная табліца асноўных SSH-каманд

Зводная табліца асноўных SSH-каманд
АперацыяКамандаКалі выкарыстоўваць?
Падключэннеssh карыстальнік@ip-сервераДля падключэння да сервера праз тэрмінал
Паказаць каталогpwdКаб даведацца, у якой вы папцы
Спісls -lahКаб убачыць файлы, правы, уладальніка і памер
Кантроль дыскаdf -hДля праверкі ўзроўню запаўнення дыска
Памер папкіdu -sh *Каб знайсці, якая папка займае месца
Статус службыsystemctl status nginxКаб убачыць, ці працуе вэб-служба
Сачэнне за логамtail -f лог-памылакДля адсочвання памылак у рэальным часе
Копія файлаўtar -czf копія.tar.gz папкаДля сціскання файлаў сайта
Перадачаrsync -avz крыніца прызначэннеДля сінхранізацыі вялікіх файлаў ці папак
Змена правоўchmod 644 файлДля наладкі правоў доступу да файла

Выснова: Веданне SSH павялічвае хуткасць аперацый вэб-майстра

Кіраванне серверам Linux праз SSH-каманды — гэта базавы навык, неабходны не толькі сістэмным адміністратарам, але і вэб-майстрам, якія кіруюць сур'ёзнымі вэб-праектамі. З правільнымі камандамі кіраванне файламі, аналіз логаў, кантроль службаў, рэзервовае капіраванне і аперацыі бяспекі становяцца больш хуткімі і вымернымі. Для пачатку дастаткова некалькіх каманд; з часам, спалучаючы гэтыя каманды з бяспечнымі звычкамі, вы станеце больш незалежнымі і падрыхтаванымі.

Пры планаванні вашай інфраструктуры хостынгу, VPS, даменаў і SSL на Hostragons, сумесная ацэнка патрэб у SSH-доступе, рэзервовым капіраванні, бяспецы і прадукцыйнасці прывядзе да лепшых доўгатэрміновых вынікаў. Каб выбраць неабходны тып сервера ці ўзмацніць існуючую структуру, вы можаце азнаёміцца з адпаведнымі інструкцыямі Hostragons і вызначыць інфраструктуру, якая адпавядае вашаму праекту, спакойна і згодна з тэхнічнымі патрабаваннямі.

Часта задаваныя пытанні

Ці абавязкова быць root для кіравання серверам Linux праз SSH-каманды?

Не. Больш за тое, на працоўных серверах не рэкамендуецца выкарыстоўваць root наўпрост. Падключэнне пад звычайным карыстальнікам з правамі sudo і выкананне адміністрацыйных задач праз sudo пры неабходнасці — больш бяспечны падыход.

Якія SSH-каманды вэб-майстар-пачатковец павінен вывучыць у першую чаргу?

Прыярытэт трэба аддаць камандам ssh, pwd, cd, ls -lah, cp, mv, rm, nano, df -h, du -sh, top, systemctl, tail -f, grep, tar, scp і rsync. Гэтыя каманды пакрываюць вялікую частку штодзённых задач па файлах, службах, логах і рэзервовых копіях.

Чаму SSH-злучэнне можа быць адхілена?

Самыя распаўсюджаныя прычыны — няправільны IP ці порт, непрацуючая служба SSH, блакіроўка брандмаўэрам, памылковае імя карыстальніка, няправільны файл ключа ці адключаная на серверы налада PasswordAuthentication. Спачатку трэба праверыць порт, карыстальніка і статус службы.

Ці бяспечна выкарыстоўваць chmod 777?

Звычайна не. chmod 777 робіць файл ці каталог даступным для чытання, запісу і выканання ўсімі. Гэта стварае рызыку для бяспекі, асабліва ў вэб-каталогах. У большасці сцэнарыяў больш бяспечным стартавым значэннем з'яўляецца 755 для каталогаў і 644 для файлаў.

Што лепш: рабіць рэзервовую копію праз SSH ці праз панэль?

Магчыма выкарыстоўваць абодва варыянты. Копіі праз панэль практычныя, а копіі праз SSH больш гнуткія і падыходзяць для аўтаматызацыі. Для буйных сайтаў рэзервовае капіраванне праз SSH з выкарыстаннем tar, mysqldump і rsync можа быць больш кантраляваным; найлепшы падыход — гэта рэгулярная, пратэставаная стратэгія рэзервовага капіравання з аддаленай копіяй.

Падзяліцеся гэтым артыкулам:

Каманда Hostragons

Актуальныя кіраўніцтва ад нашай каманды экспертаў па хостынгу, серверах і даменных імёнах. Давайце разам знойдзем правільнае рашэнне для вашага праекта.

Звяжыцеся з намі