1

Когда я хочу, чтобы скрипт (обычно bash или python) выполнялся из любого места в моей структуре папок, я обычно помещаю символическую ссылку в /usr/local/bin . Таким образом, мне не нужно переписывать сценарий каждый раз, когда я делаю некоторые изменения.

Я думаю, что с этой настройкой кто-то, имеющий доступ к учетной записи моего пользователя, сможет изменить сценарий. Если бы это была многопользовательская система, это, вероятно, было бы очень плохо. Но поскольку это всего лишь однопользовательский рабочий стол, нет никакой разницы, потому что злоумышленник, имеющий доступ к учетной записи пользователя, может легко выполнить все, что ему нужно, с правами пользователя, независимо от символических ссылок на мои скрипты в /usr/local/bin .

Сценарии не нуждаются в расширенных разрешениях для правильного выполнения.

В любом случае: представляет ли эта стратегия угрозу безопасности в однопользовательской системе?

2 ответа2

2

Поскольку вы единственный пользователь, который хочет получить доступ к вашим сценариям, было бы лучше просто создать папку с именем "scripts" в вашей домашней папке и добавить ее в свой PATH.

Добавьте это в ваш файл ~/.profile :

export PATH=$PATH:~/scripts

Вы можете хранить разные скрипты в разных папках (например, ~/pythonscripts/script_version1.py и ~/pythonscripts/script_version2.py) и символическую ссылку на новейшую версию в ~/scripts

-1

Если вы единственный, кто выполняет ваш сценарий, и установленный бит идентификатора пользователя не установлен (chmod +s), разницы нет.

Если скрипт вызывается другим пользователем, ваш $ HOME должен быть доступен для чтения этому пользователю, если вы используете символические ссылки, что может иметь последствия для безопасности, особенно если вы решите сделать свой $ HOME читаемым для всех. Также имейте в виду, что любой процесс, принадлежащий вашему пользователю, может изменить скрипт и использовать его для получения привилегий вызывающего пользователя, как упомянуто hastur.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .