Предисловие
Продолжая начатый ранее курс, выкладываю следующую статью из цикла по профессиональному росту системного администратора.
Ранее, я уже выкладывал сюда список вопросов, посвященных собеседованию начинающего IT инженера. Статья пригодилась нескольким моим знакомым и теперь они попросили меня составить такой же список, но уже для проведения собеседования с более “зрелым” специалистом. Так сказать с Middle SA а не Junior.
Сложность в том, что используя вопросы из предыдущей статьи, я сам проводил собеседования, таким образом “обкатывал” их на практике. Сейчас же эти вопросы будут “сырыми”, из головы. Поэтому буду благодарен за обратную связь по почте или через Телеграмм.
Немного о составлении этого списка — я не считаю необходимым заострять внимание на вопросах в духе “какую кнопку в консоли управления сервером надо нажать чтобы получить то-то” — это глупо. Если вы знаете что должно делать то или иное программное обеспечение, как она должна работать, какие протоколы использовать — в интерфейсе вы всегда разберетесь. В то же время, нельзя объять необъятное — нельзя в небольшой опросник впихнуть полноценный тест по сетям, Windows и еще чертовой туче вещей. Поэтому я постарался выбрать и сформулировать такие вопросы и задачи, которые точечно проверяя знания собеседуемого, позволяют составить довольно полную картину о его теоретическом и практическом “бэкграунде”.
П.С. Для удачного прохождения этого теста-опросника, не нужно отвечать на все 100% вопросов формальными, заученными фразами и определениями. Достаточно четко представлять себе то, о чем вопрос был задан и уметь ответить не него “своими словами”.
П.П.С. Я не проводил слияние этого списка с списком вопросов для Junior System Administrator. Предполагается что для Вас не составит труда ответить на ВСЕ вопросы из джуниорского списка, иначе советую начать именно с него. Если Джуниор список вызывает у Вас затруднения- к этому приступать явно рано!
Редакция 1 — Публикация статьи
Редакция 2 — Внесены исправления в секцию СУБД
Оглавление
- Общие вопросы — вопросы посвященные каким-то вещам, которые невозможно четко отнести к той или иной сфере и которые при этом являются в какой-то мере основополагающими на мой взгляд.
- Локальная сеть предприятия — вопросы посвященные собственно локальным сетям! Как неожиданно, да? Некоторые из них проверяют уровень знаний и глубину понимания вопроса, другие — подход собеседуемого к построению и поддержке этой структуры.
- Администрирование Windows систем и сетей — тут особо нечего добавить. Эти знания важны, эти знания нужны. Хотя бы потому, что большая часть пользовательских компьютеров находится под управлением именно этой ОС и на базе технологии компании Microsoft строится управление ими.
- Администрирование Linux систем и сетей — очень популярная в последние годы операционная система ( а точней семейство систем), без которых сложно представить себе хоть одну инфраструктуру (да да, сейчас время гетерогенных сетей)!
- Хранение и управление данными — все это хорошо, но без данных, которыми наполнены наши системы, и обработкой которых они занимаются, все эти ваши серверы-компьютеры-сети были бы никому не нужны. Поэтому понимание в вопросах хранения и управления данными так важно.
- Информационная безопасность — ну тут особенно нечего коментировать. Конечно, если системный администратор работает в сколько-нибудь крупном ИТ отделе, вопросы ИБ его касаются слабо- соблюдай процедуры и политики, следуй инструкциям, которые для тебя подготовил специалист по ИБ и все будет хорошо. Но если в штате нет выделенного специалиста по ИБ, или администратор работает в одиночку (ну может быть один Старший администратор и пара помощников), ему приходится самостоятельно решать эти вопросы. И осведомленность в этой области окажется очень кстати.
- IT Инфраструктура и мониторинг — нужно не просто уметь «накатывать» ОС и ставить программы по методу «далее-далее», но и понимать как строить сколько-нибудь сложные окружения.
- Оборудование — несколько вопросов на понимание того, что мир системного администратора это не только ноутбуки и самосборные системники.
- Технологии виртуализации — физические сервера с продакшен-системой «на живую» это сейчас скорее нонсенс и архаизм чем реальность (в большинстве случаев). Проверим как работает
- DevOps сфера и автоматизация — самый маленький и не расписанный раздел. Обычно переход в в эту сферу не является прерогативной Middle System Administrator. Поэтому вопросы тут скорей ознакомительные.
- Базы данных — уровня знаний полноценного DBA никто не требует, но общая осведомленность должна быть.
- Практические вопросы и задачи — несколько кейсов, которые могут быть или были встречены в жизни.
Общие вопросы
- Объясните максимально подробно и развернуто (“на пальцах”) все этапы загрузки операционной системы — от момента нажатия кнопки питания до появления экрана с приглашением входа пользователя. Не имеет значения на примере какой операционной системы.
- Файловые системы — что это такое, зачем они созданы, почему мы не можем без них. Как они устроены, какие бывают. Что происходит при удалении файла.
Локальная сеть предприятия
- В вашей сети есть несколько сегментов, соединенных маршрутизаторами. Проверка с помощью команды ping показывает, что связь между маршрутизаторами в порядке. С узла А из одной сети до узла В находящегося в другой сети отправляется ping запрос (echo request). С помощью снифера, администратор фиксирует его получение и отправку ответа на узле В, однако до узла А ответ не доходит. Обе сети подключены к разным маршрутизаторам, правила фильтрации отсутствуют.. В чем может быть дело?
- Расскажите что такое VLAN — как устроена, как работает и для чего нужна эта технология. Поясните смысл следующих терминов: Router-on-a-stick, native vlan, , private vlan. Когда в кадр Ethernet добавляется тег VLAN-а, а когда он удаляется?
- Расскажите про стекирование коммутаторов — что это, для чего нужно, как реализуется. Плюсы и минусы.
- Что такое протоколы маршрутизации и для чего они нужны? Разница между RIP, OSPF и EIGRP.
- Что такое “петля” в сети и как эффективно и автоматизированно с этим бороться?
- Как определить назначенные и корневые порты коммутаторов? Речь идет про протоколы семейства STP.
- Расскажите про метрику и административную дистанцию маршрута. Что это, чем эти два понятия отличаются, а чем связаны? зачем это нужно?
- Кратко расскажите про отличия и преимущества протокола IPv6 по сравнению с IPv4. Не только про размер адресного пространства!
- Как работает DHCP в IPv6?
- несколько типовых протоколов списком — чтобы рассказали что это, зачем, как работает.
- Вам поставлена задача — сегментировать вашу сеть. В результате сегментирования, все сервера перемещаются в выделенный VLAN, в том числе и DHCP сервер. Что нужно сделать, чтобы клиентские хосты в любом из сегментов получали сетевые настройки от него?
- Что такое Jambo-frames?
Администрирование Windows систем и сетей
- Каким образом компьютер, введенный в домен, может найти ближайший к нему домен контроллер и зачем ему это делать?
- Какие сервисные записи добавляются в DNS при создании домена Active Directory?
- У вас большой парк windows машин, входящий в домен Active Directory. Расскажите, как можно управлять машиной в домене не касаясь ее руками и используя при этом встроенные возможности? Перечислите как минимум 4 варианта? Вариант “подключусь через Teamvierwer” не считается.
- Что такое мастера операций? Зачем они нужны? Расскажите про Schema master, Domain naming master, RID master, PDC emulator, Infrastructure master.
- После установки служб AD DS на сервер и подъема его роли до уровня DC, существовавшие ранее учетные записи были куда то перенесены. Где теперь их искать?
- Что такое Windows SAM, для чего он нужен? Где и в каком виде Windows хранит пароли локальных учетных записей?
- Можно ли хранить логи Windows на выделенном удаленном сервере? Для чего и как?
- Возможно ли в Windows подключить новый жесткий диск в уже существующую структуру файловой системы? То есть не создавая новый корень в виде диска D, E и т.д.
- Расскажите про локальные, глобальные и универсальные группы. Сферы их применения?
- В чем разница между группами безопасности и группами распространения?
- В чем разница между учетными записями Local System, Local Service, Network Service и зачем их столько нужно?
- Описать в своими словами назначение следующих стандартных каталогов системы:
- %osdrive%\Windows,
- system32,
- syswow64 (в каких случаях он отсутствует?),
- ProgramData,
- Program Files (в тч x86 вариант),
- каталоги пользователя AppData, AppData\Local и Roaming и их разницу
- Расскажите про стандартные разделы реестра, откуда осуществляется автозагрузка программ, их отличия.
- У вас есть определенное ПО, которое осуществляет работу с определенными, не перенастраиваемыми каталогами. Можно ли вынудить его работать с другим каталогом и\или диском? Если да, то как этого добиться?
- Что такое Server Core и в каких сценариях оправдано его использование?
- Как превратить Windows Server 2012R2 standard в Server Core?
- Опишите порядок применения групповых политик в домене с т.з. обычного пользовательского ПК. Т.е. какие политики и в каком порядке будут применены.
Администрирование Linux систем и сетей
- Перед вами есть бинарный исполняемый файл программы. Она не запускается, падая с ошибкой. Логи, которые она пытается писать и вывод на экран не дают вразумительной информации. Что вы будете делать для диагностики ее работы и как в этом вам могут помочь утилиты strace и ltrace?
- Опишите результат работы следующих “однострочников”:
- 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
- Постарайтесь как можно более полно описать структуру каталогов и файлов ОС Linux (считаем что рассматриваемая система с т.з. файлов и папок строго подчиняется стандарту FHS).
- Каков результат выполнения следующих команд в редакторе VIM:
- :%s/foo/bar/gc
- :dd
- :r /some/file
- Пакетные менеджеры- что это такое, для чего они нужны, как они работают? Что такое репозиторий ПО? Основные команды менеджеров apt и rpm?
- LVM — что это такое, зачем он нужен? Его устройство- расскажите про физические тома, группы томов, логические тома, экстенты и их мапинг. Опишите процедуру вывода физического тома из LVM.
- Ввод Linux машины в домен Windows.. Методы и сложности.
- Что такое “load average”, что значат эти три цифры в выводе команды TOP и аналогичных, и как их интерпретировать?
- Виды состояний процессора ( утилизации процессора) в выводе команды TOP и аналогичных. Прокомментируйте их:
- Что за файловая система /proc?
- Что делают следующие команды (вкупе):
- 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
Хранение и управление данными
- Расскажите что такое RAID, чем отличается Hardware RAID и Software RAID. Какие уровни RAID ( их плюсы и минусы) Вы знаете? Какой уровень RAID вы бы выбрали для Файлового сервера? А для сервера СУБД? Почему?
- расскажите что такое размер блока файловой системы. Как его выбрать? Опишите и обоснуйте пару случаев когда лучше отойти от стандартного размера.
- Что такое “монтирование файловой системы”
- Расскажите какие бывают виды/типы бекапов (минимум три). Что Вы думаете про бекап на ленту? опишите преимущества и недостатки использования ленточных накопителей перед жесткими дисками с т.з. бекапа?
- Что такое «дисковая полка», для чего она нужна? Как происходит типовое расширение мощности хранения дисковых полок?
- Знакомы ли Вам термины: NFS, CIFS, DRBD? Опишите что скрывается за каждым из них.
- Опишите “золотое правило” бекапа “3-2-1 “.
- Что такое IOPS и что ими измеряют? Как их посчитать? Зачем нужно учитывать эту характеристику?
- Расскажите про технологии FC, iSCSI и в каком случае что следует выбрать для построения SAN?
- Расскажите про дедупликацию на файловом и блочном уровне.
Информационная безопасность
- Политика безопасности- что за зверь такой?
- Разница между идентификацией, аутентификацией и авторизацией?
- Что такое двухфакторная аутентификация, в чем преимущество перед традиционной? Приведите три примера 2-х факторной аутентификации?
- Расскажите подробней про протокол SSH. Что это, для чего он нужен, как работает, как защищает, какие предоставляет дополнительные возможности?
- Что такое SSL/TLS и для чего они могут быть нам полезны — расскажите на примере HTTP/HTTPS.
- Расскажите про типовые сетевые атаки и методы защиты от них:
- 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
- Что такое социальная инженерия? Чем она опасна? Приведите примеры использования и защиты.
- SPAM — что такое, за счет чего реализуется и как можно с ним бороться?
- Fishing — что это такое и чем он может быть опасен корпоративной инфраструктуре?
- В чем разница между Malware и Adware?
- VPN — расскажите про эту технологию, опишите сферы применения ( с примерами), приведите в пример 2-3 реализации.
- IDS, IPS — что это такое, для чего они нужны, разница между этими решениями?
- Опишите механизм работы и сферу применения протокола Kerberos.
- Honeypot — что это такое и как применяется?
Инфраструктура и мониторинг
- Zabbix — что вы можете рассказать об этой системе? Что она делает, для чего предназначена? Что с ее помощью можно реализовать сразу ( функционал “из коробки”), а для чего придется “поработать напильником”?
- Что такое Graphana и как она связана с Zabbix?
- logstash / elasticsearch / Kibana — что это за “чудовища”?
- Расскажите про иерархическую структуру сети. Зачем она нужна? в чем преимущество? Что из себя представляет ядро сети, для чего нужны уровни доступа и распределения? Какие модули можно выделить в такой структуре сети? Нарисуйте общую схему и расскажите.
- Вы внедряете службу каталогов Active Directory в Вашей сети. Какое число домен контроллеров должно быть в вашей сети? Как это число изменится (качественно и количественно), если ваша серверная инфраструктура в основном виртуализированна? (подсказка- рекомендации Microsoft)
Оборудование
- Разделите по 3 группам — сетевое, серверное и оборудование для хранения данных следующих вендоров (может относиться к более чем 1 группе):
- Cisco
- Juniper
- HP
- IBM
- Lenovo
- Mikrotik
- Supermicro
- DELL
- Fujitsu
- Huawai
- Fortinet
- Palo Alto
- Checkpoint
- Ubiquity
- EMC
- Brocade
- NetAPP
- Extreme Networks
- Что такое DELL iDrac, HP iLo, Supermirco IPMI и аналогичные решения?
- Вы покупаете оптом большую партию жестких дисков. При получении Вы видите, что на большинстве их них идет одинаковый PN (Part Number). Чем это может быть плохо?
Технологии виртуализации
- Что из указанного ниже является просто гипервизором, а что является платформой виртуализации ( централизованное управление, Enterprise class features и тп):
- Hyper-V
- KVM
- Xen
- Proxmox
- ESXi
- vSphere
- oVirt
- Thin и Thick disk provisioning — что это такое и в чем различие? (Аналог — статические и динамические диски).
- Что такое NUMA?
- Что означает термин “overprovisioning”
- Опишите возможные сценарии миграции с одной системы виртуализации на другую.
- Что такое HA (high availability) cluster?
- Что такое Live — migration ( или аналогичный термин), и какие условия должны соблюдаться для реализации этой технологии?
- Что такое Shared storage, для чего он нужен и как его можно реализовать?
- Что такое OVA, OVF?
- Что такое паравиртуализация? В чем ее особенность и преимущество? Расскажите про паравиртуальные драйвера.
- При каких условиях серверная ОС Microsoft в редакции Hyper-V Server доступна Вам бесплатно?
DevOps сфера и автоматизация
- Расскажите что такое GIT, зачем он нужен, пару сценариев его применения? Что означают команды:
- git clone
- git commit
- git push
- git pull
- Что из себя представляет инструмент Vagrant? Опишите возможные сферы применения.
- Что такое контейнеризация? Объясните на примере любого популярного решения, например LXC или Docker.
- Что такое Puppet, Ansible, Chief? Расскажите подробней про какой то из них, если знаете?
- В чем отличие (i for i in arr) от [i for i in arr] в Python?
- Зачем может использоваться подобная конструкция в bash скрипте?
- ls -l /var/
echo $?
- ls -l /var/
Базы данных
- Что такое СУБД и зачем они нужны в принципе?
- Что означают следующие запросы:
- SELECT * FROM «users» GROUP BY «category», «id»;
- SELECT * FROM «users» LEFT JOIN «users2» USING (id);
- CREATE TABLE «users» («id» INT(11) NOT NULL AUTO_INCREMENT, «name» CHAR(30) NOT NULL, «age» SMALLINT(6) NOT NULL, PRIMARY KEY(«id») );
- DROP TABLE “users”;
- В чем разница SQL и noSQL СУБД? Не надо глубоких технических аспектов, 2-3 тезиса своими словами.
- Разделите следующие СУБД на SQL и noSQL:
- Mysql
- MSSQL
- Apache Cassandra
- SQLite
- MongoDB
- PostgreSQL
- MariaDB
- PerconaDB
- Что означают термины:
- репликация
- шардинг
- кластер СУБД
- В чем разница работы между Master-Master и Master-Slave конфигурацией СУБД?
- Сколько нужно нод в типовом кластере СУБД для достижения кворума?
- Что такое Storage Engine? Какие типовые SE вы знаете для Mysql?
Практические задачи
- Объясните на пальцах что происходит между в промежутке между тем как пользователь ввел в адресной строке браузера vk.com, нажал Enter, и тем как на экране отрисовалась страничка сайта Вконтакте. Считаем что пользователь работает в домашней сети. Описать необходимо максимально подробно, учитывая все нюансы, в том числе косвенную с точки зрения данного процесса активность.
- Перед вами поставили задачу развернуть в организации почтовый сервер. Какие действия с т.з. настройки DNS вам необходимо совершить, чтобы отправка и получение электронной почты работали корректно?
- Вам необходимо настроить межсетевой экран, находящийся на границе Вашей корпоративной сети и сети Интернет, с учетом наличия в Вашей инфраструктуре зоны DMZ. Пусть у межсетевого экрана всего 3 интерфейса ( по 1 на каждую зону). В каком порядке и какие правила вы будете применять? Можно описывать команды с использованием любого синтаксиса вплоть до псевдокода.
- Ваша система Windows не загружается, под рукой у вас только установочный диск с Windows и вам необходимо достать один или несколько важных файлов из той системы. Ваши действия, если саму систему по определенным причинам переустанавливать нельзя?
- Ваша система Windows загружается, но пароль был утерян или в результате порчи единственного профиля пользователя вы не можете войти в систему, как можно сбросить пароль или создать другого пользователя имея под рукой напр только установщик винды на внешнем накопителе не прибегая к спец ПО? ПК не в домене.
- Вам необходимо развернуть отказоустойчивую (с т.з. непрерывной работы) конфигурацию Active Directory. Все сервера в Вашей инфраструктуре виртуализованные. Опишите конфигурацию начиная с установки и подключения серверов виртуализации и заканчивая числом и конфигурацией виртуальных машин.
П.С. пока составлял этот список, нашел еще один интересный сборник вопросов на собеседование Linux администратора.
П.П.С. Как я уже упомянул ранее, этот список не проходил «обкатку» на живых собеседованиях, поэтому буду благодарен за обратную связь в комментариях, а лучше на почту или в ТГ. Контакты можно найти в соответствующем разделе блога.