Как исправить файлы в etc

13.09.2019

linux-logo

Так или иначе, когда-нибудь нам суждено столкнуться с правкой файла /etc/sudoers …и не всегда редактирование заканчивается успешно, если ты такой же «удачливый» как и Я, то ты пришел по адресу.

Обычная ситуация, вам нужно что-то подкорректировать в файле /etc/sudoers. Но как говориться: «Никто не застрахован от ошибок», и я тут не исключение. Вместо команды sudo visudo я отредактировал файл с помощью стандартного sudo nano /etc/sudoers и после сохранения всех правок и попытке использовать права  суперпользователя, система выдала ошибку:

>>> /etc/sudoers: syntax error near line 23 <<<
sudo: parse error in /etc/sudoers near line 23
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin

Что тут сказать, повредил синтаксис файла sudoers.

Все попытки открыть файл на редактирование заканчивается неудачей.

Скажу больше, после редактирования данного файла, вообще нет возможности войти под root пользователем, т.к. sudo теперь тоже не работает.

Как исправить повреждённый файла sudoers

Способ решение в сложившейся проблемы достаточно тривиальный, надо использовать:

pkexec visudo

Пуфффф…И вопрос с редактированием /etc/sudoers решится сам собой. А если потребуется отредактировать файлы в директории /etc/sudoers.d/ то можно ввести:

pkexec visudo -f /etc/sudoers.d/

Но в этот раз что-то пошло не так, и я получил в ответ:

==== AUTHENTICATING FOR org.freedesktop.policykit.exec ===
Authentication is needed to run `/usr/sbin/visudo' as the super user
Authenticating as: user,,, (name) Password:  polkit-agent-helper-1:
error response to PolicyKit daemon: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: No session for cookie
==== AUTHENTICATION FAILED === 
Error executing command as another user: Not authorized
This incident has been reported.

Интересная ситуация, чтобы редактировать sudoers мне нужны права суперпользователя, но получить я их могу, только «починив» файл sudoers — замкнутый круг.

Но есть гениальный выход из этой ситуации:

Откройте два сеанса ssh к серваку (или работа в двух терминалах или две вкладки в терминале).

В первом сеансе получим PID bash вашей сессии:

echo $$

Во второй запустите агент аутентификации с помощью:

pkttyagent --process Ваш_PID

Вернувшись в первый сеанс, запустите:

pkexec visudo

На втором сеансе вы получите приглашение пароля:

==== AUTHENTICATING FOR org.freedesktop.policykit.exec ===
Для запуска приложения `/usr/sbin/visudo' от имени суперпользователя требуется аутентификация
Authenticating as: user,,, (name)
Password: 
==== AUTHENTICATION COMPLETE ===

visudo запуститься в первой сессии.

Туда-сюда, туда-сюда и проблема решена! Ну и напоследок совет, при правках используйте sudo visudo, т.к. он проверяет синтаксис перед сохранением файла, и если что-то пойдет не так, то выдаст предупреждение:

>>> /etc/sudoers: syntax error near line 30 <<<
What now?                                             #Что будем делать?
Options are:
  (e)dit sudoers file again                           #снова редактировать
  e(x)it without saving changes to sudoers file       #выйти без сохранения
  (Q)uit and save changes to sudoers file (DANGER!)   #сохранить изменения (3,14ЗДЕЦ!)
What now? x

Если есть вопросы, то пишем в комментариях.

Также можете вступить в Телеграм канал, ВКонтакте или подписаться на Twitter. Ссылки в шапке страницы.
Заранее всем спасибо!!!

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

4.3
6
голоса

Рейтинг статьи

sudoedit /etc/ipsec.secrets

Как говорит EXL допустимо, но не рекомендуется. А за совет chmod -R 777 /etc/ipsec.secrets руки отрывать нужно.

mogwai ★★★★

(03.12.16 19:53:57 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от mogwai 03.12.16 19:53:57 MSK

Ответ на:

комментарий
от Linkolness 03.12.16 19:57:37 MSK

Когда будешь знать что происходит — сам уже решишь что с этим делать. Самый правильный совет тебе всё-равно никто кроме тебя самого не даст.

Goury ★★★★★

(03.12.16 20:01:19 MSK)



Последнее исправление: Goury 03.12.16 20:02:18 MSK
(всего

исправлений: 1)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от Goury 03.12.16 20:01:19 MSK

Английский учу, но до чтения тех документации пока далековато. Изучать Линукс-гуд, но для реализации тех задач, что я на него возложил мне нужно сперва отредактировать этот долбаный файл)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от Linkolness 03.12.16 19:57:37 MSK

sudo vi запускает от рута редактор, sudoedit делает копию нужного тебе файла, который открывает в редакторе запущенном из под твоего пользователя. После закрытия редактора изменённая копия заменит исходный файл.

mogwai ★★★★

(03.12.16 20:08:54 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от mogwai 03.12.16 20:08:54 MSK

сделал все как вы сказали, вот такую ошибку выбило
E325: ATTENTION
Found a swap file by the name «/etc/.ipsec.secrets.swp»
owned by: root dated: Sat Dec 3 19:02:35 2016
file name: /etc/ipsec.secrets
modified: YES
user name: root host name: fedya-STOLL
process ID: 4344
While opening file «/etc/ipsec.secrets»
dated: Tue Apr 5 15:44:54 2016

  • Показать ответы
  • Ссылка

Ответ на:

комментарий
от Linkolness 03.12.16 20:12:55 MSK

Нашло временный файл от другой инстанции. Может в соседнем окне не закрыли ви из под рута?
Сейчас можете просто удалить его sudo rm -f /etc/.ipsec.secrets.swp, на будущее хорошо бы английский подучить, да разобраться с тем как работает используемый редактор.

mogwai ★★★★

(03.12.16 20:17:01 MSK)

  • Ссылка

Ответ на:

комментарий
от Linkolness 03.12.16 20:12:55 MSK

ага, кажется понял, ошибка из за того что я открыл файл сначала в vi потом, незная как выйти, просто закрыл терминал и сейчас мне сообщается что файл открыт в другом редакторе, как сделать выход из vi?

  • Показать ответы
  • Ссылка

Ответ на:

комментарий
от Linkolness 03.12.16 20:17:16 MSK

Именно.

или ZZ (две заглавные Z).
vi – сложнее обычного редактора. Установи vim и запусти vimtutor – интерактивный самоучитель по vim/vi.

mogwai ★★★★

(03.12.16 20:20:01 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от mogwai 03.12.16 20:20:01 MSK

не получается выйти, то что я сейчас вижу в окне терминала, выглядит вот так. буквы А, B -реакция на попытку перемещения курсора влево или вправо
ZZ

B:q
:q
A
B
B
B

B
udo rm -f /etc/.ipsec.secrets.swp, This file holds shared secrets or RSA private keys for authentication.

# RSA private key for this host, authenticating it to any other host
# which knows the public part.

~
~
~
~
~
~

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от Linkolness 03.12.16 20:17:16 MSK

незная как выйти

в этом и был повох ) про vi даже онекдот есть

anonymous

(03.12.16 20:37:02 MSK)

  • Ссылка

Ответ на:

комментарий
от Linkolness 03.12.16 20:30:59 MSK

Просто удали этот .swp файл. И перед тем как использовать vim/vi потрать 30 минут на vimtutor

mogwai ★★★★

(03.12.16 20:37:42 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от mogwai 03.12.16 20:37:42 MSK

все, удалил, ввел sudo edit…/ipsec.secrets
открылось «окно» редактора, как я понял vi
но не могу допереть куда нужно вписать нужные мне данные, никакие символы не вводятся, выглядит все как-то так:
# This file holds shared secrets or RSA private keys for authentication.

# RSA private key for this host, authenticating it to any other host
# which knows the public part.

~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от Linkolness 03.12.16 20:49:47 MSK

короче суть вот в чем мне нужно сделать вот это
To enter your credentials you need to edit /etc/ipsec.secrets file. You should add one line in the following format. Replace YOUR_USERNAME with your hide.me username and YOUR_PASSWORT with your hide.me password. Notice the whitespace after YOUR_USERNAME, after “:” and after «EAP

как я понял мне нужно отредактировать файл и внести в него пару логин:пароль но как я писал выше, при открытии через файла посредством vi, не могу разобраться куда вводить и каким образом. Прошу помочь

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от Linkolness 03.12.16 20:53:05 MSK

Не надо не vi не vim. Это сложный редактор и с наскока в нём чёрт ногу сломит.

Используйте nano. Он похож на обычный редактор:

sudo nano /etc/ipsec.secrets

Внесите изменения в файл. Затем нажмите Ctrl-X. Потом Y (если спросит, Y значит yes). Затем enter.

lexazloy

(03.12.16 21:16:40 MSK)

  • Показать ответы
  • Ссылка

Ответ на:

комментарий
от lexazloy 03.12.16 21:16:40 MSK

открыть через nano получилось, но с редактированием та же проблема, символы не вводятся
выглядит все так:
File /etc/ipsec.secrets is being edited (by root with VIM 7.4, PID 4862); continue?
ниже как вы и писали предложения с вариантами Y, N но даже это не вводится

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от Linkolness 03.12.16 21:25:47 MSK

Вообщем разобрался и с этим, внес изменения через nano вконце попросило указать имя файла для сохранения, я ввел то же(ipsec.secrets) подумав, что отредактированная копия заменить основную. Но когда по завершении, открыл файл в vi, то не увидел там тех строк, которые я перед этим вписал в nano

  • Ссылка

Ответ на:

комментарий
от Linkolness 03.12.16 20:05:41 MSK

Откуда ты можешь это знать, если ты даже не знаешь что такое права в контексте файловой системы?
Если бы тебе и правда надо было бы отредактировать файл для решения задачи — ты бы уже знал всё что надо про файлы.
Но ты не знаешь. А значит и задачу ты придумал себе без представления о контексте её выполнения. А значит задача некорректна изначально.

Goury ★★★★★

(03.12.16 23:33:54 MSK)

  • Ссылка

Ответ на:

комментарий
от lexazloy 03.12.16 21:16:40 MSK

export EDITOR=nano
sudoedit /etc/ipsec.secrets

anonymous

(08.12.16 00:53:12 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от anonymous 08.12.16 00:53:12 MSK

1. Автору вопроса эта дефолтный консольный редактор не нужен.

2. Мало кому нужна муть с временным файлом.

Мой вим помнит историю изменений и чтобы откатиться мне достаточно одной команды.

lexazloy

(08.12.16 14:07:13 MSK)

  • Ссылка

Ответ на:

комментарий
от saahriktu 08.12.16 01:04:39 MSK

Ответ на:

комментарий
от lexazloy 08.12.16 14:11:45 MSK

Ситуации разные бывают. Если это на работе, то вообще подозрительно, что юзеру дали sudo. Если же специфика работы другая, и всем 3,5 человек спокойно раздают sudo, то можно попробовать договориться с админом на смену root’ового пароля на новый уникальный известный юзеру. Чтобы он спокойно у себя редактировал настройки в /etc, но при этом этот пароль не подходил к другим машинам. А может человек и сам есть админ, и редактирует свои настройки в /etc в серверной, или вообще у себя дома. И зачем тогда себя ограничивать?

saahriktu ★★★★★

(08.12.16 14:18:21 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от saahriktu 08.12.16 14:18:21 MSK

Если им раздают sudo, то договариваться о паролях не надо. Для этого sudo и придумали.

sudo это современный, функциональный инструмент, который покрывает необходимый функционал.

А вам просто больше нравится su и вы ищете оправдания его использования. 😉

lexazloy

(08.12.16 14:28:14 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от EXL 03.12.16 19:49:06 MSK

Ответ на:

комментарий
от lexazloy 08.12.16 14:28:14 MSK

Может и так, но всё равно подозрительно. Если юзеру не доверяют, то как ему можно доверить sudo? Мало ли что он натворит, вдруг его машина, например, внезапно начнёт DDoS’исить всю локальную сеть организации, и она понесёт убытки? А если юзеру доверять можно, то ему можно и root’овый пароль вручить. А sudo – ни рыба, ни мясо. Вроде как и доверяют, но не совсем.

saahriktu ★★★★★

(08.12.16 14:47:13 MSK)



Последнее исправление: saahriktu 08.12.16 14:48:20 MSK
(всего

исправлений: 1)

  • Показать ответы
  • Ссылка

Ответ на:

комментарий
от saahriktu 08.12.16 14:47:13 MSK

sudo – доверяй, но проверяй. 🙂

Это не только вопрос доверия, но и удобства. Взять тот же пароль:

1. нам не надо помнить оба, достаточно одного своего;

2. если пользователь лишается прав, не надо стирать ему память менять пароль;

2. руту не обязательно иметь пароль вообще.

lexazloy

(08.12.16 15:44:59 MSK)

  • Показать ответы
  • Ссылка

Ответ на:

комментарий
от lexazloy 08.12.16 15:44:59 MSK

sudo – угроза безопасности, если комп похакали извне с правами юзера (через браузер например).

praseodim ★★★★★

(08.12.16 16:00:04 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от praseodim 08.12.16 16:00:04 MSK

sudo не исключает наличие пароля.

Если пароль перехватывается, то безопаснее отдать злоумышленнику пользовательский пароль, чем пароль от root.

Так же своевременная изоляция взломанного компьютера позволит избежать утечки единственного главного пароля и смены его в темпе вальса, а так же передачи новой информации (о смене) остальным пользователям имеющим доступ.

Не стоит забывать и о логирование sudo. Мониторинг входа конкретного пользователя в конкретный временной период поможет устранить вероятные проблемы и возможный ущерб нанесённый недоброжелателем.

lexazloy

(08.12.16 16:50:32 MSK)

  • Ссылка

Ответ на:

комментарий
от lexazloy 08.12.16 15:44:59 MSK

Ну, в современном мире много лишних сущностей. Можно и с ними, но можно и без них. Ну, и всем удобно разное, да.

Тот же Ричард Столлман вспоминал как хакеры прежних лет в первых юниксах вообще не торопились вводить права и пароли. Не хотели предоставлять системным администраторам инструменты контроля за ними. А когда всё-таки начались подвижки в этом направлении, то им стало интересно найти способ сбрасывать пароли на пустые. И они таки это делали. После чего отправляли этим людям сообщения наподобие: «Пожалуйста, не надо устанавливать пароль! В следующий раз просто нажмите Enter – так всем проще!».

А сейчас… Пароли, шифрование, информационная безопасность,…

saahriktu ★★★★★

(08.12.16 17:02:19 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от saahriktu 08.12.16 17:02:19 MSK

Так компьютер у них был большой, а окружение товарищей маленькое, да ещё и сплочённое общим интересом. К тому же всякая интеллектуальная студентота топовых мировых вузов. Раньше в МТИ и Беркли дураков даже за деньги не брали, это сейчас всякие gender studies.

Моей семье и друзьям, например, ключи от моей квартиры не нужны – приходите. Но вот я всё равно запираю потому что мир не ограничивается моим кругом.

Ужасный век, ужасные сердца. 🙂

lexazloy

(09.12.16 03:05:50 MSK)

  • Ссылка

Ответ на:

комментарий
от saahriktu 08.12.16 14:47:13 MSK

Обычно sudo используют вместо su. Но в /etc/sudoers можно довольно тонко настроить права, что кому можно, а что нельзя. См. man sudoers. Кроме того, можно настроить так, чтоб при выполнении любой команды sudo, root получал сообщение о том, кто какую команду выполнил. Правда, обходится это просто: sudo bash и дальше любые команды (правда это предположение, не проверял). Ну и просто позволяет избежать частых ошибок, когда человек выполняет su для привилегированных операций, а выйти забывает, оставаясь под рутом, что опасно. В sudo же за раз выполняется одна команда, но и пароль каждый раз вводить не надо. Наконец, sudoers можно настроить так, чтоб sudo запрашивала пароль рута, а не пользователя. В общем, очень гибкая команда, просто мало кто об этом знает и всем этим пользуется.

  • Ссылка

опытом работы с линукс в 1 день
etc/ipsec.secrets

Обратись к более компетентному специалисту. После таких как ты разгребать приходится иногда конкретные говна.

Deleted

(09.12.16 03:47:33 MSK)

  • Ссылка

Ответ на:

комментарий
от saahriktu 08.12.16 14:47:13 MSK

сорри, слегка ошибся

Кроме того, можно настроить так, чтоб при выполнении любой команды sudo, root получал сообщение о том, кто какую команду выполнил. Правда, обходится это просто: sudo bash и дальше любые команды (правда это предположение, не проверял).

Небольшая ошибочка. Рут (или судо-пользователь) получает сообщения в /var/mail/root|user в случае неудачной попытки выполнить sudo (3 раза неверный пароль), и настраивать для этого ничего не надо. В случае неудачной попытки выполнить su ничего не приходит (по крайней мере у меня).

А все команды sudo могут писаться в лог, но для этого надо настроить /etc/sudoers таким образом:

Defaults logfile=/var/log/sudolog

И да, при выполнении sudo bash все дальнейшие команды, вводимые из привилегированной bash, как я и предполагал, в этот лог не попадают.

  • Ссылка

накладывай патч на этапе сборки того пакета, в котором содержится этот файл. Единственный Ъ-вей

anonymous

(11.12.16 03:30:57 MSK)

  • Ссылка

Ответ на:

комментарий
от EXL 03.12.16 19:49:06 MSK

совсем новичек

sudo vi /etc/ipsec.secrets

слышу твой дикий гогот за кадром.

Deleted

(11.12.16 03:42:37 MSK)

  • Ссылка

Ответ на:

комментарий
от saahriktu 08.12.16 01:04:39 MSK

И koi

Deleted

(14.12.16 14:57:50 MSK)

  • Ссылка

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.

Редактирование HOST файла

Для доступа к любым сайтам в Интеренете компьютеру необходимо знать его IP-адрес. В подавляющем большинстве случаев для этого используется запрос к службе системы доменных имен – DNS (Domain Name System), который автоматически сопоставляет имя запрашиваемого сайта и его фактический IP-адрес. Служба DNS выполняет операцию по преобразованию имени сайта в понятный для компьютера IP-адрес. Во всех современных операционных системах Windows, Linux и Mac OS существует системный файл hosts (текстовый файл не имеющий расширения), который так же как и DNS используется для сопоставления имен узлов с IP-адресами.

Запрос к файлу HOSTS имеет более высокий приоритет перед запросом к DNS-серверам.

В отличие от DNS, содержимое файла hosts определяется администратором компьютера, и позволяет задать соответствие IP-адресов для любых хостов и доменных имён.

По умолчанию запросы выполняются в следующей последовательности:

  1. Если запрашиваемое имя сайта (хоста) присутствует в файле hosts , то его IP-адрес берётся из этого файла и запрос к DNS серверу не выполняется.
  2. Если в файле hosts имя сайта (хоста) не найдено, то выполняется запрос к DNS серверу.

Расположение файла hosts в системе:

Расположение файла hosts в различных операционных системах
Расположение файла hosts в различных операционных системах

В операционных системах семейства Windows файл hosts располагается в по адресу: C:WindowsSystem32Driversetc.

Расположение файла HOST в Windows-системах
Расположение файла HOST в Windows-системах

В ряlе случаев в операционных системах Windows расположение файла hosts может быть изменено. В данном случае путь к файлу может быть произвольным и задается в системном реестре, за это отвечает переменная DataBasePath располагающаяся в ветке реестра:

HKLM/SYSTEM/CurrentControlSet/services/Tcpip/Parameters

Задание пути к файлу HOST в реестре Windows
Задание пути к файлу HOST в реестре Windows

Файл hosts является системным и скрытым, для того что бы его увидеть нужно в параметрах папки включить отображение скрытых файлов и папок, как показано на рисунке ниже:

Включить опцию отображения скрытых файлов и папок
Включить опцию отображения скрытых файлов и папок

Содержание файла hosts для операционных систем семейства Windows по умолчанию выглядит вот так:

Содержимое файла HOSTS в операционной системе Windows 10
Содержимое файла HOSTS в операционной системе Windows 10

Обычно там присутствуют две строки для обозначения локального хоста (localhost):

127.0.0.1 localhost (или “0.0.0.0 localhost”)
::1 localhost

Запись “127.0.0.1 localhost” или “0.0.0.0 localhost” (в зависимости от используемой версии Windows) используется для для протокола IPv4, а запись “::1 localhost“, соответственно, для протокола IPv6. Также в заголовке файла могут присутствовать различные строки содержащие в начале строки символ # (решетка), который означает, что данные строки являются комментариями и не учитываются системой.

localhost — («локальный хост», этот компьютер) — стандартное, официально зарезервированное, доменное имя для частных IP-адресов.
То есть, ни один сайт, в сети Интеренет, не может иметь доменное имя localhost и IP-адрес из указанного диапазона 127.0.0.1 – 127.255.255.255.

Основные правила редактирования файла hosts:

Как было сказано ранее, файл hosts является обычным текстовым файлом без расширения. При его редактировании необходимо соблюдать определенные требования:

  • Каждая запись хоста должна располагаться на отдельной строке;
  • первым в строке указывается IP-адрес хоста, например “127.0.0.1“;
  • далее следует разделитель – символ пробела или табуляции;
  • далее указывается имя хоста (ресурса), например “mc.yandex.ru“;
  • далее через разделитель может быть указан коментарий, который должен начинаться с символа “# ” (решётка), необязательное поле.
пример записи в файле HOST
пример записи в файле HOST

Зачем может понадобиться правка файла hosts:

Перенаправление доменов

Особенность файла hosts в том, что он имеет приоритет перед обращением к DNS-серверам. Перенаправление доменов используется программистами и администраторами интрасети (например, перенаправление local на узлы интрасети), а также для ускорения загрузки сайтов путём сопоставления их IP-адресов доменным именам. Например:

173.194.32.184 google.com # редирект с google.com на google.ru

Данная запись в файле hosts означает, что для сайта “google.com” установлен редирект на адрес “173.194.32.184”. Данный адрес является IP-адресом локальной версии сайта Google – google.ru. Теперь, если в адресной строке браузера набрать адрес сайта “google.com” то хост-файл в соответствии с правилом переадресует браузер на локальное зеркало “google.ru”. Такой способ использовался раньше для ускорения загрузки страниц, но в настоящее время практически не используется.

Данным способом часто пользуются вирусы, подменяя за счет редиректа настоящие сайты – их внешне идентичными но поддельными копиями.
Но об этом поговорим позже.

Блокировка ресурсов и рекламы

С помощью файла hosts можно легко и эффективно управлять доступом к определенным сайтам в сети Интернет и осуществлять фильтрацию рекламы путём их блокирования, т.е. перенаправления адресов рекламных и баннерных сайтов на адрес локального хоста – “127.0.0.1” или “0.0.0.0”. Особой разницы что именно вписывать в hosts – нет, поскольку:

  • “127.0.0.1” – это специальный зарезервированный адрес который является частью сети 127/8 и указывающий на loopback интерфейс локального компьютера – localhost.
  • “0.0.0.0” – это специальный немаршрутизируемый мета-адрес, используемый для обозначения недопустимого, неизвестного или несуществующего хоста.

Используя перенаправление можно легко заблокировать нежелательные сайты, прописав в hosts файл соответствующие записи для развлекательных сайтов, например в организациях часто блокируют доступ к сайтам “ВКонтакте” и “Одноклассники”, достаточно добавить в hosts файл строки следующего содержания:

127.0.0.1 vk.com
127.0.0.1 www.vk.com
127.0.0.1 vkontakte.ru
127.0.0.1 www.vkontakte.ru
127.0.0.1 ok.ru
127.0.0.1 www.ok.ru
127.0.0.1 odnoklassniki.ru
127.0.0.1 www.odnoklassniki.ru

Таким же образом можно заблокировать нежелательную рекраму, которая вылезает на сайтах и тормозит открытие веб-страниц.
Для блокировки рекламы Rндекса, попробуйте добавите в hosts следующие строки:

0.0.0.0 advertising.yandex.ru
0.0.0.0 www.advertising.yandex.ru
0.0.0.0 audience.yandex.ru
0.0.0.0 www.audience.yandex.ru
0.0.0.0 direct.yandex.ru
0.0.0.0 www.direct.yandex.ru
0.0.0.0 metrika.yandex.ru
0.0.0.0 www.metrika.yandex.ru
0.0.0.0 partner.yandex.ru
0.0.0.0 www.partner.yandex.ru
0.0.0.0 yandexdatafactory.com
0.0.0.0 www.yandexdatafactory.com
0.0.0.0 partner.yandex.ua
0.0.0.0 www.partner.yandex.ua
0.0.0.0 metrika.yandex.ua
0.0.0.0 www.metrika.yandex.ua
0.0.0.0 metrica.yandex.com
0.0.0.0 www.metrica.yandex.com
0.0.0.0 metrica.yandex.ru
0.0.0.0 www.metrica.yandex.ru
0.0.0.0 clck.yandex.ru
0.0.0.0 www.clck.yandex.ru
0.0.0.0 mc.yandex.ru
0.0.0.0 www.mc.yandex.ru
0.0.0.0 yabs.yandex.ru
0.0.0.0 www.yabs.yandex.ru
0.0.0.0 yabs.yandex.ua
0.0.0.0 www.yabs.yandex.ua
0.0.0.0 an.yandex.ru
0.0.0.0 www.an.yandex.ru
0.0.0.0 an.yandex.ua
0.0.0.0 www.an.yandex.ua
0.0.0.0 3ds.money.yandex.ru
0.0.0.0 abo.market.yandex.ru
0.0.0.0 bs.yandex.ru
0.0.0.0 click.yandex.ru
0.0.0.0 mc.yandex.ru
0.0.0.0 market-click2.yandex.ru
0.0.0.0 partner.market.yandex.ru
0.0.0.0 www.adv.yandex.ru
0.0.0.0 yandex-question.naydex.net
0.0.0.0 naydex.net
0.0.0.0 yandexadexchange.net

Обратите внимание, что блокируя рекламные хосты вы тем самым нарушаете привычное отображение страниц, может “поплыть” разметка страниц, расположение элементов и т.п.

  • Более подробно о блокировке рекламы с помощью hosts файла написано тут, читайте и пробуйте.
  • Готовый hosts с настройками для блокировки рекламы от Rндекса можно скачать тут.

Программы для работы с HOSTS файлом

Поскольку файл hosts представляет собой обычный текстовый файл, то для его редактирования можно использовать любой текстовый редактор, например “Блокнот” для Windows или “Nano” для Linux.

Файл hosts является системным, соответственно его редактирование и запуск текстового редактора нужно в обязательном порядке осуществлять с правами администратора! Для запуска редактора использовать команды “Запуск от имени администратора” в Windows и “su” или “sudo” для запустка с правами суперпользователя в Linux.

Также создано немало специализированных программ, облегчающих и автоматизирующих работу с этим файлом.

Notepad++, мощнейщий тексовый редактор с поддержкой макросов, проверкой синтаксиса, поддержкой различных кодировок и т.п. Возможностей очень много, для редактирования hosts файла даже с избытком. Скачать бесплатную версию для установки можно тут.

Notepad++
Notepad++

HostsXpert, еще один редактор hosts файла. Минимальный набор опций, ничего лишнего. Скачать портативную версию можно тут.

HostsExpert
HostsExpert

Hosts Editor, маленький и удобный редактор с лаконичным интерфейсом. Я остановился на этом редакторе, скачать портативную версию программы можно тут. В комлекте hosts файл с блокировкой рекламы.

Редактирование HOST файла в редакторе Hosts Editor
Редактирование HOST файла в редакторе Hosts Editor

Антивирусы и модифицированный hosts файл:

Еще один немаловажный момент! Перед внесением изменений в hosts файл в обязательном порядке отключайте антивирус! Многие антивирусы (например, DrWeb, Антивирус Касперского, F-Secure) постоянно мониторят доступ к HOSTS файлу и его содержимому, блокируют попытки его изменения и удаляют модифицированный файл, помечая его как заражённый вирусом “HOSTS:SUSPICIOUS.URL“.

DrWeb CureIt! обнаружил модифицированный HOSTS файл
DrWeb CureIt! обнаружил модифицированный HOSTS файл

HOSTS:SUSPICIOUS.URL — тип угрозы, которая вносит изменения в файл hosts. Может блокировать некоторые сайты, а также перенаправлять вас на фальшивые.

Защитник Windows также с лёгкостью обнаружил модифицированный HOSTS файл и определил его как потенциально опасную программу: SettingsModifier:Win32/HostsFileHijack. Следует отметить, что Защитник обнаружил измененный файл hosts не в системной папке, а в папке с резевными копиями, расположенной на сетевом диске.

Редактирование HOST файла

Подобным образом Защитник Windows реагирует на наличие в файле блокировок на доступ к серверам Microsoft. Часто эти сервера блокируются в hosts файле, когда пользователь хочет запретить автоматическую загрузку на компьютер обновлений Windows 10 или отключает телеметрию — ее многие пользователи операционной системы Microsoft называют “функцией слежения”. Соответственно, когда в файле hosts система обнаруживает блокировку доступа к серверам Microsoft, она реагирует соответствующей ошибкой – SettingsModifier: Win32 / HostsFileHijack.

Почему же антивирусы так реагируют на безвредный текстовый файл?

Дело в том, что файл hosts – это достаточно уязвимое место в Windows, где злоумышленник может прописать сервер для любого сайта, чтобы Windows не спрашивала у службы DNS, а сразу из файла брала данные.

Вирус может модифицировать hosts файл, указав, например, редирект с легального сервера на поддельный, где лежит только внешне похожая копия сайта (например Сбербанка). После открытия такого поддельного сайта и ввода логина/пароля вас может перекинуть уже на настоящий сайт, при этом логин и пароль — будут отправлены мошенникам.

Содержимое модифицированного вирусом HOSTS файла
Содержимое модифицированного вирусом HOSTS файла

Вирусы подобные HOSTS:SUSPICIOUS.URL и SettingsModifier: Win32/ HostsFileHijack могут причинить серьезный вред вашему компьютеру:

  • блокировка сайтов производителей антивирусного программного обеспечения и их серверов обновления;
  • подмена адресов популярных ресурсов на адреса сайтов клонов с вирусным кодом в себе, при помощи которого злоумышленники могут украсть учетные данные аккаунтов и платежных систем;
  • установки редиректа на рекламные, фишинговые и порносайты и прочий нежелательный контент.

    Также данные компьютерные вирусы могут “защищаться” маскировкой:

  • делать файл скрытым;
  • в файле добавлять вредоносный код в самый низ, отделив его большим количеством пустых срок;
  • создавать ложную копию файла вида hosts.txt.

Спобы защиты и лечения hosts файла:

Защитить hosts файл не так трудно как кажется. Нужно соблюдать элементарные правила компьютерной безопасности, регулярно проводить проверку системного раздела антивирусом и проверять содержимое hosts файла. Большинство антивирусов автоматически заблокируют изменение системных файлов и предотвратит их заражение.

Если всеже hosts файл модифицирован, то пугаться тоже не нужно.

  1. В папке C:WindowsSystem32Driversetc необходимо удалить все подозрительные копии файла hosts (если они есть) типа hosts.txt, hosts.doc и т.п., оставив лишь один файл hosts без расширений.
  2. Открыть файл hosts для редактирования и удалить все строки кроме “127.0.0.1 localhost“, если такая присутствует. Также рекомендуется провести проверку системы с помощью специализированных программ:

Dr.Web CureIt! — мощная и бесплатная программа для удаления опасных вирусов типа троянов, майнеров, ботнетов. Скачать актуальную версию можно с официального сайта уже с актуальными антивирусными базами. Программа не требует установки в систему и является портабельной. Длительность проверки зависит от количества файлов на диске, по окончании требуется перезагрузка.

Редактирование HOST файла

Malwarebytes AdwCleaner — удаляет рекламные программы, вирусы, шпионские программы, потенциально нежелательные программы и угонщики браузеров, а также ненужные панели инструментов и предустановленные программы и потенциально нежелательные программы. Скачать можно с официального сайта.

Редактирование HOST файла

Для очистки hosts файла необходимо перейти в настройки программы, затем в меню “Параметры” – “Приложение” и включить пункт “Сбросить файл hosts“. После этого необходимо главной вкладке программы AdwCleaner выполнить сканирование и очистку, в ходе которой hosts файл будет очищен и восстановлен.

На этом всё!

Файл hosts — текстовый документ, который содержит в себе информацию о домене и IP-адресе, который ему соответствует. Файл hosts появился во времена зарождения Интернета (ARPANET) и служил неким маршрутизатором, пока на замену ему не пришла служба DNS. Но до сих пор он не утратил важности и по-прежнему используется как инструмент, который обладает приоритетом перед обращением к DNS-серверам.

Зачем нужен файл hosts

Предположим: вы зарегистрировали домен и привязали его к Hosting Linux. Но чтобы увидеть сайт, вам нужно дождаться делегирования домена на DNS-серверы. В файле hosts вы можете указать ваш домен и IP-адрес хостинга, а затем открыть браузер и зайти на ваш сайт, не дожидаясь делегирования домена. Также с его помощью вы можете заблокировать на локальном компьютере доступ к определённому сайту, указав соответствующую запись.

Где находится файл hosts

Путь к папке, где лежит файл hosts, зависит от операционной системы, которая установлена на вашем компьютере:

  • Windows XP, 2003, Vista, 7, 8, 10 — c:windowssystem32driversetchosts
  • Linux, Ubuntu, Unix, BSD — /etc/hosts
  • macOS — /private/etc/hosts

Редактировать файл etc hosts нужно от имени администратора, иначе вы не сможете сохранить внесённые изменения.

Как внести изменения в файл hosts

Ниже мы рассмотрим, как редактировать и как сохранить изменения в файле hosts. Важно открыть файл с правами администратора, иначе система не даст вам его сохранить. Выберите вашу операционную систему и следуйте инструкции или посмотрите видеоинструкцию:


Редактирование файла hosts в Windows 7

  1. 1.

    Запустите Блокнот или любой другой редактор от имени администратора. Откройте Пуск, найдите нужный редактор, нажмите по нему правой кнопкой мыши и выберите Запуск от имени администратора:


    Как отредактировать файл hosts

  2. 2.

    В меню «Файл» нажмите Открыть и перейдите в каталог, в котором расположен файл hosts. Измените тип файла на «Все файлы»:

  3. 3.

    Выберите файл hosts и откройте его.

  4. 4.

    Добавьте в конце файла необходимую запись в формате:

    123.123.123.123 faq-reg.ru www.faq-reg.ru

    Где:

    • 123.123.123.123 — IP-адрес вашего сервера или хостинга,
    • faq-reg.ru — имя вашего домена.
  5. 5.

    Сохраните изменения в файле.

Теперь вы можете открыть ваш сайт в браузере, не дожидаясь обновления DNS-серверов.


Редактирование файла hosts в Windows 8, 10

Чтобы изменить файл hosts в виндовс 10 (8), выполните следующие действия:

  1. 1.

    Запустите Блокнот или любой другой редактор от имени администратора. Для этого найдите его в Пуске, нажмите по нему правой кнопкой мыши и выберите Запуск от имени администратора:

  2. 2.

    В меню «Файл» нажмите Открыть и перейдите в каталог, где находится файл hosts . Измените тип файла на «Все файлы»:

  3. 3.

    Выберите файл hosts и откройте его.

  4. 4.

    Добавьте в конце файла необходимую запись в формате:

    123.123.123.123 faq-reg.ru www.faq-reg.ru

    Где:

    • 123.123.123.123 — IP-адрес вашего сервера или хостинга,

    • faq-reg.ru — имя вашего домена.

  5. 5.

    Сохраните изменения в файле.

Теперь вы можете открыть ваш сайт в браузере, не дожидаясь обновления DNS-серверов.


Редактирование файла hosts в Linux, Unix

В Linux файл hosts находится в папке etc. Чтобы отредактировать его:

  1. 1.

    Введите в терминал linux команду hosts:

  2. 2.

    Добавьте в конце файла необходимую запись в формате:

    123.123.123.123 faq-reg.ru www.faq-reg.ru

    Где:

    • 123.123.123.123 — IP-адрес вашего сервера или хостинга,

    • faq-reg.ru — имя вашего домена.

  3. 3.

    Сохраните изменения в файле.

Теперь вы можете открыть ваш сайт в браузере, не дожидаясь обновления DNS-серверов.

Файл hosts в Ubuntu редактируется так же, как и во всех Unix-системах.


Редактирование файла hosts в MacOS

Файл hosts в Mac OS расположен в каталоге: /private/etc/hosts. Чтобы изменить его:

  1. 1.

    Запустите терминал с помощью горячих клавиш: Command (⌘) + T или через Spotlight.

  2. 2.

    Введите команду:

    Нажмите Enter:

  3. 3.

    Добавьте в конце файла необходимую запись в формате:

    123.123.123.123 faq-reg.ru www.faq-reg.ru

    Где:

    • 123.123.123.123 — IP-адрес вашего сервера или хостинга,

    • faq-reg.ru — имя вашего домена.

  4. 4.

    Сохраните изменения в файле.

Теперь вы можете открыть ваш сайт в браузере, не дожидаясь обновления DNS-серверов.

Видеосправка. Как изменить файл hosts

Также вы можете заблокировать определенный сайт через файл hosts, воспользовавшись инструкцией ниже:

Блокировка доступа к сайту через файл hosts

Доступ к сайту также можно ограничить для локального компьютера. Для этого укажите адрес страницы (домен) в файле hosts. Заблокировать IP нежелательного сайта не требуется. Блокировка осуществляется по локальному хосту с фиксированным IP (127.0.0.1):

  1. 1.

    Откройте файл hosts от имени администратора на своём ПК.

  2. 2.

    В указанной на скриншоте строке укажите IP-адрес 127.0.0.1 и через пробел адрес нежелательного сайта. Чтобы заблокировать несколько сайтов, повторите действие в следующей строке. В примере ниже в файле hosts отказано в доступе (заблокирован доступ) к сайтам «vk.com» и «youtube.com»:

  3. 3.

    Сохраните изменения.

Готово! Доступ к сайтам будет ограничен на определенном ПК.

Оригинальный файл hosts и как его восстановить

Скачать содержимое файла hosts можно на разных ресурсах. Но мы не рекомендуем делать это, так как файл может быть заражен.

Файл hosts по умолчанию есть в каждой операционной системе, но он может быть скрыт для просмотра. Следуя инструкциям выше, вы сможете его открыть и отредактировать. Если вы удалили его, то просто создайте текстовый файл без расширения в нужной папке.

По умолчанию файл hosts выглядит следующим образом:

Для Windows

# Copyright (c) 1993-2006 Microsoft Corp.

#

# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host
# localhost name resolution is handle within DNS itself.
#       127.0.0.1       localhost
#       ::1             localhost

Для Linux

127.0.0.1       localhost

127.0.1.1      user

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

где user (во второй строке) — это имя вашего компьютера.

Для MacOS

##

# Host Database

#

# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1  localhost
255.255.255.255  broadcasthost
::1             localhost

Удалите текущее содержимое из файла hosts, вставьте текст по умолчанию и сохраните изменения.

Теперь вы знаете, как должен выглядеть файл hosts и как с ним работать.

У меня есть сервер ubuntu 20.04

Мне нужно изменить один файл в etc, можно ли это сделать через filezilla?
Когда пытаюсь это сделать выдаёт ошибку:

Ошибка: /etc/sysctl.conf: open for write: permission denied
Ошибка: Передача файла потерпела неудачу


  • Вопрос задан

    24 мая 2022

  • 236 просмотров

Пригласить эксперта

Можно, при условии, что etc/ лежит на ftp сервере, с соответствующими правами.

можно, но лучше так не делать.
только у файла /etc/sysctl.conf должно быть разрешение на редактирования для той системы доступа к файлам на сервере, через которую подключается filezilla.
для фтп это будет пользователь, из-под которого производится вход на фтп-сервер.
для
-rw-r–r– root root /etc/sysctl.conf
это только пользователь root. либо заходить на фтп под рутом, что сильно не секурно.
либо дать +w для группы и пользователя, из-под которого заходим в фтп, добавить в онную группу, что чуть-чуть более секурно 🙂

учитывая “защищенность” фтп, лучше так не делать.
лучше уж sftp/ssh с авторизацией по ed25519 ключу

можно, для этого нужно подключится под рутом (root)

=== сервер ubuntu 20.04 ===
должен быть установлен и запущен sshd сервер
а также в файле /etc/ssh/sshd_config
найти и установить значение
PermitRootLogin yes
после чего перезапустить sshd.service
sudo systemctl restart sshd.service

=== filezilla ===
протокол: SFTP
Пользователь: root


  • Показать ещё
    Загружается…

15 мая 2023, в 16:15

1000 руб./за проект

15 мая 2023, в 16:06

1500 руб./за проект

15 мая 2023, в 15:23

3000 руб./за проект

Минуточку внимания

Добавить комментарий