Для початку: я - самоучка і у мене немає сертифікатів. Почав з того, що поставив собі за мету отримати root на FreeBSD-сервері фірми де я працював, який администрировал представник провайдера. Так сталося, що в цей період я познайомився із знавцем, який в подальшому мене консультував. Купив книжку «Системне адміністрування Unix» і почалося
Загальна інформація
- Купуйте книгу, яка Вам сподобається. Це обов'язково. Текст з книги сприймається краще, ніж з екрану
- Добре, якби у Вас був знайомий чоловік, якого Ви можете запитати в разі чого. Він направить і підкаже. А це і економія часу і не відіб'є бажання просуватися далі. Починайте вивчати той дистрибутив, який знає Ваш знайомий. Linux і FreeBSD мають багато спільного і перейти з однієї системи на іншу потім не буде проблемою
- Пробувати краще на реальному залозі. Якщо все піде добре, то можна відразу впроваджувати в мережу підприємства. На живих прикладах вчитися краще, тому - впроваджуйте
- Пункти, які не першочергові я зазначив оливковою кольором
- Все ніженапісанное стосується сервера FreeBSD
- Всі дії повинні проводитися в командному рядку. Якщо Ви хочете навчитися правильно, то не встановлюйте веб-клієнти адміністрування, такі як webmin
Доступ до системи
- Петля, внутрішній, зовнішній мережеві інтерфейси. Команди ifconfig, route
- Віддалений доступ до системи за допомогою telnet, ssh
- сервіс inetd
- файервол ipfw
- NAT. Як його реалізувати за допомогою ipfw і ipnat
установка програм
Перед установкою потрібне ПО скачується з інтернету з репозиторіїв, про які Ви швидше за все навіть не будете мати поняття. Але, щоб це стало можливим потрібно вказати в /etc/resolv.conf ДНС-сервер хоча б одного провайдера
- Пакетний менеджер pkg
- дерево портів
- Пошук потрібного в портах. Команди make search key, make search name
- Установка програм. Комадно make, make install, make clean
- програма portupgrade
- Чому установка через порти краще? Спробуйте відповісти на це питання самі
- файл resolv.conf
- Кешируєтся dns-сервер unbound
- Сервер доменних імен nsd. Bind не пропоную, з версії 10 він переписаний на пітона й вважається непристойно важким
Це мінімально-базова конфігурація. Після закінчення цього етапу Ви вмієте встановити систему, зібрати своє ядро, в разі падіння сервера через відсутність електрики Ви знаєте, як його підняти. Ви розумієте як працює маршрутизація і резолвінг. Ви домоглися того, що можете ходити зі своєї внутрішньої мережі в інтернет
Проксі-сервер Squid
Після впровадження з мережу проксі-сервера Ваші користувачі вже не повинні безпосередньо ходити в інтернет, а тільки через проксі. У Вас налаштована звітність, Ви розумієте хто і куди ходить (якщо один користувач - один комп'ютер, або якщо це термінальні користувачі, то для персоніфікації доведеться налаштовувати аутентифікацію користувачів з AD) і в будь-який момент можете надати начатьству статистику
Веб-сервер
Встановивши і налаштувавши веб-сервер Ви зробили собі заділ на майбутнє
Бази даних
На цьому етапі це мінімально необхідний набір знань, які допоможуть надалі. Для офісного використання байдуже, яку базу даних Ви виберете, але з досвіду скажу, що mysql все ж краще, бо багато програм заточене саме під нього. Хоча можете встановити відразу дві і пробувати налаштовувати інше програмне забезпечення відразу для роботи в двох базах
noSQL бази даних на цьому етапі швидше за все не будуть потрібні, якщо тільки ви не достадочно досвідчений адміністратор або веб-майстер і в найближчій перспективі плануєте будувати highload веб-сервер
Мережеві сервіси
- Samba. Буде потрібно для squid якщо потрібна аутентифікація користувача в AD. Може виступати в ролі додаткового домен-контроллера. Або Ви вирішили виймати все вкладення з вхідних поштових повідомлень, складати їх у певні папки і зробити їх доступними для windows-комп'ютерів по мережі
- FTP. В подальшому може знадобитися. Якщо так, то раджу подивитися в сторону proftpd. Якщо потрібно «вже», то дивимося в файл inetd.conf і ftpusers
- NFS. Ознайомчо, врядли потрібно якщо у Вас всього лише один юнікс-сервер в мережі
- VPN. Для доступу зовнішніх користувачів до внутрішніх ресурсів мережі. Наприклад: до термінального windows-сервера, поштою і т.д.
моніторинг
Ось коротко і все, що потрібно в звичайному офісі. Все це я пройшов сам протягом кількох років
Подальші плани такі як скріптопісательство, тонка настройка БД і вибір движка, кастомизация ядра системи і налаштування параметрів sysctl, віртуальні канали між офісами та інше - це потім, за потребою