Путь Джедая. Сисадмин — пути развития. Часть 2. Уже не падаван!

Предисловие

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

Ранее, я уже выкладывал сюда список вопросов, посвященных собеседованию начинающего IT инженера. Статья пригодилась нескольким моим знакомым и теперь они попросили меня составить такой же список, но уже для проведения собеседования с более “зрелым” специалистом. Так сказать с Middle SA а не Junior.

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

Немного о составлении этого списка — я не считаю необходимым заострять внимание на вопросах в духе “какую кнопку в консоли управления сервером надо нажать чтобы получить то-то” — это глупо. Если вы знаете что должно делать то или иное программное обеспечение, как она должна работать, какие протоколы использовать — в интерфейсе вы всегда разберетесь. В то же время, нельзя объять необъятное — нельзя в небольшой опросник впихнуть полноценный тест по сетям, Windows и еще чертовой туче вещей. Поэтому я постарался выбрать и сформулировать такие вопросы и задачи, которые точечно проверяя знания собеседуемого, позволяют составить довольно полную картину о его теоретическом и практическом “бэкграунде”.

П.С. Для удачного прохождения этого теста-опросника, не нужно отвечать на все 100% вопросов формальными, заученными фразами и определениями. Достаточно четко представлять себе то, о чем вопрос был задан и уметь ответить не него “своими словами”.

П.П.С. Я не проводил слияние этого списка с списком вопросов для Junior System Administrator. Предполагается что для Вас не составит труда ответить на ВСЕ вопросы из джуниорского списка, иначе советую начать именно с него. Если Джуниор список вызывает у Вас затруднения- к этому приступать явно рано!


Редакция 1 — Публикация статьи

Редакция 2 — Внесены исправления в секцию СУБД


Оглавление

  1. Общие вопросы — вопросы посвященные каким-то вещам, которые невозможно четко отнести к той или иной сфере и которые при этом являются в какой-то мере основополагающими на мой взгляд.
  2. Локальная сеть предприятия — вопросы посвященные собственно локальным сетям! Как неожиданно, да? Некоторые из них проверяют уровень знаний и глубину понимания вопроса, другие — подход собеседуемого к построению и поддержке этой структуры.
  3. Администрирование Windows систем и сетей — тут особо нечего добавить. Эти знания важны, эти знания нужны. Хотя бы потому, что большая часть пользовательских компьютеров находится под управлением именно этой ОС и на базе технологии компании Microsoft строится управление ими.
  4. Администрирование Linux систем и сетей — очень популярная в последние годы операционная система ( а точней семейство систем), без которых сложно представить себе хоть одну инфраструктуру (да да, сейчас время гетерогенных сетей)!
  5. Хранение и управление данными — все это хорошо, но без данных, которыми наполнены наши системы, и обработкой которых они занимаются, все эти ваши серверы-компьютеры-сети были бы никому не нужны. Поэтому  понимание в вопросах хранения и управления данными так важно.
  6. Информационная безопасность — ну тут особенно нечего коментировать. Конечно, если системный администратор работает в сколько-нибудь крупном ИТ отделе, вопросы ИБ его касаются слабо- соблюдай процедуры и политики, следуй инструкциям, которые для тебя подготовил специалист по ИБ и все будет хорошо. Но если в штате нет выделенного специалиста по ИБ, или администратор работает в одиночку (ну может быть один Старший администратор и пара помощников), ему приходится самостоятельно решать эти вопросы. И осведомленность в этой области окажется очень кстати.
  7. IT Инфраструктура и мониторинг — нужно не просто уметь «накатывать» ОС и ставить программы по методу «далее-далее», но и понимать как строить сколько-нибудь сложные окружения.
  8. Оборудование — несколько вопросов на понимание того, что мир системного администратора это не только ноутбуки и самосборные системники.
  9. Технологии виртуализации — физические сервера с продакшен-системой «на живую» это сейчас скорее нонсенс и архаизм чем реальность (в большинстве случаев). Проверим как работает
  10. DevOps сфера и автоматизация — самый маленький и не расписанный раздел. Обычно переход в  в эту сферу не является прерогативной Middle System Administrator. Поэтому вопросы тут скорей ознакомительные.
  11. Базы данных — уровня знаний полноценного DBA никто не требует, но общая осведомленность должна быть.
  12. Практические вопросы и задачи — несколько кейсов, которые могут быть или были встречены в жизни.

Общие вопросы

  1. Объясните максимально подробно и развернуто (“на пальцах”) все этапы загрузки операционной системы — от момента нажатия кнопки питания до появления экрана с приглашением входа пользователя. Не имеет значения на примере какой операционной системы.
  2. Файловые системы — что это такое, зачем они созданы, почему мы не можем без них. Как они устроены, какие бывают. Что происходит при удалении файла.

Локальная сеть предприятия

  1. ‎В вашей сети есть несколько сегментов, соединенных маршрутизаторами. Проверка с помощью команды ping показывает, что связь между маршрутизаторами в порядке. С узла А из одной сети до узла В находящегося в другой сети отправляется ping запрос (echo request). С помощью снифера, администратор фиксирует его получение и отправку ответа на узле В, однако до узла А ответ не доходит.  Обе сети подключены к разным маршрутизаторам, правила фильтрации отсутствуют.. В чем может быть дело?
  2. ‎Расскажите что такое VLAN — как устроена, как работает и для чего нужна эта технология. Поясните смысл следующих терминов: Router-on-a-stick, native vlan, , private vlan. Когда в кадр Ethernet добавляется тег VLAN-а, а когда он удаляется?
  3. ‎Расскажите про стекирование коммутаторов — что это, для чего нужно, как реализуется. Плюсы и минусы.
  4. Что такое протоколы маршрутизации и для чего они нужны? Разница между RIP, OSPF и  EIGRP.
  5. Что такое “петля” в сети и как эффективно и автоматизированно с этим бороться?
  6. Как определить назначенные и корневые порты коммутаторов? Речь идет про протоколы семейства STP.
  7. ‎Расскажите про метрику и административную дистанцию маршрута. Что это, чем эти два понятия отличаются, а чем связаны? зачем это нужно?
  8. ‎Кратко расскажите про отличия и преимущества протокола IPv6 по сравнению с IPv4. Не только про размер адресного пространства!
  9. ‎Как работает DHCP в IPv6?
  10. несколько типовых протоколов списком — чтобы рассказали что это, зачем, как работает.
  11. ‎Вам поставлена задача — сегментировать вашу сеть. В результате сегментирования, все сервера перемещаются в выделенный VLAN, в том числе и DHCP сервер. Что нужно сделать, чтобы клиентские хосты в любом из сегментов получали сетевые настройки от него?
  12. Что такое Jambo-frames?

Администрирование Windows систем и сетей

  1. Каким образом компьютер, введенный в домен, может найти ближайший к нему домен контроллер и зачем ему это делать?
  2. ‎Какие сервисные записи добавляются в DNS при создании домена Active Directory?
  3. У вас большой парк windows машин, входящий в домен Active Directory. Расскажите, ‎как можно управлять машиной в домене не касаясь ее руками и используя при этом встроенные возможности? Перечислите как минимум 4 варианта? Вариант “подключусь через Teamvierwer” не считается.
  4. Что такое мастера операций? Зачем они нужны? Расскажите про  Schema master, Domain naming master, RID master, PDC emulator, Infrastructure master.
  5. ‎После установки служб AD DS на сервер и подъема его роли до уровня DC, существовавшие ранее учетные записи были куда то перенесены. Где теперь их искать?
  6. Что такое Windows SAM, для чего он нужен? Где и в каком виде Windows хранит пароли локальных учетных записей?
  7. ‎Можно ли хранить логи Windows на выделенном удаленном сервере? Для чего и как?
  8. Возможно ли в Windows подключить новый жесткий диск в уже существующую структуру файловой системы? То есть не создавая новый корень в виде диска D, E и т.д.
  9. ‎Расскажите про локальные, глобальные и универсальные группы. Сферы их применения?
  10. ‎В чем разница между группами безопасности и группами распространения?
  11. В чем разница между учетными записями  Local System, Local Service, Network Service и зачем их столько нужно?
  12. Описать в своими словами назначение следующих стандартных каталогов системы:
    • %osdrive%\Windows,
    • system32,  
    • syswow64 (в каких случаях он отсутствует?),
    • ProgramData,
    • Program Files (в тч x86 вариант),
    • каталоги пользователя AppData, AppData\Local и Roaming и их разницу
  13. Расскажите про стандартные разделы реестра, откуда осуществляется автозагрузка программ, их отличия.
  14. У вас есть определенное ПО,  которое осуществляет работу с определенными, не перенастраиваемыми каталогами. Можно ли вынудить его работать с другим каталогом и\или диском? Если да,  то как этого добиться?
  15. Что такое Server Core и в каких сценариях оправдано его использование?
  16. Как превратить Windows Server 2012R2 standard в Server Core?
  17. Опишите порядок применения групповых политик в домене с т.з. обычного пользовательского ПК. Т.е. какие политики и в каком порядке будут применены.

Администрирование Linux систем и сетей

  1. Перед вами есть бинарный исполняемый файл программы. Она не запускается, падая с ошибкой. Логи, которые она пытается писать и вывод на экран не дают вразумительной информации. Что вы будете делать для диагностики ее работы и как в этом вам могут помочь утилиты strace и ltrace?
  2. ‎Опишите результат работы следующих “однострочников”:
    • ssh -l USER HOST | tee -a /path/to/file
    • du -sk /var/log/* | sort -r -n | head -10
    • apt-get search *packetname* | grep «i   » | cut -d » » -f 4
  3. ‎Постарайтесь как можно более полно описать структуру каталогов и файлов ОС Linux (считаем что рассматриваемая система с т.з. файлов и папок строго подчиняется стандарту FHS).
  4. ‎Каков результат выполнения следующих команд в редакторе VIM:
    • :%s/foo/bar/gc
    • :dd
    • :r /some/file
  5. ‎Пакетные менеджеры- что это такое, для чего они нужны, как они работают? Что такое репозиторий ПО? Основные команды менеджеров apt и rpm?
  6. ‎LVM —  что это такое, зачем он нужен? Его устройство- расскажите про физические тома, группы томов, логические тома, экстенты и их мапинг. Опишите процедуру вывода физического тома из LVM.
  7. ‎Ввод Linux машины в домен Windows.. Методы и сложности.
  8. Что такое “load average”, что значат эти три цифры в выводе команды TOP и аналогичных, и как их интерпретировать?
  9. ‎Виды состояний процессора ( утилизации процессора) в выводе команды TOP и аналогичных. Прокомментируйте их:
  10. ‎Что за файловая система /proc?
  11. Что делают следующие команды (вкупе):
    • iptables -A INPUT –p tcp –m tcp –-tcp-flags FIN,ACK FIN -j DROP
    • iptables -A INPUT –p tcp –m tcp —tcp-flags FIN,SYN,RST,PSH,ACK,URG –j DROP
    • iptables -A INPUT –p tcp –m tcp –-tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE –j DROP
    • iptables -I INPUT -p tcp -m osf —genre NMAP -j DROP

Хранение и управление данными

  1. Расскажите что такое RAID, чем отличается Hardware RAID и Software RAID. Какие уровни RAID ( их плюсы и минусы) Вы знаете? Какой уровень RAID вы бы выбрали для Файлового сервера? А для сервера СУБД? Почему?
  2. расскажите что такое размер блока файловой системы. Как его выбрать? Опишите и обоснуйте пару случаев когда лучше отойти от стандартного размера.
  3. Что такое “монтирование файловой системы”
  4. Расскажите какие бывают виды/типы бекапов (минимум три). Что Вы думаете про бекап на ленту? опишите преимущества и недостатки использования ленточных накопителей перед жесткими дисками с т.з. бекапа?
  5. ‎Что такое «дисковая полка», для чего она нужна? Как происходит типовое расширение мощности хранения дисковых полок?
  6. ‎Знакомы ли Вам термины: NFS, CIFS, DRBD? Опишите что скрывается за каждым из них.
  7. Опишите “золотое правило” бекапа “3-2-1 “.
  8. Что такое IOPS и что ими измеряют? Как их посчитать? Зачем нужно учитывать эту характеристику?
  9. Расскажите про технологии FC, iSCSI и в каком случае что следует выбрать для построения SAN?
  10. Расскажите про дедупликацию на файловом и блочном уровне.

Информационная безопасность

  1. Политика безопасности- что за зверь такой?
  2. Разница между идентификацией, аутентификацией и авторизацией?
  3. Что такое двухфакторная аутентификация, в чем преимущество перед традиционной? Приведите три примера 2-х факторной аутентификации?
  4. Расскажите подробней про протокол SSH. Что это, для чего он нужен, как работает, как защищает, какие предоставляет дополнительные возможности?
  5. ‎Что такое SSL/TLS и для чего они могут быть нам полезны — расскажите на примере HTTP/HTTPS.
  6. ‎Расскажите про типовые сетевые атаки и методы защиты от них:
    • ARP спуфинг,
    • DNS спуфинг,
    • двойное тегирование
    • переполнение буффера
    • MITM
    • Атака на механизм авторизации (т.н. парольные атаки) методом брутфорса (например по SSH, RDP, CIFS) или перебора по словарю
    • Широковещательные шторма в сети
    • Ping flood
    • Smurf
    • DNS Spoofing
    • Flood-атаки (HTTP-flood, UDP-Flood, SYn-Flood, ICMP-Flood)
    • Amplification атаки (DNS,NTP)
    • Эксплуатация уязвимостей с помощью эксплоитов
    • SQL injection
    • XSS
  7. ‎Что такое социальная инженерия? Чем она опасна? Приведите примеры использования и защиты.
  8. ‎SPAM — что такое, за счет чего реализуется и как можно с ним бороться?
  9. ‎Fishing — что это такое и чем он может быть опасен корпоративной инфраструктуре?
  10. В чем разница между Malware и Adware?
  11. VPN — расскажите про эту технологию, опишите сферы применения ( с примерами), приведите в пример 2-3 реализации.
  12. ‎IDS, IPS — что это такое, для чего они нужны, разница между этими решениями?
  13. ‎Опишите механизм работы и сферу применения протокола Kerberos.
  14. Honeypot — что это такое и как применяется?

Инфраструктура и мониторинг

  1. Zabbix — что вы можете рассказать об этой системе? Что она делает, для чего предназначена? Что с ее помощью можно реализовать сразу ( функционал “из коробки”), а для чего придется “поработать напильником”?
  2. Что такое Graphana и как она связана с Zabbix?
  3. ‎logstash / elasticsearch / Kibana — что это за “чудовища”?
  4. Расскажите про иерархическую структуру сети. Зачем она нужна? в чем преимущество? Что из себя представляет ядро сети, для чего нужны уровни доступа и распределения? Какие модули можно выделить в такой структуре сети? Нарисуйте общую схему и расскажите.
  5. Вы внедряете службу каталогов Active Directory в Вашей сети. Какое число домен контроллеров должно быть в вашей сети? Как это число изменится (качественно и количественно), если ваша серверная инфраструктура в основном виртуализированна? (подсказка-  рекомендации Microsoft)

Оборудование

  1. Разделите по 3 группам — сетевое, серверное и оборудование для хранения данных следующих вендоров (может относиться к более чем 1 группе):
    1. Cisco
    2. Juniper
    3. HP
    4. IBM
    5. Lenovo
    6. Mikrotik
    7. Supermicro
    8. DELL
    9. Fujitsu
    10. Huawai
    11. Fortinet
    12. Palo Alto
    13. Checkpoint
    14. Ubiquity
    15. EMC
    16. Brocade
    17. NetAPP
    18. Extreme Networks
  2. Что такое DELL iDrac, HP iLo, Supermirco IPMI и аналогичные решения?
  3. Вы покупаете оптом большую партию жестких дисков. При получении Вы видите, что на большинстве их них идет одинаковый PN (Part Number). Чем это может быть плохо?

Технологии виртуализации

  1. Что из указанного ниже является просто гипервизором, а что является платформой виртуализации ( централизованное управление, Enterprise class features и тп):
    1. Hyper-V
    2. KVM
    3. Xen
    4. Proxmox
    5. ESXi
    6. vSphere
    7. oVirt
  2. Thin  и Thick  disk provisioning  — что это такое и в чем различие? (Аналог — статические и динамические диски).
  3. Что такое NUMA?
  4. Что означает термин “overprovisioning”
  5. Опишите возможные сценарии миграции с одной системы виртуализации на другую.
  6. Что такое HA (high availability) cluster?
  7. Что такое Live — migration ( или аналогичный термин), и какие условия должны соблюдаться для реализации этой технологии?
  8. Что такое Shared storage, для чего он нужен и как его можно реализовать?
  9. Что такое OVA, OVF?
  10. Что такое паравиртуализация? В чем ее особенность и преимущество? Расскажите про паравиртуальные драйвера.
  11. При каких условиях серверная ОС Microsoft в редакции Hyper-V Server доступна Вам бесплатно?

DevOps сфера и автоматизация

  1. Расскажите что такое GIT, зачем он нужен, пару сценариев его применения? Что означают команды:
    1. git clone
    2. git commit
    3. git push
    4. git pull
  2. Что из себя представляет инструмент Vagrant? Опишите возможные сферы применения.
  3. Что такое контейнеризация? Объясните на примере любого популярного решения, например LXC или Docker.
  4. Что такое Puppet, Ansible, Chief? Расскажите подробней про какой то из них, если знаете?
  5. В чем отличие (i for i in arr) от [i for i in arr] в Python?
  6. Зачем  может использоваться подобная конструкция в bash скрипте? 
    •  ls -l /var/
      echo $?

Базы данных

  1. Что такое СУБД и зачем они нужны в принципе?
  2. Что означают следующие запросы:
    1. SELECT * FROM «users» GROUP BY «category», «id»;
    2. SELECT * FROM  «users» LEFT JOIN  «users2» USING (id);
    3. CREATE TABLE  «users» («id» INT(11) NOT NULL AUTO_INCREMENT, «name» CHAR(30) NOT NULL, «age» SMALLINT(6) NOT NULL, PRIMARY KEY(«id») );
    4. DROP TABLE “users”;
  3. В чем разница SQL и noSQL СУБД? Не надо глубоких технических аспектов, 2-3 тезиса своими словами.
  4. Разделите следующие СУБД на SQL и noSQL:
    1. Mysql
    2. MSSQL
    3. Apache Cassandra
    4. SQLite
    5. MongoDB
    6. PostgreSQL
    7. MariaDB
    8. PerconaDB
  5. Что означают термины:
    1. репликация
    2. шардинг
    3. кластер СУБД
  6. В чем разница работы между Master-Master  и Master-Slave конфигурацией СУБД?
  7. Сколько нужно нод в типовом кластере СУБД для достижения кворума?
  8. Что такое Storage Engine? Какие типовые SE вы знаете для Mysql?

Практические задачи

  1. Объясните на пальцах что происходит между в промежутке между тем как пользователь ввел в адресной строке браузера vk.com, нажал Enter, и тем как на экране отрисовалась страничка сайта Вконтакте. Считаем что пользователь работает в домашней сети. Описать необходимо максимально подробно, учитывая все нюансы, в том числе косвенную с точки зрения данного процесса активность.
  2. ‎Перед вами поставили задачу развернуть в организации почтовый сервер. Какие действия с т.з. настройки DNS вам необходимо совершить, чтобы отправка и получение электронной почты работали корректно?
  3. Вам необходимо настроить межсетевой экран, находящийся на границе Вашей корпоративной сети и сети Интернет, с учетом наличия в Вашей инфраструктуре зоны DMZ. Пусть у межсетевого экрана всего 3 интерфейса ( по 1 на каждую зону). В каком порядке и какие правила вы будете применять? Можно описывать команды с использованием любого синтаксиса вплоть до псевдокода.
  4. Ваша система Windows не загружается,  под рукой у вас только установочный диск с Windows и вам необходимо достать один или несколько важных файлов из той системы. Ваши действия, если саму систему по определенным причинам переустанавливать нельзя?
  5. Ваша система Windows загружается, но пароль был утерян или в результате порчи единственного профиля пользователя вы не можете войти в систему, как можно сбросить пароль или создать другого пользователя имея под рукой напр только установщик винды на внешнем накопителе не прибегая к спец ПО? ПК не в домене.
  6. Вам необходимо развернуть отказоустойчивую (с т.з. непрерывной работы) конфигурацию Active Directory. Все сервера в Вашей инфраструктуре виртуализованные. Опишите конфигурацию начиная с установки и подключения серверов виртуализации и заканчивая числом и конфигурацией виртуальных машин.

 

П.С. пока составлял этот список, нашел еще один интересный сборник вопросов на собеседование Linux администратора

П.П.С. Как я уже упомянул ранее, этот список не проходил «обкатку» на живых собеседованиях, поэтому буду благодарен за обратную связь в комментариях, а лучше на почту или в ТГ. Контакты можно найти в соответствующем разделе блога.