Веб-браузеры по умолчанию увеличивают масштаб в Ubuntu 14.04.5 LTS

Используйте -d '\ n' с командой xargs :

cat file | xargs -d '\n' -l1 mkdir

Из справочной страницы:

-d delim
              Input  items  are  terminated  by the specified character.  Quotes and backslash are not special; every
              character in the input is taken literally.  Disables the end-of-file string, which is treated like  any
              other  argument.   This can be used when the input consists of simply newline-separated items, although
              it is almost always better to design your program to use --null where this is possible.  The  specified
              delimiter  may be a single character, a C-style character escape such as \n, or an octal or hexadecimal
              escape code.  Octal and hexadecimal escape codes are understood as for the printf command.    Multibyte
              characters are not supported.

Пример вывода:

$ ls
file

$ cat file
Long Name One (001)
Long Name Two (201)
Long Name Three (123)

$ cat file | xargs -d '\n' -l1 mkdir

$ ls -1
file
Long Name One (001)
Long Name Three (123)
Long Name Two (201)
1
10.08.2018, 21:32
1 ответ

На самом деле, поскольку использовалось restorecon, эти команды не требуются для решения проблем SELinux:

# echo 'type=AVC msg=audit(1533595368.668:140747): avc:  denied  { connectto } for  pid=87400 comm="postdrop" path="/var/spool/postfix/public/pickup" scontext=system_u:system_r:postfix_postdrop_t:s0 tcontext=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 tclass=unix_stream_socket' \
  | audit2allow -M local_postfix_pickup
# semodule -i local_postfix_pickup.pp

Вот почему и, надеюсь, объяснение, которое может помочь при попытке решить проблемы с аудитом SELinux.

  • Позаботьтесь о том, чтобы обратить внимание на типы перед действиями по смягчению последствий. В этом случае:

    unix _поток _сокет

    К сожалению, ls -lZ /var/spool/postfix/public/pickupне была запущена до запуска команды restorecon, так как это помогло бы лучше понять проблему.

    СОВЕТ:Просмотрите контексты SELinux, прежде чем вносить изменения.

  • Обратите внимание на тип SELinux после запуска restorecon -R -v /var/spool/postfix/public/pickup:

    постфикс _общедоступный _t

    Важно отметить, что изменение типа произошло.

    СОВЕТ.:Когда в списке указана как предлагаемая команда restorecon, так и одно правило allow, не исключено, что предложения по смягчению последствий являются альтернативными решениями (, которые могут решить проблему ). ].

  • Обратите внимание, что вывод audit2allowизменился таким образом, что предлагаемая команда restoreconбольше не присутствует.

    Если вывод audit2allowсодержит команду restoreconи только одно изменение rule, после попытки устранения проблемы с помощью restoreconпроблема, скорее всего, будет решена. Ключевым моментом здесь является понимание того, что rule, отображаемый для AVC, больше не актуален, потому что больше нет причин для правила, касающегося типа, который больше не используется.

    Например, в этом конкретном случае нет причин для postfix_postdrop_tпредоставлять доступ к unix_stream_socket, когда этот сокет теперь имеет вершину postfix_public_t.

В любом другом подобном случае важно помнить, что сам AVC посвящен историческому событию. Поскольку AVC посвящен историческому событию,следует иметь в виду, что альтернативные решения старых проблем могут не потребоваться, если детали в альтернативном решении уже не идентичны состоянию системы в момент возникновения события. Другими словами, после использования команды restoreconнет необходимости ожидать сообщений «разрешено в текущей политике», когда предложение restoreconбольше не присутствует.

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

На самом деле отказ от использования нескольких средств защиты дает дополнительное преимущество. Помните, что весь смысл SELinux заключается в том, чтобы ограничить процессы доступом к вещам, которые им действительно нужны. Если вносятся ненужные принудительные изменения типа, исполняемый файл postfix_postdrop_tбольше не ограничен в доступе к другим unix_stream_socketресурсам, которые не имеют ничего общего с запуском postfix, и законное ограничение времени запуска -на postfixбудет быть ниспровергнутым.

Более подходящим заголовком для этого вопроса может быть :" Требуются ли обе меры по снижению риска, когда audit2allow предлагает как restorecon, так и одно изменение правила? "

0
28.01.2020, 00:31

Теги

Похожие вопросы