Pull to refresh
0
0
Виталий @asmodej

User

Send message

Конфигурирование iptables при помощи ferm

Reading time4 min
Views19K
Ferm — это низкоуровневая надстройка над iptables, позволяющая организовывать своего рода циклы по спискам параметров iptables. Это оказывается особенно полезно при настройке сложных правил файрвола, для написания которых с использованием одного только iptables приходится повторять до умопомрачения -t filter -A INPUT -p tcp --state NEW ..., потом делать аналогичное для -p udp, в общем кто плавал — знает.

Ferm прекрасен тем, что, сохраняя всю гибкость iptables, позволяет добиваться тех же эффектов меньшими усилиями. Так, например, разрешить новые соединения на порты ftp, ssh и http и запретить все остальное (кроме связанных), можно написать вот такой конфиг:
chain INPUT {
policy DROP;
mod state state (RELATED ESTABLISHED) ACCEPT;
proto tcp dport (http ftp ssh) ACCEPT;
}


Удивительно дело, поиск дает по запросу ferm только одну статью, которая к собственно ferm никакого отношения не имеет. То ли все уже все знают и всем очевидно, то ли наоборот. Исходя из последнего, я решил написать этот топик.

Читать дальше →

Взаимодействие bash-скриптов с пользователем. Часть 2

Reading time3 min
Views52K
Наша программа настолько сурова, что даже логин отображается звездочками (bash.org.ru)

Вашему вниманию представляется новая подборка средств общения скриптов с пользователем. Надеюсь, интересно будет всем, кто не боится работать с консолью.
Первую часть можно найти тут.
Читать дальше →

Поддержка мышки в Midnight Commander запущенного из под tmux/screen

Reading time1 min
Views10K
в топике про tmux был поднят вопрос о неработоспособность мыши в случае когда mc запущен в сессии tmux либо screen.

После небольшого исследования функции init_xterm_support, выяснилось что включить поддержку мыши, не прибегая к пересборке mc, можно прямо сейчас, достаточно «правильно» (как того ожидает mc) установить переменную COLORTERM.

image

Таким образом, если вам необходимо чтобы мышь работала в обычном режиме, поместите следующие строки в файл ~/.profile

if [ $TERM = "screen" ]; then
    export TERM=xterm
fi
if [ -n "$TMUX" ]; then
    export COLORTERM=rxvt
fi


Так же отследить решение проблемы можно будет в соответствующем тикете вот тут www.midnight-commander.org/ticket/2479

PS: Буду рад если кому то данная информация пригодится…

UPD: забыл добавить что желательно добавить в ~/.tmux.conf
следующую строку.
setw -g xterm-keys on


если этого не сделать то сочетание shift-стрелки, shift-Fx работать не будут…

Краткая шпаргалка по tmux (менеджеру терминалов)

Reading time1 min
Views436K
tmux — это менеджер терминалов, к которому удобно подключаться и отключаться, не теряя при этом процессы и историю. Как screen, только лучше (в первую очередь потому, что использует модель клиент—сервер).

image

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

Читать дальше →

Взаимодействие bash-скриптов с пользователем

Reading time4 min
Views147K
Любой приказ, который может быть неправильно понят, понимается неправильно (Армейская аксиома)

Редкий скрипт лишен необходимости общения с пользователем. Мы ожидаем, что программа (утилита) будет выполнять то, что нам от нее хочется. Следовательно, нужны инструменты влияния на них, да и программа сама должна объяснить, как продвигается ее работа.
Данным топиком я хочу рассмотреть несколько способов взаимодействия bash-скриптов с пользователем. Статья рассчитана на новичков в скриптинге, но, надеюсь, люди опытные тоже найдут что-нибудь интересное для себя.
Итак, приступим...

Создание операционной системы на базе ядра linux. С нуля

Reading time7 min
Views214K
Рано или поздно каждый пользователь Линукса задумывается над созданием собственного дистрибутива. Некоторые аргументируют это тем, что можно «все настроить под себя». Другие сетуют на то, что среди уже представленных дистрибутивов в Ветке нет идеального. А у них, якобы, есть суперконцептуальные идеи для собственной системы. Зачем я всю эту психологию затеял? Для того, чтобы сразу перекрыть кислород играющимся с Линуксом новичкам, которым делать нечего. Если уж задумались над созданием ОС, думайте до конца. Итак,

Я хочу создать ОС на базе Linux.
Сразу предупреждаю: был бы XVIII век, всех тех, кто для основы своей будущей системы выбирает другой развитый дистрибутив (и, не дай Бог, популярный...) ждала бы виселица. Пост именно про создание системы с нуля, а значит, всякие Slax и Linux Mint мы трогать не будем.
Читать дальше →

Quick Config — программа для быстрой смены заданных настроек

Reading time2 min
Views14K
Став обладателем ноутбука ощутил все прелести мобильности. Работать стало проще, отпала необходимость таскать проекты на флешке, настраивать окружение на домашней и рабочей машине один в один. Появилась возможность брать с собой работу на отдых.

Но вместе с тем появилась новая потребность — изменять настройки сетевого подключения, параметров прокси в браузерах, шарить папки, закрывать шары в зависимости от места подключения и текущих задач.

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

Так появилась программа Quick Config.
Читать дальше

Распределение нагрузки на PPPoE-сервера MPD5

Reading time5 min
Views4.9K
Итак давайте начнем с исходных данных.
Имеется ISP с 4-мя NAS-серверами на базе FreeBSD+MPD5(PPPoE) и стоит задача по нормализации нагрузки на серверы.
Для начала давайте взглянем на график загрузки серверов ДО нормализации:
Читать дальше →

Устройство интернет-радиостанции

Reading time3 min
Views15K
В статье я расскажу, наконец, как устроена наша радиостанция изнутри.


Речь пойдёт об основных используемых программах и общем подходе к организации круглосуточного вещания с возможностью прямых включений.
Читать дальше →

Как начать работать с GitHub: быстрый старт

Reading time6 min
Views1.3M


Распределенные системы контроля версий (DVCS) постепенно замещают собой централизованные. Если вы еще не используете одну из них — самое время попробовать.

В статье я постараюсь показать, как можно быстро начать экспериментировать с git, используя сайт github.com.

В статье не будут рассмотрены различия между разными DVCS. Также не будет детально рассматриваться работа с git, по этой теме есть множество хороших источников, которые я приведу в конце статьи.
Читать дальше →

Использование TrueCrypt c ключевым файлом на рутокен носителе

Reading time4 min
Views43K
Чем больше мы используем компьютер и чем больше он входит в нашу жизнь, тем чаще мы начинаем задумываться о безопасности хранимой информации на нем. Не говоря уже о предприятиях, когда проблемы в безопасности хранимой информации могут привести к большим потерям.

В данной публикации я расскажу как можно создать в системе виртуальный зашифрованный диск, для доступа к которому необходим ключевой файл, который размещается на рутокене.
Читать дальше →

Аудит. «Черный ящик»

Reading time6 min
Views13K
В данной статье я предложу вам технику аудита «черного ящика», которую можно освоить не обладая особыми знаниями и применить ее относительно своих ресурсов.

Естественно, статью можно перевести и в технику взлома ресурсов. Но чтобы знать, как защищать — надо знать, как взламывать. Ответственность за приобретенные знания вы берете на себя ;)

И если вы, как разработчик, будете знать хотя бы некоторые принципы и техники, что используют хакеры — думаю вам станет чуть спокойнее за них (ресурсы) и результат вашей деятельности приобретет более высокий уровень

В статье отображен аудит базового уровня, сохраняем низкий порог для чтения и понимания.

Читать дальше →

Хитрости и трюки при использовании Wine

Reading time5 min
Views240K
image

Всем привет!
Прочел статью про «Все тонкости настройки Wine», оказалось, что там далеко не все тонкости. Поэтому написал этот пост как дополнение тому.

В данном посте в основном вольный перевод оф. документации, а так же несколько своих и чужих хитростей при работе с вайн.
Скорее всего данный пост будет интересен новичкам и обычным пользователям GNU\Linux. Тем не менее добротные советы от специалистов не будут лишними.
Читать дальше →

Учим bash-скрипты, пишем Sokoban

Reading time4 min
Views139K
Мне кажется, что на свете еще есть люди, которые хорошо знают несколько языков программирования, но при этом не пишут скриптов для bash, потому что скриптовый язык bash выглядит для них слишком странным. Чтобы доказать, что bash — это несложно, я написала игру Сокобан (или Грузчик, кому как нравится), и хочу рассказать, как она работает.
Краткая справка по bash, скриншот игры, исходный код и ссылка на файл - под катом

Заметки гика. zsh shell

Reading time2 min
Views5.1K
Дубль первый.


В какой то момент возникла острая необходимость заиметь англо-русский словарь в консоли,
в ходе 2 минутного поиска по пакетам счастья не было обнаружено.
Ну что же, придется делать свой словарь, вспомнив что в chromium стоит плагин для словаря было принято решение распотрошить его содержимое, и прикрутить словарь от google к консоли.
Ну а далее код для zsh.
В комментах ресурсы которые были просмотрены в ходе поиска решения.
Читать дальше →

Оптимизируем процесс работы в консоли

Reading time4 min
Views16K
Все привыкли редактировать текст в текстовых редакторах, блокнотах, веб-формах и т.д. В процессе набора текста мы пользуемся привычными стрелками, кнопками «End» и «Home», более опытные зажимают «Ctrl» и стрелками шагают по словам (что, кстати, не всегда работает). И при переходе на консоль мы ориентируемся на те же самые правила, даже не зная, что bash предлагает очень удобные средства и комбинации клавиш, которые очень упрощают работу и минимизируют количество операций для выполнения задачи. К тому же, в bash есть удобные средства работы с историей, масса различных подстановок и других интересных функций. Самые часто используемые мной и любым опытным администратором я и опишу в этой статье.
Читать дальше →

Google представил расширение для Chrome, помогающее бороться с контент-фермами

Reading time2 min
Views1.8K


Вообще говоря, контент-фермы — это настоящая головная боль для поисковиков. Под «контент-фермой» в данном случае будем понимать не компанию, которая производит большое количество более-менее полезного контента, «заточенного» под высокую релевантность по узкоспециализированным запросам (Demand Media, например), а сайты, которые буквально напичканы очень слабым контентом, зачастую не просто слабым, а состоящим из бессмысленного набора слов. Большинство таких сайтов создаются исключительно для того, чтобы получать трафик с поисковиков, с целью дальнейшего «слива» и монетизации трафика (т.е. посетителей).

Читать дальше →

Обновление FreeBSD от и до

Reading time7 min
Views90K
Как часто бывает, зацепив одну, на первый взгляд, маленькую тему, с желанием быстро все узнать и все настроить, приходится закапываться в дремучие дебри и читать не одну статью и/или мануал. Так и получилось у меня в этот раз. Изначально было желание просто узнать, как обновлять порты (или исходные тексты портов) чтоб при желании, устанавливать не устаревшее ПО, но пришлось закопаться немного по глубже.
Эта статья предназначена только для новичков во FreeBSD, опытные профи тут вообще ни чего нового, думаю, для себя не найдут. По этому, если вы на «ты» с этой системой, можете смело пропускать дальнейший текст.
Информации на эту тему хватает, но из 6-10 заметок и статей я взял, так скажем, лучшие наработки и опыт, и записал их в одну, с ссылками на более полные статьи, так что при желании можно получить более подробную информацию по каждому пункту.
Содержание статьи:
1) Выбор ПО для обновления исходных текстов.
2) Процесс обновления исходных текстов системы и портов.
3) Обновление системы(ядро и мир).
4) Обновление портов при помощи pkg_*, portupgrade, portdowngrade.
5) Заключение
6) Дополнительная литература.
Читать дальше →

Обзор и сравнение способов настройки NAT на FreeBSD

Reading time5 min
Views65K
В этой статье я бы хотел привести примеры настройки NAT на ОС FreeBSD и провести некоторое сравнение способов, которые, по моему мнению, наиболее часто используются.

Для начала:
NAT (от англ. Network Address Translation — «преобразование сетевых адресов») — это механизм в сетях TCP/IP, позволяющий преобразовывать IP-адреса транзитных пакетов. Также имеет названия IP Masquerading, Network Masquerading и Native Address Translation.

Рассмотренные варианты:
— Демон Natd
— IPFilter (ipnat)
— PF nat
— ng_nat
— ipfw nat (kernel nat)
Читать дальше →

Information

Rating
Does not participate
Location
Нефтеюганск, Тюменская обл. и Ханты-Мансийский АО, Россия
Registered
Activity