Перш ніж ми розпочнемо:
Маючи якісних людей, ви заощадите гроші. Так само, як
мати хорошого юриста (можливо, NSFW за присягу) або бухгалтера, мати якісну SysAd, ймовірно, заощадить гроші, часто просто допомагаючи вам уникнути дорогих помилок. Ви можете не мати грошей, щоб заплатити за експертизу зараз, але як тільки зможете, ви повинні зробити ці інвестиції.
На це питання немає простої, єдиної відповіді. Якщо ви хочете задати це питання, ви повинні усвідомити, що це питання є ядром галузі, в яку професіонали вкладають роки навчання та практики. Аналогічним запитанням для розробника було б "як мені написати веб-додаток?"; Звичайно, ми можемо вказати вам на вказівки щодо встановлення Ruby-on-Rails та RoR "Hello World". Хоча це відповість на питання, це насправді вам не допоможе. Цей Q / A - це спроба фактично допомогти вам.
Ви повинні знати:
Адміністрація веб-сервера - це велика тема, і вона суттєво переплетена багатьма різними дисциплінами. Для того, щоб зробити це добре, вам знадобиться фундаментальне розуміння TCP / IP, хост-операційної системи, вашої програми WebServer та деяке розуміння запуску стека програм.
Будьте готові до читання. Дуже багато .
Визначте свої потреби:
Вимоги
- У вас є звичайний статичний веб-сайт (можливо, з деякими ефектами Javascript), або
- (з більшою ймовірністю) запускаєте програму, у якої трапляється веб-інтерфейс?
- Чи є у вас постійні дані? (Вам потрібна база даних?)
- Чи задіяні облікові дані користувачів? Чи є ще одна причина, що вам потрібно забезпечити зв’язок між користувачем та веб-сайтом? (SSL)
- Чи обробляєте ви будь-які платежі? На додаток до вимог SSL, є додаткові міркування, які вам знадобляться для дослідження (залежно від регіону). Вони також змінюватимуться в залежності від платіжного процесора, який ви використовуєте.
Визначте свій стек:
Як ти збираєшся писати та виконувати це?
- Платформа (Windows, Linux, інші Unix тощо)
- Вимоги до додатків (Ruby / Rails, Python, Perl, PHP, .NET тощо, тощо)
- База даних (...)
- Керінг? (Чесно кажучи, зараз не хвилюйтеся з цього приводу; майте на увазі, що це вирішує деякі проблеми, а може створювати інші. Це проблема продуктивності, і зараз ви просто намагаєтеся розпочати роботу.)
Про деякі з цих варіантів інформуватимуть інші. Наприклад, якщо ви використовуєте додаток .NET, ви, ймовірно, хочете використовувати MSSQL та IIS; Якщо ви працюєте з Ruby на Rails, ви, мабуть, хочете сервер Linux; тощо ...
Ознайомтеся з вашим продуктом:
Тепер, коли ви вирішили, як буде виглядати ваш стек, вам потрібно це познайомити. Тут ви повинні провести більшу частину свого часу. Пошук "Налаштувати [продукт]" або "[продукт] Посібник для адміністратора" має отримати достатньо ресурсів.
Наприклад, якщо ви використовуєте Apache в Ubuntu, вам слід абсолютно прочитати:
Шукайте подібні документи, статті, повідомлення в блогах для свого стека.
Встановіть мінімум:
Для Apache існує безліч модулів, але якщо ви не збираєтесь використовувати PHP (наприклад), не встановлюйте mod-php.
Тут також слід зазначити, що вам слід уникати встановлення графічного інтерфейсу, якщо це сервер Linux; GUI використовує значну кількість системних ресурсів.
Захист сайту:
- Забезпечте мінімальні дозволи на функціонування. Це стосується не лише файлової системи, але і служб та процесів
- Залишайте відключені порти сервера для непотрібних послуг. (Знову лише встановіть мінімум.)
- Обмежте інтерфейси додатків до внутрішнього середовища (якщо, наприклад, запущено веб-додаток на тому ж сервері (наприклад, Rails), обмежте його лише для прослуховування localhost)
Закриття:
Це лише початки того, що ви повинні зробити, щоб створити і запустити сайт. Це навіть не починає зачіпати проблеми обслуговування серверів або способів вирішення проблем масштабування (якщо ваш проект стане успішним), а також будь-які інші безлічі проблем, які обізнаний SysAd вирішить для вас.