Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

Ограничение прав локального пользователя в Linux до минимума

Время на прочтение5 мин
Количество просмотров40K
Котик Как то раз появилась следующая задача: создать локального пользователя в ОС Linux, с ограниченным доступом к папкам и файлам, включая не только редактирование, но и просмотр, а также возможность использовать только разрешенные утилиты. Предусматривается только локальный доступ, сетевого доступа нет.

Что бы не изобретать велосипед, первым делом начал копать интернет, в результате чего были найдены следующие варианты:

  • ограничения доступа через сетевые службы ssh, sftp (не подошло)
  • разграничение прав доступа самой операционной системой linux (не подошло, хотелось бы универсальное решение)
  • использование chroot (не подошло)
  • использование сторонних утилит, например SELinux (не подошло, усложняет систему).

В результате поиска, был найден встроенный механизм ограничения возможностей пользователя внутри оболочки bash, он называется Restricted Shell или rbash.
Читать дальше →
Всего голосов 43: ↑30 и ↓13+17
Комментарии66

Деньги — чужие, проблемы – Ваши

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров42K

Вечер пятницы, у себя дома в ближайшем Подмосковье собираю lego low‑code. Подходит вторая половина — ей поступил платёж на сумму 42 т.р. от неизвестной Анюты Ивановны И. на карту Сбера. Догадываясь, что за этим последует звонок с просьбой вернуть деньги, пишем обращение в чат поддержки. Пока ждем ответ, действительно начинают звонить «потерпевшие» и объяснять, что произошла ошибка: мама переводила деньги сыну на оплату квартиры, эти деньги срочно нужны и надо их немедленно вернуть. Телефон «мамы» похож на отправителя, а второй номер не имеет ничего общего с номером получателя. Объясняем, что процесс пошел, заявление уже подано и скоро всё решится к обоюдному удовольствию.

И тут приходит ответ от Сбера, который резко меняет ситуацию:

Читать далее
Всего голосов 182: ↑176 и ↓6+208
Комментарии297

Как работать эффективно, если ты тревожный человек

Уровень сложностиПростой
Время на прочтение17 мин
Количество просмотров9.1K

По данным ВОЗ, около 4% людей страдают тревожными расстройствами в разной форме. С недавних пор я тоже официально вошла в число этих счастливчиков, хотя с тревогой живу уже очень много лет. И если с «бытовой» тревогой ещё худо‑бедно справлялась, то с «рабочей» всё было намного сложнее: я волновалась из‑за большого количества задач и приближающихся дедлайнов, сомневалась в своих силах и знаниях, постоянно думала о том, что сделала что‑то неправильно. Ну а обычное сообщение от руководителя «Привет, надо кое‑что обсудить» в моей голове превращалось в «Привет, ты уволена».

В какой‑то момент мне это окончательно надоело, и я решила, что пора что‑то делать со своей тревожностью. Так я начала изучать эту тему, подключила терапию у психолога и консультации психотерапевта.

Читать далее
Всего голосов 38: ↑37 и ↓1+46
Комментарии23

Я программист, и я тупой

Время на прочтение2 мин
Количество просмотров79K
Я пишу код за деньги уже пятнадцать лет. Пробовал себя и в других ролях – управление продуктом, аналитика, тестирование, – но как-то не пошло. И с течением лет пришел к осознанию, что я не очень умный. К сожалению.

Никаких особых медицинских диагнозов мне не ставили, но мои умственные способности крайне ограниченны. Даже те задачи на Leetcode, которые попроще, вызывают у меня затруднения. Когда я читаю о самом обычном алгоритме консенсуса, у меня кипит мозг. У меня плохо получается отслеживать сложные зависимости в кодовой базе. Я не способен освоить модные языки вроде Rust (пытался, но по правде сказать, для меня это чересчур). Я терпеть не могу микросервисы и современный фронтенд: там слишком много движущихся частей, и уследить за всеми я не в состоянии.

Как же я выхожу из положения?
Читать дальше →
Всего голосов 297: ↑283 и ↓14+324
Комментарии334

Откуда что берется: интеграция с ЕСИА на языке PHP

Время на прочтение9 мин
Количество просмотров12K

Как мы в банке внедряли интеграцию с Единой системой идентификации и аутентификации (ЕСИА) на PHP и какие проблемы пришлось решать.

Читать далее
Всего голосов 15: ↑14 и ↓1+14
Комментарии9

Nginx: шпаргалка

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров24K

Шпаргалка по основным секциям Nginx, которые следует держать под рукой. Ниже приведены самые частые функции: включение SSL, переадресация, раздача статики и т.д.

Читать далее
Всего голосов 31: ↑15 и ↓16+1
Комментарии18

React useReducer, зачем нужен и как использовать

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров18K

useReducer - это хук для работы с состоянием компонента. Он используется под капотом у хука useState. В этой статье разберемся с api useReducer, когда лучше использовать useReducer вместо useState и поговорим про нестандартный случай использования useReducer.

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии12

Подробности о GraphQL: что, как и почему

Время на прочтение19 мин
Количество просмотров104K
GraphQL сейчас, без преувеличения, это — последний писк IT-моды. И если вы пока не знаете о том, что это за технология, о том, как ей пользоваться, и о том, почему она может вам пригодиться, значит статья, перевод которой мы сегодня публикуем, написана специально для вас. Здесь мы разберём основы GraphQL на примере реализации схемы данных для API компании, которая занимается попкорном. В частности, поговорим о типах данных, запросах и мутациях.


Читать дальше →
Всего голосов 27: ↑23 и ↓4+19
Комментарии23

Создаем текстовый редактор на React.js

Время на прочтение17 мин
Количество просмотров41K

Привет! Меня зовут Данила, и я фронтенд-разработчик в KTS.

Однажды в одном из своих проектов мне потребовалось реализовать кастомный текстовый редактор на React.js. Задача показалась мне довольно интересной, и я решил рассказать о своем опыте. В статье я поэтапно покажу, как можно создать текстовый редактор с базовыми функциями.

Надеюсь, информация будет полезной и сэкономит кому-то время и силы.

Читать далее
Всего голосов 16: ↑15 и ↓1+15
Комментарии10

Мемоизация в React: я почитал документацию вместо вас

Уровень сложностиПростой
Время на прочтение18 мин
Количество просмотров22K

В статье рассмотрены три инструмента мемоизации в React: useMemo, useCallback, memo. Главный источник информации: документация React. Не всем комфортно работать напрямую с документацией, так что если вы постоянно откладываете погружение в документацию React - я сделал это за вас, постарался выделить самое важное, и дать ссылки для углубленного погружения.  

Так как мы будем рассматривать не самые базовые вещи, касающиеся React, то я не буду останавливаться на таких основах как хуки, состояние, свойства, чистые функции и чистые компоненты, ожидая, что вы ознакомитесь с ними за пределами статьи. А также все рассмотренное ниже относится в первую очередь к React 18. 

Читать далее
Всего голосов 15: ↑14 и ↓1+15
Комментарии2

Криптография в Java. Класс Certificate

Время на прочтение4 мин
Количество просмотров16K

Привет, Хабр! Представляю вашему вниманию перевод заключительной статьи "Java Certificate" автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java.

Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии9

Криптография в Java. Класс KeyStore

Время на прочтение4 мин
Количество просмотров32K

Привет, Хабр! Представляю вашему вниманию перевод 9 статьи "Java KeyStore" автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java.

Читать дальше →
Всего голосов 10: ↑6 и ↓4+2
Комментарии0

4 способа импортировать пакет в Go

Время на прочтение4 мин
Количество просмотров46K

Декларативная часть импорта пакетов в Go достаточно скучная и обыденная. Всего лишь нужно указать директиву import и перечислить импортируемые пакеты. Современные IDE делают эту работу за Вас — сами подставляют пакеты в этот раздел, что очень удобно. Кроме того, они сворачивают этот блок, чтобы он не мешал обозревать код. Я же советую развернуть этот блок, и изучить его внимательно — возможно Вы найдете там нечто необычное:


    package main

    import (
        "github.com/vigo5190/goimports-example/a"
        foo "github.com/vigo5190/goimports-example/a"
        . "github.com/vigo5190/goimports-example/b"
        _ "github.com/vigo5190/goimports-example/c"
    )

Если стандартный импорт, импорт с синонимом и _ я встречал, то импорт с . я до этого не видел.

Читать дальше →
Всего голосов 28: ↑27 и ↓1+26
Комментарии7

Java для новичков: подборка материалов для самостоятельного изучения и сообществ для погружения

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров34K

Привет, Хабр! Меня зовут Егор Ерохин, я — наставник на курсе «Java-разработчик» Яндекс Практикума и Java тимлид. В этой статье я собрал как русскоязычные, так и англоязычные ресурсы, которые помогут начинающим Java-разработчикам на их пути. А ещё комьюнити, которые будут полезны для расширения кругозора и нетворкинга.

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Комментарии5

Личный прокси для чайников: универсальный обход цензуры с помощью VPS, 3X-UI, Reality/CDN и Warp

Уровень сложностиСредний
Время на прочтение27 мин
Количество просмотров164K

> С 10 апреля 2024, 3 месяца спустя,
> данная статья заблокирована РКН на территории РФ,
> но доступна с IP других стран, а также через веб-архив.

На фоне прошлогоднего обострения цензуры в РФ, статьи автора MiraclePTR стали глотком свободы для многих русскоязычных айтишников. Я же хочу приоткрыть дверь к свободной информации чуть шире и пригласить «не‑технарей» («чайников»), желающих поднять личный прокси‑сервер для обхода цензуры, но дезориентированных обилием информации или остановленных непонятной технической ошибкой.

В этой статье я описал универсальное решение, которое обеспечивает прозрачный доступ к международному интернету в обход цензуры, использует передовые технологии маскировки трафика, не зависит от воли одной корпорации и главное — имеет избыточный «запас прочности» от воздействия цензоров.

Статья рассчитана на «чайников», не знакомых с предметной областью. Однако и люди «в теме» могут найти нечто полезное (например, чуть более простую настройку проксирования через CloudFlare без необходимости поднимать nginx на VPS).

Если у вас ещё нет личного прокси для обхода цензуры — это знак.

Читать далее
Всего голосов 102: ↑100 и ↓2+109
Комментарии292

Оптимизация настройки Webpack проекта на CRA

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров4.5K

Всем привет! Один из проектов на работе у нас изначально создан на create-react-app утилите. Встал вопрос по поводу того, можно ли как-то оптимизировать сборку по скорости и весу сжатого проекта, так как есть большие планы на рост проекта и не хотелось бы, чтобы что-то начало тормозить, и этим соответственно я и занялся. Хочу рассказать о том, как все проходило, какие шаги были пройдены и что в итоге получилось. Также в конце приложу код всей конфигурации.

Сразу хотел бы сказать, что это очередная статья по вебпаку с приведенной его настройкой и некоторые могут не увидеть ничего нового, так как тут будет описана последовательность выполненных действий и настроек. Прошу не кидать камни, так как я просто хочу поделиться опытом, возможно даже получить советы по лучшей настройке и, надеюсь, кому-то это все-таки поможет.

Читать далее
Всего голосов 2: ↑1 и ↓10
Комментарии6

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Frontend Developer, Fullstack Developer
Junior
От 40 000 ₽