Как да използвате Sudo на Debian, CentOS и FreeBSD

Използването на sudoпотребител за достъп до сървър и изпълнение на команди на ниво root е много често срещана практика сред системните администратори на Linux и Unix. Използването на sudoпотребител често е съчетано с деактивиране на директния root достъп до сървъра в опит да се предотврати неоторизиран достъп.

В този урок ще покрием основните стъпки за деактивиране на директния root достъп, създаване на sudo потребител и настройка на sudo групата на CentOS, Debian и FreeBSD.

Предпоставки

  • Новоинсталиран Linux сървър с предпочитана от вас дистрибуция.
  • Текстов редактор, инсталиран на сървъра, независимо дали е nano, vi, vim, emacs.

Стъпка 1: Инсталиране на sudo

Debian

apt-get install sudo -y

CentOS

yum install sudo -y

FreeBSD

cd /usr/ports/security/sudo/ && make install clean

или

pkg install sudo

Стъпка 2: Добавяне на потребителя sudo

А sudoпотребител е нормална потребителски акаунт на Linux или Unix машина.

Debian

adduser mynewusername

CentOS

adduser mynewusername

FreeBSD

adduser mynewusername

Стъпка 3: Добавяне на новия потребител към групата на колелата (по избор)

Групата на колелото е потребителска група, която ограничава броя на хората, които могат suда руутват. Добавянето на вашия sudoпотребител към wheelгрупата е напълно незадължително, но е препоръчително.

Забележка: В Debian sudoгрупата често се намира вместо wheel. Можете обаче ръчно да добавите wheelгрупата с помощта на groupaddкомандата. За целите на този урок ще използваме sudoгрупата за Debian.

Разликата между wheelи sudo.

В CentOS и Debian потребителят, принадлежащ към wheelгрупата, може да изпълнява suи директно да се издига до root. Междувременно sudoпотребителят би използвал sudo suпървия. По същество няма реална разлика с изключение на синтаксиса, използван, за да стане root , и потребителите, принадлежащи към двете групи, могат да използват sudoкомандата.

Debian

usermod -aG sudo mynewusername

CentOS

usermod -aG wheel mynewusername

FreeBSD

pw group mod wheel -m mynewusername

Стъпка 4: Уверете се, че вашият sudoersфайл е настроен правилно

Важно е да се гарантира, че sudoersфайлът, намиращ се в, /etc/sudoersе настроен правилно, за да се позволи sudo usersефективно използване на sudoкомандата. За да постигнем това, ние ще прегледаме съдържанието /etc/sudoersи ще го редактираме, където е приложимо.

Debian

vim /etc/sudoers

или

visudo

CentOS

vim /etc/sudoers

или

visudo

FreeBSD

vim /etc/sudoers

или

visudo

Забележка: В visudoкомандата ще се отвори /etc/sudoersс помощта на предпочитан текстов редактор на системата (обикновено VI или Вим) .

Започнете да преглеждате и редактирате под този ред:

# Allow members of group sudo to execute any command

Този раздел /etc/sudoersчесто изглежда така:

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

В някои системи може да не намерите %wheelвместо %sudo; в този случай това ще бъде линията, под която ще започнете да променяте.

Ако редът, започващ с %sudoв Debian или %wheelв CentOS и FreeBSD, не е коментиран (с префикс #) , това означава, че sudo вече е настроен и е активиран. След това можете да преминете към следващата стъпка.

Стъпка 5: Разрешаване на потребител, който не принадлежи wheelнито към sudoгрупата, нито към групата, да изпълни sudoкомандата

Възможно е да се позволи на потребител, който не е в нито една потребителска група, да изпълни sudoкомандата, като просто ги добавите към, /etc/sudoersкакто следва:

anotherusername ALL=(ALL) ALL

Стъпка 6: Рестартиране на SSHD сървъра

За да приложите промените, които сте направили към /etc/sudoers, трябва да рестартирате SSHD сървъра, както следва:

Debian

/etc/init.d/sshd restart

CentOS 6

/etc/init.d/sshd restart

CentOS 7

systemctl restart sshd.service

FreeBSD

/etc/rc.d/sshd start

Стъпка 7: Тестване

След като рестартирате SSH сървъра, излезте и след това влезте отново като вашия sudo user, след което опитайте да изпълните някои тестови команди, както следва:

sudo uptime
sudo whoami

Всяка от командите по-долу ще позволи на sudo userда стане root.

sudo su -
sudo -i
sudo -S

бележки:

  • В whoamiкомандата ще върне rootв комбинация със sudo.
  • Ще бъдете подканени да въведете паролата на вашия потребител, когато изпълнявате sudoкомандата, освен ако изрично не инструктирате системата да не подканва sudo usersза техните пароли. Моля, имайте предвид, че това не е препоръчителна практика.

По избор: разрешаване sudoбез въвеждане на парола на потребителя

Както беше обяснено по-горе, това не е препоръчителна практика и е включена в този урок само за демонстрационни цели.

За да позволите sudo userда изпълните sudoкомандата, без да бъдете подканени за тяхната парола, добавете суфикс на реда за достъп /etc/sudoersсъс NOPASSWD: ALLследното:

%sudo   ALL=(ALL:ALL) ALL   NOPASSWD: ALL

Забележка: Трябва да рестартирате вашия SSHD сървър, за да приложите промените.

Стъпка 8: Деактивирайте директния root достъп

След като потвърдихте, че можете да използвате вашия sudo userбез проблеми, е време за осмата и последна стъпка, деактивиране на директния root достъп.

Първо отворете /etc/ssh/sshd_configс любимия си текстов редактор и намерете реда, съдържащ следния низ. Може да има префикс със #знак.

PermitRootLogin

Независимо от префикса или стойността на опцията в /etc/ssh/sshd_config, трябва да промените този ред на следното:

PermitRootLogin no

Накрая рестартирайте вашия SSHD сървър.

Забележка: Не забравяйте да тествате промените си, като се опитате да свържете SSH към вашия сървър като root. Ако не можете да го направите, това означава, че сте изпълнили успешно всички необходими стъпки.

Това завършва нашия урок.


Как да инсталирате Tiny Tiny RSS Reader на FreeBSD 11 FAMP VPS

Как да инсталирате Tiny Tiny RSS Reader на FreeBSD 11 FAMP VPS

Използване на различна система? Tiny Tiny RSS Reader е безплатен четец и агрегатор с отворен код, самостоятелно хостван уеб базиран новинарски канал (RSS/Atom), предназначен да

Как да инсталирате Wiki.js на FreeBSD 11

Как да инсталирате Wiki.js на FreeBSD 11

Използване на различна система? Wiki.js е безплатно и модерно уики приложение с отворен код, изградено на Node.js, MongoDB, Git и Markdown. Изходният код на Wiki.js е публичен

Как да инсталирате Pagekit 1.0 CMS на FreeBSD 11 FAMP VPS

Как да инсталирате Pagekit 1.0 CMS на FreeBSD 11 FAMP VPS

Използване на различна система? Pagekit 1.0 CMS е красива, модулна, разширяема и лека, безплатна система за управление на съдържанието (CMS) с отворен код с

Как да инсталирате MODX Revolution на FreeBSD 11 FAMP VPS

Как да инсталирате MODX Revolution на FreeBSD 11 FAMP VPS

Използване на различна система? MODX Revolution е бърза, гъвкава, мащабируема система за управление на съдържанието (CMS) от корпоративен клас, написана на PHP. То и

Настройка на OpenBSD 5.5 64-битов

Настройка на OpenBSD 5.5 64-битов

Тази статия ви превежда през настройката на OpenBSD 5.5 (64-битов) на KVM с Vultr VPS. Стъпка 1. Влезте в контролния панел на Vultr. Стъпка 2. Щракнете върху РАЗГРАЖДАНЕ

Как да инсталирате osTicket на FreeBSD 12

Как да инсталирате osTicket на FreeBSD 12

Използване на различна система? osTicket е система за билети за поддръжка на клиенти с отворен код. Изходният код на osTicket се хоства публично на Github. В този урок

Как да инсталирате Flarum Forum на FreeBSD 12

Как да инсталирате Flarum Forum на FreeBSD 12

Използване на различна система? Flarum е безплатен софтуер за форуми от следващо поколение с отворен код, който прави онлайн дискусията забавна. Изходният код на Flarum се хоства o

Как да активирате TLS 1.3 в Nginx на FreeBSD 12

Как да активирате TLS 1.3 в Nginx на FreeBSD 12

Използване на различна система? TLS 1.3 е версия на протокола за сигурност на транспортния слой (TLS), който беше публикуван през 2018 г. като предложен стандарт в RFC 8446

Инсталирайте WordPress на OpenBSD 6.2

Инсталирайте WordPress на OpenBSD 6.2

Въведение WordPress е доминиращата система за управление на съдържанието в интернет. Той захранва всичко от блогове до сложни уебсайтове с динамично съдържание

Как да инсталирате Subrion 4.1 CMS на FreeBSD 11 FAMP VPS

Как да инсталирате Subrion 4.1 CMS на FreeBSD 11 FAMP VPS

Използване на различна система? Subrion 4.1 CMS е мощна и гъвкава система за управление на съдържанието (CMS) с отворен код, която носи интуитивно и ясно съдържание

Как да конфигурирате DJBDNS на FreeBSD

Как да конфигурирате DJBDNS на FreeBSD

Този урок ще ви покаже как да конфигурирате DNS услуга, която е лесна за поддръжка, лесна за конфигуриране и която като цяло е по-сигурна от класическия BIN

Как да инсталирате стека Nginx, MySQL и PHP (FEMP) на FreeBSD 12.0

Как да инсталирате стека Nginx, MySQL и PHP (FEMP) на FreeBSD 12.0

FEMP стек, който е сравним с LEMP стек в Linux, е колекция от софтуер с отворен код, който обикновено се инсталира заедно, за да даде възможност на FreeBS

Инсталиране на MongoDB на FreeBSD 10

Инсталиране на MongoDB на FreeBSD 10

MongoDB е NoSQL база данни от световна класа, която често се използва в по-новите уеб приложения. Той осигурява заявки с висока производителност, разделяне и репликация

Как да инсталирате Monica на FreeBSD 12

Как да инсталирате Monica на FreeBSD 12

Използване на различна система? Monica е система за управление на лични взаимоотношения с отворен код. Мислете за него като за CRM (популярен инструмент, използван от търговските екипи в th

OpenBSD като решение за електронна търговия с PrestaShop и Apache

OpenBSD като решение за електронна търговия с PrestaShop и Apache

Въведение Този урок демонстрира OpenBSD като решение за електронна търговия, използващо PrestaShop и Apache. Apache е необходим, тъй като PrestaShop има сложен UR

Инсталиране на Fork CMS на FreeBSD 12

Инсталиране на Fork CMS на FreeBSD 12

Използване на различна система? Fork е CMS с отворен код, написан на PHP. Изходният код на Forks се хоства на GitHub. Това ръководство ще ви покаже как да инсталирате Fork CM

Как да инсталирате Directus 6.4 CMS на FreeBSD 11 FAMP VPS

Как да инсталирате Directus 6.4 CMS на FreeBSD 11 FAMP VPS

Използване на различна система? Directus 6.4 CMS е мощна и гъвкава, безплатна и с отворен код Headless Content Management System (CMS), която предоставя на разработчиците

Повишаване на сигурността за FreeBSD с помощта на IPFW и SSHGuard

Повишаване на сигурността за FreeBSD с помощта на IPFW и SSHGuard

VPS сървърите често са насочени от натрапници. Често срещан тип атака се появява в системните регистрационни файлове като стотици неоторизирани опити за влизане в ssh. Настройвам

Настройте httpd в OpenBSD

Настройте httpd в OpenBSD

Въведение OpenBSD 5.6 въведе нов демон, наречен httpd, който поддържа CGI (чрез FastCGI) и TLS. Не е необходима допълнителна работа за инсталиране на новия http

Настройте iRedMail на FreeBSD 10

Настройте iRedMail на FreeBSD 10

Този урок ще ви покаже как да инсталирате груповия софтуер iRedMail на нова инсталация на FreeBSD 10. Трябва да използвате сървър с поне един гигабайт o

Възходът на машините: Реални приложения на AI

Възходът на машините: Реални приложения на AI

Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.

DDOS атаки: кратък преглед

DDOS атаки: кратък преглед

Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.

Чудили ли сте се как хакерите печелят пари?

Чудили ли сте се как хакерите печелят пари?

Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.

Революционни изобретения на Google, които ще улеснят живота ви.

Революционни изобретения на Google, които ще улеснят живота ви.

Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.

Еволюция на съхранението на данни – инфографика

Еволюция на съхранението на данни – инфографика

Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.

Функционалности на референтните архитектурни слоеве за големи данни

Функционалности на референтните архитектурни слоеве за големи данни

Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече