Вредные советы для разработчиков
Равиль Кадырбаев и Василий Кечин, системные администраторы PS.KZ
Совет 1
Как не надо делать:Не стоит тратить свое драгоценное время на настройку фаервола. Сетевые службы лучше оставить открытыми всему миру, открытость - залог успеха.
Как надо делать:Настраиваем фаервол по принципу «Что не разрешено – запрещено».
www.ps.kz
Совет 2
Как не надо делать:Никогда не знаешь, какая функция php может вам пригодиться в проекте, поэтому никогда не настраивайте запрещенные функции.
Как надо делать:disable_functions = apache_setenv,dl,exec,openlog,passthru,pcntl_exec,pcntl_fork,pfsockopen,popen,posix_getpwuid,posix_kill,posix_mkfifo,posix_setpgid,posix_setsid,posix_setuid,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,shell_exec,socket_create,socket_create_listen,socket_create_pair,syslog,system,socket_listen,stream_socket_server
www.ps.kz
Совет 3
Как не надо делать:Не отключайте показ версии используемых компонентов - посетитель должен знать с чем он работает. И, к тому же, это абсолютно безопасно.
Как надо делать:php.ini:expose_php = Off
nginx.conf:server_tokens off;
httpd.conf:ServerSignature OffServerTokens Prod
www.ps.kz
Совет 4
Как не надо делать:Не стоит загромождать сервер приложения большим количеством веб-серверов. Доверяй только «старому индейцу» и своему notepad'у.
Как надо делать:Всю статику отдавать через nginx.
www.ps.kz
Совет 5
Как не надо делать:Зачем заводить кучу пользователей, если вся команда может ходить под root по принципу KISS.
Как надо делать:Закрываем удаленный вход под администратором. На сервер ходим только под непривилегированным пользователем.
www.ps.kz
Совет 6
Как не надо делать:Не стоит чистить базу данных от лишних данных, копии БД и тестовые пользователи всегда могут пригодиться.
Как надо делать:mysql_secure_installation, никаких посторонних БД и пользователей на боевом сервере.
www.ps.kz
Совет 7
Как не надо делать:Unix-права - это очень сложно, всем известно что 777 гарантировано исправляет проблемы в приложении.
Как надо делать:777 – это плохо750 или 755 для каталогов640 или 644 для файлов
www.ps.kz
Совет 8
Как не надо делать:Нет смысла генерировать длинные и сложные пароли, ну кому нужен ваш сервер?
Как надо делать:Используем генераторы и менеджеры паролей.
www.ps.kz
Совет 9
Как не надо делать:Будь проще, храни все пароли в репозитории.
Как надо делать:.gitignore
www.ps.kz
Совет 10
Как не надо делать:Если хочешь быть успешным, ставь программы make install'ом,Это проще, и быстрее, и понятнее для всех.
Как надо делать:checkinstall, rpmbuild, makepkg и прочие.
www.ps.kz
Совет 11
Как не надо делать:В серверном ПО конфигурация сразу подобрана так, чтобы выдерживать любые нагрузки и она может самостоятельно адаптироваться под проект. Поэтому не стоит что-либо менять в дефолтных конфигах.
Как надо делать:Настраивайте ПО под ваши требования, нагрузки и архитектуру.
www.ps.kz
Совет 12
Как не надо делать:Если ты действительно любишь свой проект - отпусти его, ты и так потратил на него много времени. Хорошее ПО обновлять и исправлять - только портить.
Как надо делать:Следить за уязвимостями и обновлениями (сайт, ОС).
www.ps.kz
Совет 13
Как не надо делать:Если ты хороший, уверенный в себе программист - разрабатывай прямо на боевом сервер, опыт не даст тебе ошибиться.
Как надо делать:Всегда разделяйте тестовый и боевой серверы.
www.ps.kz
Совет 14
Как не надо делать:Обязательно ставьте все компиляторы, дебагеры, трейсеры. "Случайному" посетителю вашего сервера будет намного проще скомпилировать эксплоит.
Как надо делать:Инструменты разработки - только на тестовом сервере.
www.ps.kz
Совет 15
Как не надо делать:Обязательно хардкодьте полный путь до каждого компонента вашего сайта.
Как надо делать:Не использовать абсолютные пути в коде.
www.ps.kz
Совет 16
Как не надо делать:Если хочешь что-то обновить, сделай это тихо. Если что-то сломается, всегда можно спихнуть на коллегу.
Как надо делать:Уведомлять об обновлениях и изменениях платформы всех ответственных.
www.ps.kz
Совет 17
Как не надо делать:Пиши в нестандартной кодировке, дабы запутать врага.
Как надо делать:utf-8
www.ps.kz
Совет 18
Как не надо делать:Никогда не документируйте проект - держите все в голове, тренируйте память.
Как надо делать:Документируйте требования к платформе и программному обеспечению.
www.ps.kz
Продолжение следует…
www.ps.kz