У некоторых из нас в моей компании есть root-доступ на производственных серверах. Мы ищем хороший способ сделать это чрезвычайно ясным , когда мы ssh'd в.
У нас было несколько идей:
- Ярко-красная подсказка
- Ответьте на загадку, прежде чем получить оболочку
- Введите случайное слово, прежде чем получить оболочку
Какие методы вы используете, ребята, чтобы дифференцировать производственные системы?
Ответы:
Красная подсказка - хорошая идея, которую я тоже использую.
Еще один трюк - поместить в
/etc/motd
файл большое предупреждение в стиле ASCII .Когда вы входите в систему, вас приветствует нечто подобное:
Вы можете создать такое предупреждение на этом сайте или использовать
figlet
команду.Как предложил Николас Смит в комментариях, вы можете оживить ситуацию с помощью некоторых драконов или других животных, используя
cowsay
команду.Вместо использования файла / etc / motd вы также можете вызвать
cowsay
илиfiglet
в.profile
файл.источник
Не совсем то же самое, но этот веб-сайт рекомендует, чтобы ваши разработчики носили розовое сомбреро при внесении изменений в производственные системы. Возможно, вы могли бы иметь подобное правило для sshing в них.
источник
Самым большим, что я использовал, является дискретная схема именования, в которой prod-системы названы явно не так, как экземпляры test / dev. Это делает подсказку стиля «Имя пользователя @ Имя хоста:» заметно другой. Под очевидным я подразумеваю не только разные слова, но и разные форматы:
пример: PRD-WEB001 против DEVEL-BOB-WEB001
Для этого есть несколько вещей:
И что самое приятное, он не требует специальных терминальных настроек для производства, чтобы избежать ошибок Oops.
По моему опыту, вы хотите что-то, что является постоянным напоминанием о том, где вы находитесь. Методы входа в систему, такие как загадки, хороши в течение 10 секунд, пока вы не забудете, какое окно какое. Все, что нужно, это сделать
ls
в неправильном каталоге, чтобы прокрутить зловещий баннер входа в систему, скрыть окно терминала под окном браузера, одновременно что-то погугливая, alt-tab вернуться в неправильное окно, и может возникнуть хаос. Лучше всего иметь некоторую постоянную визуальную подсказку, например значительно отличающуюся командную строку.источник
Необходимо помнить одну вещь: это должно быть постоянным напоминанием, а не просто индикатором во время входа в систему. Очень часто кто-то запускает несколько оболочек одновременно на разных вкладках и перемещается между ними. Некоторые будут разработки, некоторые производства. Поэтому, когда вы запускаете команду, у вас должен быть индикатор в этой точке. Поэтому, по моему опыту, наличие специального приглашения - лучший способ, с измененной панелью заголовка / вкладки, которая является хорошим дополнением к этому для легкого поиска нужного окна / вкладки.
Поэтому я бы рекомендовал иметь цветное приглашение (красный - очевидный выбор) и все заглавные буквы для имени хоста, с поведением пользователя (привилегированным или непривилегированным), аналогичным вашему приглашению. Некоторые примеры:
Обычно что-то вроде
в вашем файле запуска оболочки. Это для синих. Заменить
44
с41
еловой красным, и42
для зеленого. Также доступны другие цвета и дикие узоры .источник
Вот мои предложения:
1) Убедитесь, что большинству команд (rm, chown, chmod, /etc/init.d/*) в производственной среде требуется доступ sudo
2) Используйте PS1 / PS2, чтобы указать, что пользователь находится на сервере Prod
Это покажет командную строку как
3) Если вы используете клиенты Putty / SSH, вы всегда можете настроить уникальный фоновый цвет / профиль, чтобы выделить производственные серверы.
источник
Просто учтите, что ваши вторые и третьи идеи помогают во время первоначального подключения, но не имеют значения, когда у вас открыто несколько терминалов и вы переходите с одного на другой. Идея использования имен в sysadmin1138 хороша, когда ее можно применить, но есть множество случаев, когда это невозможно.
Единственное, что я нашел действительно стоящим, это цветная подсказка. Мне нравится зеленый для разработки / тестирования, красный для производства и синий для машин в DMZ. Таким образом, даже если у меня есть две машины с одинаковым именем (в разных сетях), например, при подготовке замены машины, я все равно могу легко определить, на какой машине я работаю.
источник
Красная / специальная командная строка хороша. Другая вещь может быть более быстрым автоматическим выходом из системы на этих машинах, используя переменную TMOUT. Если вы открыли много окон, производственные окна уйдут быстрее.
Это должно привести к другому поведению:
источник
Работа на производственном компьютере с учетной записью простого root никогда не будет хорошей идеей.
Иметь учетную запись с полными разрешениями sudo. Не позволяет сохранить сессию sudo. Запретить sudo su. Используйте для этого отдельный пароль (не тот, который у вас есть для вашей машины). Вероятно, настроить sudo, чтобы уведомить о производственной идентичности оболочки перед выполнением команды (через псевдоним).
Это сделает случайные ошибки довольно трудными. И красная подсказка никогда не болит.
источник
sudo bash
). Вы можете получить корневую оболочку из любой настройки «черного списка». (Если вы осторожны, вы можете остановить его с помощью настройки белого списка, но это, как правило, не гарантируется.)Я пошел с красной подсказкой и нашел довольно трудоемким найти рабочий код для
.bashrc
.Итак, вот моя версия, готовая для включения в
.bashrc
- https://github.com/RichVel/nicer-bash-prompt . Он полностью зависит от имени хоста, поэтому, если у вас есть подходящий шаблон для рабочих имен хостов (скажемxyprod01
,xyprod02
и т. Д.), Он будет работать хорошо, и вы сможете использовать его.bashrc
во всех средах.Это выглядит так:
Это создает более приятное приглашение bash, включая красное приглашение на рабочих хостах, также показывает текущую ветку git и последние 2 каталога в $ PWD. Следует избегать путаницы с отображением подсказок при выполнении Ctrl / R (обратный поиск) в bash.
Также включает в себя дополнительную функцию для синхронизации вашей истории Bash по всем окнам терминала, в соответствии с этим ответом . Это хорошо, но не всем это нужно, поэтому по умолчанию оно отключено.
источник
Хотя я не знаю, на что похожа ваша ИТ-установка, одним из эффективных решений может быть наличие специальной комнаты, в которой вы должны перейти на SSH на рабочие серверы с правами root. Если у вас есть центр обработки данных, это может быть сама серверная комната, но наличие отдельного физического местоположения, из которого «обычная» работа не выполняется, будет достаточно эффективно служить постоянным напоминанием о том, что вы получаете доступ к рабочим машинам.
источник
Просто поправьте приведенные выше предложения. Я использую CDE в качестве рабочего стола Unix и все производственные системы, к которым у меня есть доступ через меню в .dt / dtwmrc. Во всех системах dev и UAT я придерживаюсь своей обычной цветовой схемы, но в системах prod я установил для терминала красный фон. Мне не нравится внешний вид, но в этом вся суть.
Эта - пропустил предложение Кароля в основном то же самое
источник
Когда я вхожу в рабочую машину, я получаю параграф, предупреждающий меня о том, что это рабочая машина, а также краткий список рекомендаций. Я могу позвонить в службу поддержки UNIX, если не думаю, что смогу выполнить свою задачу в одиночку безопасно, напоминание о том, что взрыв производственного компьютера может стоить мне работы, и напоминание о том, что все, что я делаю, записывается в журнал.
редактировать: я работаю в транспортной отрасли.
источник
В PuTTY вы можете изменить заголовок окна на значение, отличное от значения по умолчанию для определенного сохраненного сеанса. Это всегда остается на окне, независимо от того, что вы делаете внутри окна. Это также отображается в панели задач.
Разверните Окно, нажмите Поведение. Введите что-то в заголовок окна, например:
источник
Простой ответ? Измените цвет вашей оболочки на красный в конфигурации оболочки. Это будет абсолютно очевидно и просто в настройке. Не только это, но в отличие от заголовков сервера, оно не исчезнет после того, как вы введете несколько команд.
источник
Вот что я сделал на своем Mac. Для каждого сервера я добавляю запись для него в моем файле ~ / .ssh / config, например
Этот Applescript запускается после установления сеанса SSH. Он устанавливает цвет фона терминала в соответствии со значениями RGB (или возвращается к значению по умолчанию, если значения цвета не предоставлены). Потенциально сложная часть состоит в том, чтобы перехватить конец сеанса SSH, чтобы вернуть цвета по умолчанию. Для этого я создал следующий сценарий оболочки как ~ / bin / ssh, чтобы переопределить команду ssh по умолчанию. Это по существу перехватывает и оборачивает любые вызовы команды SSH. Я пытался использовать псевдонимы и функции, но это решение работало лучше всего:
Вот источник сценария change_terminal_colours.scpt . Поместите это также в каталог ~ / bin:
Я написал это решение неделю назад и с тех пор использую его. Я надеюсь, что другие найдут это ценным. Я считаю, что это работает лучше, чем любое из решений, которые я нашел от Google.
источник
Моя группа использует концепцию удаленного рабочего стола visionapp (редакция 2017 года: похоже, продукт был переименован, но я думаю, что он одинаков) для RDP на компьютерах с Windows и SSH на Linux. Наши соединения сгруппированы в папки по уровням и им назначен цвет вкладки.
Поэтому всякий раз, когда мы открываем производственную связь - БАМ! - мы получаем немного ярко-красного на нашем лице:
Это определенно стоит вложений, если вы большой магазин Windows и сильно полагаетесь на RDP. Бьюсь об заклад, есть и другие замечательные инструменты, если все, что вам нужно, это SSH.
источник
Помимо уникального приглашения (которое кажется наиболее надежным решением), если вы входите в систему с одной и той же рабочей станции, вы можете использовать разные профили для сеансов SSH.
Например, у меня есть красный фон для производственных систем, зеленый для разработки, синий для инфраструктуры (маршрутизаторы и т. Д.) И белый для локальной рабочей станции.
Если вы используете GNOME, есть простой способ запустить SSH-соединение с нужным профилем:
gnome-terminal --window-with-profile=production -e 'ssh root@production.example.com'
Основной недостаток - это клиентская сторона, поэтому специальное приглашение все равно будет лучшим выбором, если вы обращаетесь к серверам из разных мест.
источник
Еще один способ прояснить, что вы работаете в производственной системе - это установить функцию TMOUT (autologout) в производственной системе.
источник
Из-за обширных нормативных требований при работе в конкретной отрасли, здесь деятельность каждого человека имеет ключевое значение для любых будущих споров. В связи с этим, доступ также ограничен, и вам нужно перепрыгнуть через несколько «меню», которые позволяют вам получить доступ к компьютеру как одному из нескольких доверенных пользователей. Установив эту систему, человек должен сознательно выбрать среду PRODUCTION или QA, а затем выбрать хост, к которому он хочет получить доступ, из списка. Это также имеет период ожидания, поэтому вы не можете войти в систему на хосте prod и забыть, в какой среде вы находитесь на следующий день.
источник
Я использую быстрые изменения, как и другие здесь. Это быстро и противно, но отлично работает для моих целей. Это даст вам красный как обычный пользователь в производственной системе и красный верхний регистр как root в системе prod.
Это может быть написано в меньшем количестве строк, но я делаю это так, чтобы я мог настроить другие 2 случая (не root-non-prod), если я хочу.
Мы работаем в предположении, что производственный сервер не использует DHCP, но вы можете использовать любой другой метод для разработки, если это стандартная система. Все, что работает для вас.
источник
Иметь другой (возможно, более длинный) пароль root на рабочих машинах.
Вы можете создать специальный sudo (или оболочку sudo), чтобы специальное сообщение выводилось для производственных машин.
источник
Здесь у нас есть конфигурации замазки по умолчанию, чтобы сделать основной цвет всего экрана ярко-розовым.
Это работает довольно хорошо, но мне нравятся некоторые другие идеи здесь.
источник
в .bashrc / .bash_profile
источник