Чи є спосіб зробити досвідченого Linux syadmin продуктивним, не надаючи йому повного кореневого доступу?
Це питання виникає з точки зору захисту інтелектуальної власності (IP), що в моєму випадку - це повністю кодові та / або конфігураційні файли (тобто невеликі цифрові файли, які легко копіюються). Наш секретний соус зробив нас більш успішними, ніж міг би запропонувати наш маленький розмір. Так само нас один раз кусають, двічі соромляться від кількох колишніх недобросовісних працівників (а не сисадмінів), які намагалися вкрасти IP. Позиція вищого керівництва в основному полягає в тому, що "ми довіряємо людям, але з власних інтересів не можемо дозволити собі ризик надати будь-якій людині більше доступу, ніж їм абсолютно потрібно робити свою роботу".
З боку розробника порівняно легко розділити робочі процеси та рівні доступу, щоб люди могли бути продуктивними, але бачили лише те, що їм потрібно. Тільки топ-люди (фактичні власники компанії) мають можливість поєднувати всі інгредієнти та створювати спеціальний соус.
Але мені не вдалося придумати хороший спосіб зберегти цю IP-таємницю на стороні адміністратора Linux. Ми широко використовуємо GPG для кодових та чутливих текстових файлів ... але що зупиняти адміністратора (наприклад) на позов користувачеві та скакання на його tmux або GNU Screen session і бачити, що вони роблять?
(У нас також відключений доступ до Інтернету скрізь, який, можливо, може контактувати з конфіденційною інформацією. Але нічого не ідеального, і на розумних сисадмінах або помилках на стороні мережевого адміністратора можуть бути отвори. Або навіть старий хороший USB. Звичайно, існують численні інші заходи, але вони виходять за рамки цього питання.)
Найкраще, що я можу придумати, - це в основному використання персоналізованих облікових записів з sudo , подібним до того, що описано в декількох системних адміністраторах Linux, що працюють як root . Зокрема, ніхто, крім власників компанії, насправді не матиме прямого доступу до кореня. Інші адміністратори матимуть персоналізований обліковий запис та можливість вживати судовий процес у root. Крім того, було б запроваджено віддалений журнал, і журнали переходитимуть до сервера, до якого могли отримати доступ лише власники компанії. Якщо вимкнути журнал, вимкнено певні сповіщення.
Розумний системдмін, ймовірно, все ще знайде дірки в цій схемі. І це осторонь, це все ще реактивне, а не ініціативне . Проблема з нашим ІС полягає в тому, що конкуренти можуть скористатися нею дуже швидко і за дуже короткий час завдати великої шкоди.
Тому все-таки краще буде механізм, який обмежує те, що може зробити адміністратор. Але я визнаю, що це делікатний баланс (особливо з огляду на усунення несправностей та виправлення виробничих проблем, які потрібно вирішити зараз ).
Не можу не задатися питанням, як інші організації з дуже чутливими даними управляють цим питанням? Наприклад, військові системні адміністратори: як вони керують серверами та даними, не маючи змоги бачити конфіденційну інформацію?
Редагувати: У початковій публікації я мав намір попередньо звернутися до коментарів "практики найму", які починають виходити на поверхню. По-перше, це має бути технічним питанням, а практики найму ІМО, як правило, більше спрямовані на соціальні питання. Але, два, я скажу так: я вважаю, ми робимо все, що є розумним для найму людей: інтерв'ю з кількомалюди на фірмі; довідкові та контрольні перевірки; всі співробітники підписують численні юридичні документи, включаючи той, який говорить, що вони прочитали та зрозуміли наш посібник, який детально стосується ІС. Зараз це не входить до сфери цього питання / сайту, але якщо хтось може запропонувати «ідеальні» практики найму, які відфільтрують 100% поганих акторів, я все вухо. Факти: (1) Я не вірю, що існує такий ідеальний процес найму; (2) люди змінюються - сьогодні ангел може бути завтрашнім дияволом; (3) спроба викрадення коду виглядає дещо звичною у цій галузі.