LINUX.ORG.RU

Избранные сообщения Redf

Борьба с деанонимизацией.

Форум — Security

В свете творящегося сегодня ужаса (нам таки официально ввели цензуру, что она не адекватна хотя бы из-за блоков по айпи отдельная тема), проснулся интерес к анонимным сетям (я законопослужный гражданин, ну может кроме торрентов да и то не в особо крупных размерах, скрывать то толком нечего, но блин раз делать так как следует). Я произвёл ряд хитрых манипуляций. Приобрёл VDS в СШП. Прокинул openvpn. На домашнем роутере поставил squid. На нём же поставил privoxy и tor. Сделал табличку в мускуле и пару external acl для squid. Первый acl смотрит в мускуле записи и на их основе принимает решение пустить прямо или через privoxy, который в свою очередь тащит в tor, так же по записям он может и кидать на сквид в СШП (VDS). Второй проверяет есть ли у провайдера на dst (домен) блокировка, если да кидает в СШП.

И того я имею: обход цензуры, два гугла (google.ru - отечественный, google.com - американский), возможность легко пускать http трафик нужным путём (СШП, tor), доступ по openvpn с ведройд планшета к этому барахлу (шифруется и жмётся трафик, теперь не стрёмно что где-то в публичной сети заснифают чего-то не того).

САБЖ: теперь, блин, нужно проксю научить обеспечивать хоть каку-то безопасность сёрфинга через tor. Подключиться я могу откуда угодно и совершенно разными браузерами, потому torbutton и т.п. не вариант. Занимется этим privoxy (да, да КО). Уже умеет, резать к чертям куки, жабаскрипт, флешу, правит чутка заголовки.

Нуждаюсь в ваших советах:
1 Что-то надо ещё подрезать?
2 Может вообще все теги <object> и <embed> вырезать?
3 Как блин порезать на странице все внешние элементы (убивать src=«блабла», думаю, не достаточно)? Есть идея сделать скрипт из (указанной выше) бд выдерающий домены разрешённые для tor и далее генерящий на их основе фильтр для privoxy. Если скриптом, то можно ли через веброжу впихивать это в privoxy? (вроде у него какая-то есть)
4 Какие заголовки резать?
5 Слышал что privoxy не умеет gzip. Если правда как бороться?
6 SSL соединения privoxy не декодирует на лету? Как-то ведь надо фильтровать...
7 Собираюсь добавить поддержку i2p, какие-то отличия должны быть в фильтрации трафика для него?
8 Любые полезные замечания.

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

ЗЗЫ Для тех у кого от слов tor и i2p батхёрт. Мне не нужно от кого-то адццки шкериться. Я даже пока не придумал куда именно применить сабж. Просто хочется иметь возможность в случае надобности, не хитрой манипуляцией (запись в мускуле) обеспечить для выбранного адреса выход через анонимную сеть. Ну и что бы при таком раскладе, деанонимизировать меня не было тривиальной задачей. Я не собираюсь качать детское порно, организовывать терракты или «становиться членом группы анонимус» :D Изначально подтолкнуло к этому введение в стране цензуры, а если точнее её реализация. Если в реальной жизни таки и пригодится что-то пустить через анонимную сеть, то это скорее всего это будет альтернативный путь мимо цензуры (вдруг какой-то айпи забанят и СШП, ну или сайт не будет из СШП соединения принимать). Просто раз уж пускать что-то через анонимную сеть, то хочется чтоб резались тривиальные способы деанонимизации, не более. И хочется чтоб не надо было морочиться ради такой мелочи с отдельными браузерами и/или виртуалками. Один раз настроил и по мере надобности пользуй с любой своей железки и с любого браузера, всё.

 , , , ,

erfea
()

Запись в конец строки

Форум — Development

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

Я ищу слово из общего списка в другом списке и при условии, что слово есть во втором списке, дописываю в конец строки, содержащей данное слово в общем списке, одни символы, а если его нет во втором списке - другие символы.

Лучшее, чего мне удалось добиться - это:

Общий список - /home/user/internet-users.txt

Второй список - /home/user/users-external-mail.txt

while read user
     do
        result=`grep -i $user /home/user/users-external-mail.txt | wc -l`
            if [ $result != 0 ]; then
                sed -ie 's/\("$user".*\)$/\1;+/' "/home/user/internet-users.txt"
            else
                sed -ie 's/\("$user".*\)$/\1;/' "/home/user/internet-users.txt"
            fi
     done < "/home/user/internet-users.txt"

На выходе должен быть csv-файл вида

user;+;;+;
Но, как я понял, sed не поддерживает переменные. После запуска этого скрипта создается файл /home/user/internet-users.txte (добавляется «e» в конце «расширения») с идентичным исходному файлу содержимым.

В общем, проблема в том, как дописать в конец строки, искомой по переменной.

 , ,

firebolt
()

Выстраивание каждого предложения в одну строку.

Форум — General

Добрый день! Пытаюсь переформатировать текст из субтитров.

Сначала из субтитров убрал строки начинающиеся на цифры:

cat 02-Dependencies.srt | grep -v "^[0-9]" > 02-Dependencies.txt

Получил вот что:

However, it must be compiled before asterisk in order for Asterisk to be able to use it.

The goal of this module is to describe 
the basic process

of installing and verifying dependencies
. In the next module entitled

"Installing Asterisk from source" we will show 
you how to actually install the

dependencies we've just described.

Далее форматирую текст так:

However, it must be compiled before asterisk in order for Asterisk to be able to use it.

The goal of this module is to describe the basic process of installing and verifying dependencies. 

In the next module entitled "Installing Asterisk from source" we will show you how to actually install the dependencies we've just described.

Есть ли скрипты, которые так могут переформатировать текст?

В итоге получился вот такой скрипт:

#!/bin/bash

for i in *.srt; do

cat "$i"| grep -v "^[0-9]" |  dos2unix | sed -e '/^$/d' | sed ':a;N;$!ba;s/\n/ /g' | tr -s [:blank:] ' ' | sed -e 's/\. /\.\n /g' | sed 's/^[ \t]*//' | sed G > "$i".txt;

done

Где

grep -v "^[0-9]" #убираем строки начинающиеся на цифры

dos2unix #убираем dos-кое окончание строк
sed -e '/^$/d' #удаляем пустые строки
sed ':a;N;$!ba;s/\n/ /g' #собираем все в одну строку
tr -s [:blank:] ' ' #Удаляем повторяющиеся пробельные символы
sed -e 's/\. /\.\n /g' #Заменяем точки на перевод строки с пробелами, чтобы каждое предложение было на отдельной строке
sed 's/^[ \t]*//' #Удаляем все пробелы и символы табуляции в начале каждой строки файла
sed 'G;G' #вставляем ДВЕ пустые строки после каждой строки

 , , , ,

chemtech
()

VLC вместо Flash

Форум — General

Отказался от Flash Player по понятным причинам.

Как можно привязать VLC в Firefox вместо Flash, чтобы он воспроизводил видео через VLC (Youtube + некоторые сайты, желательно конечно и стримы бы, но не обязательно). У меня Arch.

 , ,

TheBear
()

Несколько вопросов по luakit

Форум — Desktop

1. Возможно ли отключить autoplay на ютюбе?

2. Как добавить в контекстное меню свое действие?

3. Как заставить работать стиль из firefox(stylish)?

4. Как на определенном сайте сохранить уровень зума?

 , ,

MLP_Fan
()

BASH часть строки.

Форум — Development

Ребят, поможите. Есть строка вида:

logo="http://domain/path/image.png",Name
Нужно из нее выдрать только image.png, а остальное отбросить. Есть заготовка вида:
LOGO=`echo $line | awk -F, '{print $2}' | sed 's/"//g' | sed 's/,/_/g'`
Но переменные изначально не верны. Помогите вставить правильные переменные в sed, плз.

 

GrafAtRuss
()

{bash} удаление

Форум — General

Всем доброго времени суток. Подскажите каким образом можно удалить файлы и директории, которые выводит ls | grep X?

X - это часть имени. В гугле ссылки попрятали, вроде.

Что было: ls | grep X | xargs rm  — не то, почему?

rm -rf 'ls -R -a | grep X' — команда бред (или есть какой-то секрет ее реализации?), но «попытка не пытка..»

Спасибо.

Kenarus
()

Удалить перевод строки

Форум — General

Имеется некое множество строк, нужно удалить перевод строки у каждых 2х строк
rra
adcv
ftga
6ya
rfa
tta
Нужно получить
rra adcv rtga
6ya rfa tta

Помогите сделать

 , ,

randmo
()

Добавить перевод строки, после значения

Форум — General

Как добавить переводы строк в текстовый файл, после значения Ntext ?

Исходный файл
text text text Ntext mtext
text text text Ntext mtext
text text text Ntext mtext

Конечный файл
text text text Ntext
mtext
text text text Ntext
mtext
text text text Ntext
mtext

ANGELOS
()

bash: нечёткие совпадения

Форум — Development

как найти наиболее подходящее совпадение?
например есть список:

abcd
abcde
lolabzd
zabd
надо найти наиболее похожее на
abd
expr?

 

megabaks
()

как распараллелить потоки IO?

Форум — Development

например, перенаправить из cat file одновременно в grep foo и sed 's/bar/baz/'. можно так сделать? Почитал про tee, но что-то не понял, делает ли она что-то подобное или нет.

 , ,

linearisation
()

bash, построчно запихнуть строку в массив

Форум — Development

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

declare -a activeSessionsArray

function loadActiveSessions( ) {
    local activeSessionsStr="$(tmux list-sessions)"
    local activeSessionNumber=0
    for activeSession in "$(echo \"${activeSessionsStr}\")" ; do
        activeSessionsArray[$activeSessionNumber]="${activeSession}"
        ((activeSessionNumber += 1))  # increment
    done
    echo "array[0]: ${activeSessionsArray[0]}"
}

и такая фигня. Как бы я не пытался, весь выхлоп tmux list-sessions или разбивается поп пробелам, либо пишется в одну стоку.

есть вариант использовать
echo $activeSessionsStr |
while read session ; do
    ...
done
но тогда массив пустой получается. Нашел в интернетах, что это потому что используется пайп.

еще вариант - писать во временный файл в /tmp, например, читать его, предварительно поставив $IFS, потом удалять, но мне это как-то не особо нравится.

в общем, мне нужны советы, как это сделать :)
спасибо

 

ii343hbka
()

case или if ?

Форум — Development

Доброго времени суток, хотел спросить.Что лучше использовать case или if для таких задач:

На примере функции:

function buildfunct {
  croot
  case "$CURRENTDEVICE" in
    taoshan) breakfast taoshan
    ;;
    grouper) breakfast grouper
    ;;
    *) echo "Error, corrent typo"
  esac
  mka bacon
}

Или лучше использовать на примере с if ?

function buildfunct {
  croot
  if [ "$CURRENTDEVICE" == "taoshan" ]; then
    breakfast taoshan
  elif [ "$CURRENTDEVICE" == "grouper" ]; then
    breakfast grouper
fi
  mka bacon
}

Какая разница между использования этих вариантов?

 

Deleted
()