По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Зачастую можно столкнуться с задачами, когда необходимо обеспечить доступ к внутренним корпоративным (или домашним) ресурсам из Интернета. В этом случае, нужно выполнить, так называемый "проброс портов". Что это такое, зачем это нужно и как настраивать на примере роутера Mikrotik 951Ui-2HnD – расскажем в данной статье. /p> Как это работает? Давайте представим себе следующую ситуацию – у нас есть корпоративная сеть, в которой пока ещё локально разворачивается сервер IP-телефонии на базе Asterisk, управляется он при помощи графической оболочки FreePBX. Задача состоит в том, чтобы предоставить возможность администратору сервера управлять им из Интернета. Итак, имеем следующую схему: Для начала остановимся на понятии “проброс порта”. Проброс порта – это функционал маршрутизаторов, поддерживающих NAT, который позволяет получить доступ к ресурсам локальной сети, из Интернета по средствам перенаправления трафика определенных портов с внешнего адреса маршрутизатора на внутренний адрес хоста в локальной сети. Иными словами, мы должны настроить на роутере правило, в котором при поступлении TCP запроса на внешний адрес, в данном случае 35.135.235.15 и определенный порт, например 23535, открывался бы доступ к интерфейсу FreePBX, который в данным момент доступен только в локальной сети по адресу 192.168.1.100 и, соответственно на порту 80 (HTTP). Настройка Перейдём к настройке. Заходим на адрес нашего роутера Mikrotik 951Ui-2HnD, видим следующее окно: Скачиваем приложение WinBox. Вводим учётные данные и подключаемся. По умолчанию логин - admin, пароль - пустой. Если у вас уже настроены логин и пароль, то укажите их. Далее необходимо создать NAT – правило. Для этого переходим по следующему пути – на панели управления слева выбираем IP → Firewall → NAT Открывается следующее окно: Нажимаем на +, открывается страница добавления нового NAT- правила. Задаём следующие параметры: Chain → dstnat - направление запроса из внешней сети во внутреннюю. Protocol → tcp, поскольку в нашем случае нужно предоставить доступ к HTTP страничке. Dst.Port → 23535 - это тот самый порт назначения, на который будет отправлять запрос из вне на получение доступа к FreePBX. In.Interface → all ethernet - входной интерфейс. Это интерфейс, которым роутер смотрит в Интернет и на котором он будет прослушивать указанный выше порт. Должно получиться вот так: На вкладках Advanced и Extra настраиваются расширенные опции, такие как лимит по битрейту, политика IPsec, время, в течение которого правило будет активно и так далее. Переходим на вкладку Action и объясняем роутеру, какие действия он должен выполнить при поступлении запроса на указанный порт. Выбираем Action → netmap, то есть трансляция с одного адреса на другой. To Addresses → 192.168.1.100, то есть адрес нашёго FreePBX. И последнее - To Ports → 80, то есть запрос на HTTP порт. Должно получиться так: Далее нажимаем OK и правило готово. Теперь если вбить в адресной строке браузера сокет 35.135.235.15:23535 то мы попадем на страницу авторизации FreePBX.
img
Frontend-разработчики — ключевая IT-профессия: фронтендеры отвечают за создание интерфейсов сайтов и приложений, которые привлекают внимание конечных пользователей по всему миру. В этой статье мы расскажем, что должен уметь фронтенд-разработчик, сколько получают такие специалисты и откуда взять опыт в этой сфере. Прежде всего, кто такой frontend-разработчик? Frontend-разработчик — это специалист, задачей которого является создание пользовательского интерфейса (UI) и пользовательского опыта (UX) для веб-сайтов или приложений. Проще говоря, frontend-разработчик отвечает за проектирование и создание визуальной части веб-сайтов и приложений. Сюда входят макеты, графика, текст и другие визуальные элементы, составляющие дизайн, а также код, который обеспечивают правильную работу всего этого. Что вообще означает Frontend? Frontend сайта, также называемый клиентской стороной или, в более широком смысле, пользовательским интерфейсом (UI), относится к тем частям сайта или приложения, которые видны пользователям и с которыми они могут взаимодействовать. Это всем нам знакомые кнопки, макеты, меню, формы обратной связи. Backend же, или серверная часть, относится к тем частям сайта, которые не видны конечному пользователю. Они управляет данными, которые обеспечивают работу сайта и отслеживают такие элементы, как учетные записи пользователей и историю. Несмотря на то, что фронтенд и бэкэнд противопоставляют, они тесно взаимодействуют друг с другом, обеспечивая правильную работу веб-страниц и приложений. Какие задачи решает фронтенд-разработчик? Frontend-разработчика можно назвать художником, который делает веб-сайты и приложения красивыми и плавно работающими. Для этого они используют различные языки программирования, инструменты и технологии. Основные обязанности фронтенд-разработчика включают: верстку — создание структуры и визуального оформления веб-страниц с использованием HTML и CSS. Программирование — реализацию интерактивности и динамического поведения веб-страниц с использованием JavaScript. Оптимизацию производительности — фронтенд-разработчики заботятся о том, чтобы веб-страницы загружались быстро и эффективно. Кроссбраузерную и кроссплатформенную совместимость — фронтенд-разработчики уделяют внимание тому, чтобы их код корректно отображался на различных браузерах и устройствах. Работу с фреймворками и библиотеками — использование различных инструментов, таких как React, Angular, или Vue.js, упрощающих разработку сложных пользовательских интерфейсов и обеспечивающих повторное использование кода. Frontend-разработчики часто работают в тесном сотрудничестве с дизайнерами, backend-разработчиками и другими специалистами по разработке, чтобы на сайте или в приложении все выглядело хорошо и работало слаженно. Что должен уметь фронтенд-разработчик? Хотя наличие формального образования может быть полезным для получения работы, следует отметить, что многие frontend-разработчики являются самоучками или приобретают свои знания на онлайн-курсах, например, Merion Academy, или на практике. В любом случае важно, чтобы вы могли продемонстрировать свои знания и умения с помощью портфолио и уверенного практического опыта. Ниже расскажем про ключевые навыки, которыми необходимо овладеть: Знание HTML, CSS и JavaScript: для успешной фронтенд-разработки необходимо хорошо разбираться в этих основных технологиях. Эти языки составляют основу frontend-разработки, и в создании пользовательских интерфейсов без них никуда. Знание фреймворков и библиотек: знание React, Angular и Vue.js, может оказаться полезным при разработке более сложных веб-приложений. Эти инструменты — база для создания отзывчивых, интерактивных и масштабируемых интерфейсов, которые так нравятся пользователям. Опыт работы с отзывчивым дизайном: frontend-разработчики должны уметь создавать веб-сайты и приложения, которые классно выглядят и легко работают на различных устройствах — смартфонах, планшетах, ПК. Это обеспечит пользователю позитивное восприятие продукта вне зависимости от девайса, которым он пользуется. Понимание основ дизайна: frontend-разработчик должен иметь насмотренность и понимать основы типографики, теории цвета и верстки. Эти навыки очень важны для создания интерфейсов, которые будут не только красивыми, но и удобными. Понимание кроссбраузерной совместимости: для frontend-разработчика очень важно, чтобы продукты, которые он создает, работали без сбоев в различных браузерах. Обеспечение корректной работы интерфейса в различных браузерах является важнейшей составляющей frontend-разработки. Верстка и frontend-разработка — одно и то же? Хоть верстальщик и фронтенд-разработчик выполняют различные задачи, у них есть много общих черт. Оба специалиста работают над созданием веб-интерфейсов и взаимодействуют с дизайнерами и backend-разработчиками. Оба они должны обладать хорошим пониманием HTML и CSS, а также знанием основ JavaScript. Важные навыки для обеих профессий — умение работать в команде, понимание принципов отзывчивого дизайна, владение инструментами контроля версий, такими как Git. Но все же нельзя говорить, что эти профессии идентичны. Frontend-разработчики в большей степени специализируются на пользовательской части сайта или приложения. Frontend-разработчики глубже понимают принципы пользовательского опыта и дизайна, и могут обеспечить интуитивную, простую в использовании и визуально привлекательную фичу на сайте или в приложении, которая зацепит пользователя. Основное различие между верстальщиком и фронтенд-разработчиком заключается в уровне сложности выполняемых задач. Верстальщик занимается преобразованием статического дизайна в код, в то время как фронтенд-разработчик работает над созданием динамических и интерактивных элементов веб-сайта с использованием языков программирования. Успешные фронтенд-разработчики часто стремятся расширять свои знания и умения в соответствии с требованиями индустрии, и они могут специализироваться в конкретных областях, таких как мобильная разработка, анимация интерфейсов, или работа с определенными фреймворками. Что объединяет верстальщика и фронтенд-разработчика Несмотря на то что верстальщик и фронтенд-разработчик выполняют различные задачи, у них есть много общих черт. Оба специалиста работают над созданием веб-интерфейсов и взаимодействуют с дизайнерами и backend-разработчиками. Они оба должны обладать хорошим пониманием HTML и CSS, а также знанием основ JavaScript. Важными навыками для обеих профессий являются умение работать в команде, понимание принципов отзывчивого дизайна и владение инструментами контроля версий, такими как Git. Основные различия между верстальщиком и фронтенд-разработчиком Основное различие между верстальщиком и фронтенд-разработчиком заключается в уровне сложности выполняемых задач. Верстальщик занимается преобразованием статического дизайна в код, в то время как фронтенд-разработчик работает над созданием динамических и интерактивных элементов веб-сайта с использованием языков программирования. Верстальщики фокусируются на "видимой" части веб-сайта, обеспечивая точное воплощение макетов дизайнеров в коде. Они также следят за тем, чтобы сайт корректно отображался в различных браузерах и на различных устройствах. Фронтенд-разработчики, с другой стороны, сосредотачиваются на создании интерактивности и функциональности веб-сайта. Они используют JavaScript и его фреймворки для разработки интерактивных элементов, таких как слайдеры, выпадающие меню, формы и другие. Как стать фронтенд-разработчиком? Чтобы стать хорошим специалистом, потребуется время и преданность делу. Поэтому лучше всего изучить все аспекты будущей профессии, прежде чем начать свой путь. Что бы мы посоветовали: Изучите основы: начните с онлайн-курса Merion Academy Frontend-разработчик с нуля. Затем испытайте полученные навыки на практике, создав несколько собственных проектов. Займитесь самообразованием: после того, как вы прошли курсы фронтенд-разработчика, не бросайте учиться. Существует множество образовательных программ по фронтенд-направлению — выберите ту, которая соответствует вашим способностям к обучению, бюджету, требованиям к работе, о которой вы мечтаете. Общайтесь и набирайтесь опыта: начните искать проекты для совместной работы, общайтесь с другими разработчиками, посещайте встречи и конференции, ищите наставников. Нетворкинг играет неоценимую роль в трудоустройстве! Сколько зарабатывают фронтенд-разработчики? Фронтенд-разработчики в России на сегодняшний день могут рассчитывать на зарплаты в весьма широком диапазоне. Разумеется, оплата зависит от навыков, опыта и уровня квалификации конкретного специалиста. Согласно hh.ru, заработная плата по вакансии фронтенд-разработчик может колебаться от 100 000 до 600 000 рублей и даже более в месяц. На уровень зарплаты влияет и грейд, и регион работы, а также любые дополнительные навыки — знание языков программирования, основ дизайна и даже маркетинга. Таким образом, фронтенд-разработчики в России имеют возможность получать действительно конкурентоспособные заработные платы, особенно если они совершенствуют свои навыки, следят за трендами в отрасли и стараются учиться новому. Не бойтесь экспериментировать и постоянно развиваться. Фронтенд-разработка — это не только профессия, но и постоянный поток на стыке технологий, дизайна и творчества.
img
Каждое семейство операционных систем производит загрузку по-своему. Это связанно с различной архитектурой ядра операционной системы, разными инструкциями по работе с подключенными устройствами. В данной статье попробую разобрать загрузку популярной операционной системы на ядре Linux Ubuntu. Схематично процесс загрузки можно отобразить следующим образом. Загружаемся Итак, Нажимаем кнопку включения компьютера, и центральный процессор переходит на адрес BIOS. BIOS или UEFI, в более современных компьютерах, проводит систему проверок и выбирает носитель информации с которого будет производится загрузка операционной системы. На носителе находится MBR (Master Boot Record) или GPT (Guid Partition table) на новых компьютерах в которых находится загрузчик. А дальше уже в зависимости от настройки. Загрузчик может самостоятельно загружать операционную систему, а может передавать управление следующему загрузчику. Например, если Windows и Linux установлены на одном компьютере и находятся на разных разделах жесткого диска. В любом случае, если идет речь о Linux у нас есть первая стадия с небольшой частью кода, которая загружает у нас загрузчик. Загрузчик знает где лежит ядро операционной системы, загружает ядро, загружает initial run disk, там находятся необходимые файлы и модули для загрузки ядра. Далее уже ядро берет процесс управления на себя. Происходит инициализация устройств, конфигурирование процессов памяти и так далее. После всех этих процессов ядро запускает процесс init. Вернемся к вопросу загрузчиков, для каждой операционной системы разработан свой загрузчик, а иногда и несколько. NTLDR - Загрузчик операционной системы Windows, LILO - один из стандартных загрузчиков для Linux и BSD системы. GRUB - загрузчик операционной системы от проекта GNU. Нас интересуют последние два. Данные загрузчики работают в два этапа. На первом этапе у них крошечный код на MBR или GPT, который запускает исполнение кода второго этапа. Перейдем непосредственно к самой загрузке. Данное меню мы можем получить при загрузке если зажать клавишу Shift. Как видно на картинке в данном примере загрузчик GRUB версии 2.04. У нас есть несколько вариантов. Загрузка Ubuntu по умолчанию и вариант загрузки с расширенными опциями. В нашем случае расширенные опции не дают многого, а всего лишь позволяют начать загрузку в режиме восстановления recovery mode. Данная опция не является целью стати, и мы ее опустим. Вернемся к первому пункту загрузки. Выбираем, нажимаем "e" получаем следующую картину загрузки. На данной картинке можно увидеть, что корневой раздел монтируется по uuid, он будет корневым root и непосредственно сам id. ID раздела можно посмотреть после загрузки операционной системы командой blkid. Можно часть параметров отредактировать или большинство. Более подробно можно поискать в интернете. По нажатию F10 осуществляется продолжение загрузки операционной системы. После загрузки операционной системы, мы можем с помощью команды dmesg посмотреть, сообщения ядра, все что происходило с ядром. Нужно различать сообщения ядра и лог ядра. Который можно посмотреть cat /var/log/dmesg. Данный файл содержи информацию только о загрузке операционной системы. В данном файле содержится информация с самого начала загрузки операционной системы и до конца. Если событие происходит позднее, то в данном файле этой информации вы не найдете. Система инициализации ОС Есть такое понятие Init - это первый или родительский процесс, который запускает все последующие процессы. Это может быть проверка и монтирование файловых систем запуск служб и.т.д. Существует 3 варианта работы этого родительского процесса. Init в стиле SysV - родительский процесс инициализации системы на одном из заданных уровней запуска (runlevel); Т.е. есть несколько уровней загрузки (runlevel) обычно их 7 штук. Один из них - это обычный многопользовательский режим. Другие это выключение компьютера, перезагрузка, режим восстановления и т.д. Init в стиле systemd - родительский процесс инициализации системы в ускоренном режиме, за счёт параллельного запуска задач; Ускоренный режим достигается за счет использования процессора в частности Intel, который позволяет запускать процессы инициализации параллельно. К этому режиму есть еще куча софта библиотек, которые расширяют функционал. Init в стиле Upstart - родительский процесс инициализации системы на основе отслеживания событий; Данный режим используется на Ubuntu уже давным - давно, тут не только запускаются скрипты инициализации, но и запускаются скрипты отслеживания событий и реагирования на них. Т.е. это более гибкий процесс инициализации, например, если какая-то служба не запустилась или упала в процессе загрузки то, upstart умеет это отследить и запустить это повторно В операционной систему Ubuntu можно посмотреть дерево процессов использую команду pstree. В результате ее вывода мы можем увидеть, что родительским процессом являлся процесс systemd. Который запускал уже свои, какие-то дочерние процессы. Перейдем в корневую директорию boot. Здесь мы можем увидеть директорию загрузчика grub. Ядра линуксовые vmlinuz (ссылка на ядро) и до обновления старое ядро vmlinux.old (ссылка на старое ядро). Соответственно пара initrd* - файлы диска, эти файлы содержат диск, который грузится в оперативную память, данный диск содержит файлы необходимые самому ядру Linux для нормальной загрузки. Перейдя в директорию grub, мы можем найти конфигурационный файл grub.cfg и несколько вспомогательных, но не менее важных фалов. Соответственно мы можем внести изменения в данный файл на постоянной основе и соответственно данный код будет выполнятся при каждой загрузке операционной системы.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59