Архив рубрики: Публикации

Настройка EoIP MikroTik, быстрый VPN туннель на L2

Ethernet over IP (EoIP) Tunneling — это протокол MikroTik RouterOS, который создает туннель Ethernet между двумя маршрутизаторами поверх IP-соединения. Туннель EoIP может работать через туннель IPIP, туннель PPTP или любое другое соединение, способное передавать IP.

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

Установка Яндекс Диск в Linux

 

У многих компаний существуют свои облачные хранилища, на которых вы можете бесплатно хранить свои файлы. Такое хранилище есть у Google, Mail.ru, DropBox, Mega, а также у Яндекса. В отличие от Mail.ru, у которого больше нет полноценного клиента для Linux у Яндекса такой клиент есть, правда, работает он только через терминал.

 

В этой небольшой статье мы рассмотрим как установить Яндекс Диск на Linux и как пользоваться программой для синхронизации локальной папки с удалённым диском. Мы рассмотрим все действия на примере Ubuntu.

Читать

Функция Python map ()

map() — это встроенная функция в Python, которая применяет функцию ко всем элементам в данной итерации. Это позволяет писать простой и чистый код без использования циклов.

Функция Python map()

Функция map() принимает следующий вид:

map(function, iterable, ...)

Он принимает два обязательных аргумента:

  • function — функция, которая вызывается для каждого элемента iterable .
  • iterable — один или несколько объектов, поддерживающих итерацию. Большинство встроенных объектов в Python, таких как списки, словари и кортежи, являются повторяемыми.

В Python 3 map() возвращает объект карты с размером, равным переданному итерируемому объекту. В python 2 функция возвращает список.

Давайте рассмотрим пример, чтобы лучше объяснить, как работает функция map() . Допустим, у нас есть список строк, и мы хотели бы преобразовать каждый элемент в списке в верхний регистр.

Один из способов сделать это — использовать традиционный цикл for :

directions = ["north", "east", "south", "west"]
directions_upper = []

for direction in directions:
    d = direction.upper()
    directions_upper.append(d)

print(directions_upper)

['NORTH', 'EAST', 'SOUTH', 'WEST']

С функцией map() код будет намного проще и гибче.

def to_upper_case(s):
    return s.upper()

directions = ["north", "east", "south", "west"]

directions_upper = map(to_upper_case, directions)

print(list(directions_upper))

Мы используем конструктор list() для преобразования возвращенного объекта карты в список :

['NORTH', 'EAST', 'SOUTH', 'WEST']

Если функция обратного вызова проста, более питоническим способом является использование лямбда-функции:

directions = ["north", "east", "south", "west"]

directions_upper = map(lambda s: s.upper(), directions)

print(list(directions_upper))

Лямбда-функция — это небольшая анонимная функция.

Вот еще один пример, показывающий, как создать список квадратных чисел от 1 до 10:

squares = map(lambda n: n*n , range(1, 11))
print(list(squares))

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

Функция range() генерирует последовательность целых чисел.

Использование map() с несколькими итерациями

Вы можете передать столько итераций, сколько захотите, в функцию map() . Количество требуемых входных аргументов, которые принимает функция обратного вызова, должно быть таким же, как количество итераций.

В следующем примере показано, как выполнить поэлементное умножение двух списков:

def multiply(x, y):
  return x * y

a = [1, 4, 6]
b = [2, 3, 5]

result = map(multiply, a, b)

print(list(result))

[2, 12, 30]

Тот же код, но с использованием лямбда-функции, будет выглядеть так:

a = [1, 4, 6]
b = [2, 3, 5]

result = map(lambda x, y: x*y, a, b)

print(list(result))

Когда предоставляется несколько итераций, размер возвращаемого объекта равен самому короткому итерируемому.

Давайте посмотрим на пример, когда итерируемые объекты имеют разную длину:

a = [1, 4, 6]
b = [2, 3, 5, 7, 8]

result = map(lambda x, y: x*y, a, b)

print(list(result))

Лишние элементы (7 и 8) игнорируются:

[2, 12, 30]

Выводы

Функция Python map() принимает итерируемый объект вместе с функцией и применяет эту функцию к каждому элементу в итерируемом объекте.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.



2020-10-18T16:23:42
Python

Как получить и изменить текущий рабочий каталог в Python

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

Когда вы запускаете сценарий Python, в качестве текущего рабочего каталога устанавливается каталог, из которого выполняется сценарий.

Модуль os python обеспечивает переносимый способ взаимодействия с операционной системой. Модуль является частью стандартной библиотеки Python и включает методы поиска и изменения текущего рабочего каталога.

Получение текущего рабочего каталога в Python

Метод getcwd() модуля os в Python возвращает строку, содержащую абсолютный путь к текущему рабочему каталогу. Возвращенная строка не включает завершающий символ косой черты.

os.getcwd()

Чтобы использовать методы модуля os, вы должны импортировать модуль в верхней части файла.

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

# Import the os module
import os

# Get the current working directory
cwd = os.getcwd()

# Print the current working directory
print("Current working directory: {0}".format(cwd))

# Print the type of the returned object
print("os.getcwd() returns an object of type: {0}".format(type(cwd)))

Результат будет выглядеть примерно так:

Current working directory: /home/linuxize/Desktop
os.getcwd() returns an object of type: <class 'str'>

Если вы хотите найти каталог, в котором находится скрипт, используйте os.path.realpath(__file__) . Он вернет строку, содержащую абсолютный путь к запущенному скрипту.

Изменение текущего рабочего каталога в Python

Чтобы изменить текущий рабочий каталог в Python, используйте метод chdir() .

os.getcwd(path)

Метод принимает один аргумент — путь к каталогу, в который вы хотите перейти. Аргумент path может быть абсолютным или относительным.

Вот пример:

# Import the os module
import os

# Print the current working directory
print("Current working directory: {0}".format(os.getcwd()))

# Change the current working directory
os.chdir('/tmp')

# Print the current working directory
print("Current working directory: {0}".format(os.getcwd()))

Результат будет выглядеть примерно так:

Current working directory: /home/linuxize/Desktop
Current working directory: /tmp

Аргумент, передаваемый методу chdir() должен быть каталогом, в противном случае NotADirectoryError исключение NotADirectoryError . Если указанный каталог не существует, возникает исключение FileNotFoundError . Если у пользователя, от имени которого выполняется сценарий, нет необходимых разрешений, возникает исключение PermissionError .

# Import the os module
import os

path = '/var/www'

try:
    os.chdir(path)
    print("Current working directory: {0}".format(os.getcwd()))
except FileNotFoundError:
    print("Directory: {0} does not exist".format(path))
except NotADirectoryError:
    print("{0} is not a directory".format(path))
except PermissionError:
    print("You do not have permissions to change to {0}".format(path))

Выводы

Чтобы найти текущий рабочий каталог в Python, используйте os.getcwd() , а для изменения текущего рабочего каталога используйте os.chdir(path) .

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.



2020-10-16T08:24:27
Python

Установите и используйте Hex-редактор в Kali Linux 2020

Эта статья даст вам обзор некоторых из лучших Hex-редакторов для Kali Linux. Прежде чем обсуждать лучших редакторов, давайте сначала посмотрим, что означает термин «Hex Editor».

Hex Editor — это программа, которую вы можете использовать для редактирования шестнадцатеричных значений данных. Проще говоря, файл, сохраненный на любом устройстве, можно редактировать, будь то изображение, видео или программное обеспечение. Hex Editing — это простейшая форма взлома игры, которая не полагается на чит-коды или что-то в этом роде. Вместо этого это метод взлома однопользовательской игры. Существуют похожие методы взлома для многопользовательской игры, которые обычно включают редактирование ресурсов. Единственные инструменты, которые нам понадобятся в этом случае, — это калькулятор Windows и HxD Hex Editor.

 

Где используется Hex Editor

Каждая часть данных хранится в виде десятичных знаков. Части данных можно легко редактировать с помощью Hex Editor. Это программное обеспечение в основном используют программисты или инженеры-программисты. Он используется для определения типа файла, который не поддерживается Adobe, игр и взлома файлов, отладки и редактирования.

Ниже перечислены некоторые из лучших Hex-редакторов, которые можно использовать в Kali Linux.

 

Редактор Xxd Hex

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

 

Редактор HexEdit Hex

Еще один шестнадцатеричный редактор, используемый для редактирования двоичных данных, — это шестнадцатеричный редактор HexEdit. В отличие от Xxd Hex Editor, HexEdit также показывает ASCII (числовое кодирование) форму файла. В основном этот редактор используется для современных операционных систем, включая Linux и Windows.

 

Hexyl Hex Editor

К разным категориям байтов относятся ASCII, не-ASCII, байты NULL, пробелы ASCII и т. Д. Для удобства эти категории различаются разными цветами. Hexyl Hex Editor — это инструмент, который дает возможность различать разные байты, указывая их разными цветами. Hexyl также дает информацию о количестве байтов и их текстовом представлении. Редактор Hexyl Hex имеет некоторые ограничения. Процесс установки Hexyl Hex Editor зависит от ОС. Итак, прежде чем переходить к этому Hex Editor, вы должны сначала проверить процесс установки вашей ОС.

 

Редактор GHex-GNOME Hex

GHex доступен для вашей системы Linux. В программах есть множество шестнадцатеричных редакторов, которые можно использовать для отображения шестнадцатеричных данных. Ghex — достойный вариант, поскольку он автоматически преобразует двоичное значение в десятичное, восьмеричное или шестнадцатеричное значение. Он также находит искомое смещение и считает его. Все, что вам нужно сделать, это просто выбрать байты, и, в конце концов, GHex выполнит преобразование автоматически, что может быть полезно для многих людей.

 

Редактор Blex Hex

Blex Hex Editor — один из самых продвинутых Hex-редакторов, очень похожий на предыдущий редактор, перечисленный выше. Вы можете редактировать данные больших файлов с помощью Bless Hex Editor. Это очень мощный инструмент, который можно использовать для поиска самого себя. Вы можете легко восстановить данные, написанные на PHP. Bless Hex Editor имеет расширенную функцию редактирования данных и может эффективно отменять инструкции.

 

Редактор Oketta

Каждый Hex Editor имеет особые особенности, которые делают его уникальным. Oketta Hex Editor хорошо известен тем, что открывает несколько удаленных файлов по HTTP и FTP. Это один из самых простых шестнадцатеричных редакторов для редактирования или просмотра шестнадцатеричных данных.

 

Редактор WxhexEditor

Еще один продвинутый шестнадцатеричный редактор для редактирования данных — это WxhexEditor. Этот шестнадцатеричный редактор лучше всего подходит для файлов на больших устройствах. WxhexEditor может работать на различных платформах, включая Windows, Linux, Mac и BSD. Одна из лучших передовых функций Wxhexeditor — это более низкое потребление памяти и более высокая скорость работы. Он также может исправлять ошибки, что делает версию снова пригодной для использования в случае ошибок.

 

Редактор Hexcurse-Console Hex

Hex-редактор Hexcurse-Console — один из самых популярных Hex-редакторов для Kali Linux. Вы можете легко открывать файлы и редактировать данные с помощью этого инструмента. Вы также можете переключаться между форматами HEX и ASCII с помощью Hexcurse.

 

Двоичный редактор Hexer

Hexer Binary Hex Editor — это многобуферный редактор с удивительными функциями, включая редактирование нескольких файлов и многоуровневую отмену для двоичных регулярных выражений. Двоичный редактор Hexer отличается от других редакторов тем, что это редактор в стиле Vi.

 

Установка HexEdit в Kali Linux

Вы можете установить HexEdit Hex Editor в системе Ubuntu с помощью терминала. Во-первых, вам нужно будет открыть браузер и загрузить установочный файл HexEdit для Linux. Вы можете создать новый словарь для переноса файла установщика, но этот шаг не является обязательным, так как установщик предложит вам сделать это во время установки.

Откройте терминал и выполните следующие действия, чтобы установить HexEdit в Kali Linux.

Сначала перейдите к словарю, в котором вы сохранили файл установщика.

$ sudo leafpad /etc/apt/sources.list

 

Второй шаг — добавить еще один источник.

$ deb http://mirror.nus.edu.sg/kali/kali kali main

 

Пакет HexEdit готов к установке.

$ sudo apt-get update && apt-get install hexedit

 

Поскольку вы запускаете HexEdit в первый раз, он запускается с помощью автоматического запроса, выдаваемого системой. Теперь вы можете легко использовать HexEdit в руководстве Kali Linux.

 

Вывод

Вышеупомянутая статья включала краткое описание всех шестнадцатеричных редакторов, которые лучше всего использовать в Kali Linux. Вы можете выбрать любой шестнадцатеричный редактор из списка выше после просмотра инструкций и требований вашей ОС.



2020-10-15T10:02:03
Kali Linux

Как обновить вашу систему Kali Linux

В этой статье содержится краткое руководство по обновлению вашей системы Kali Linux. Kali Linux — это дистрибутив Linux на основе Debian, который поставляется с множеством уникальных и оптимизированных утилит, направленных на повышение точности, скорости и легкости тестирования на проникновение. На первый взгляд Kali похожа на любую другую ОС: она воспроизводит аудио и текстовые файлы, поддерживает все программы, поддерживаемые Windows и macOS, а вы даже можете. доступ в Интернет с его помощью. В отличие от других операционных систем, Kali имеет большой набор испытанных и протестированных предустановленных приложений, что делает ее более чем простой ОС.

Kali была выпущена в 2013 году как полный ребрендинг BackTrack Linux с интерфейсом GNOME. Разработчики избавились от BackTrack, удалив его некачественные утилиты и обновив те, которые были одобрены сообществом whitehat.

Kali OS включает в себя в общей сложности более 600 инструментов, полностью бесплатна и имеет общедоступное дерево Git с открытым исходным кодом. Kali Linux настолько хорошо известен среди профессионалов в области кибербезопасности, что его название практически стало синонимом пен-тестирования.

 

Поддерживает

Kali Linux поддерживает широкий спектр ARM, в том числе:

  • Одноплатные системы, такие как Raspberry Pi и BeagleBone Black
  • Бортовые компьютеры Beagle
  • Chromebook ARM от Samsung
  • И многие другие платформы

 

Обновление Kali Linux

Следующие разделы покажут вам пошаговый процесс обновления вашей системы Kali Linux.

 

1. Настройте репозитории Kali Linux.

Во-первых, поищите репозитории Kali, так как вы должны сначала настроить их перед обновлением. Дважды проверьте, что ваш файл sources.list в /etc/apt/sources.list содержит все соответствующие репозитории Kali, в том числе следующее:

b https://http.kali.org/kali kali-rolling main non-free contrib



deb-sources https://http.kali.org/kali kali-rolling main non-free contrib

 

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

 

2. Начать обновление

Вам сначала нужно будет обновить список индексов пакетов, прежде чем вы сможете обновить систему Kali Linux. Для этого введите в командный терминал следующий синтаксис:

$ sudo apt update

 

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

$ apt list --upgradable

 

Введите следующую команду для индивидуального обновления каждого пакета:

$ apt install PACKAGE-NAME

 

Или введите команду ниже, чтобы обновить все пакеты одновременно:

$ sudo apt upgrade

 

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

Установка обновлений завершена, но мы еще не закончили!

 

3. Обновите отложенные пакеты

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

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

$ sudo apt upgrade

 

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

$ sudo apt install PACKAGE-NAME

 

Или вы можете ввести команду ниже, чтобы загрузить все пакеты сразу:

$ sudo apt dist-upgrade

 

4. Удалите устаревшие пакеты.

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

$ sudo apt autoremove

 

Вывод

Короче говоря, для оптимального обновления вашей системы Kali все, что вам нужно сделать, это просто настроить репозитории и установить обновления с помощью команды:

$ sudo apt upgrade

 

Это так просто.

Помните, что вы должны быть внимательны при использовании сторонних репозиториев. Это потенциально может сломать вашу систему Kali, и в этом случае вам придется установить Kali заново. Кроме того, не забудьте освободить место на жестком диске, удалив все устаревшие пакеты.



2020-10-14T20:12:25
Kali Linux