Архив метки: Linux

Как перенаправить порт через брандмауэр в Ubuntu

Вы используете брандмауэр Ubuntu и вам нужно открыть порты для выхода в Интернет в вашей системе? Мы можем помочь! Следуйте этому руководству, поскольку мы рассмотрим способы переноса на Ubuntu!

Примечание: хотя это руководство ориентировано на Ubuntu, оно также будет работать с любой ОС Linux на основе Ubuntu, поскольку у них также есть доступ к тому же брандмауэру.

Перенаправление портов в Ubuntu — графический интерфейс

Самый простой способ перенаправить порт через брандмауэр в Ubuntu — использовать графический интерфейс. Графический интерфейс брандмауэра Ubuntu действует как посредник для командной строки. По сути, это дает приятный интерфейс для приложения командной строки.

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

Вы можете открыть окно терминала, нажав  Ctrl + Alt + T  на клавиатуре. Или, в качестве альтернативы, вы можете найти «Терминал» в меню приложения Ubuntu. Когда окно терминала открыто и готово к использованию, используйте команду  apt install,  чтобы получить GUFW.

sudo apt install gufw

Если вам не нравится использовать терминал для установки приложений, не волнуйтесь! Вы можете установить его с помощью программного обеспечения Ubuntu. Для начала откройте приложение «Ubuntu Software». Когда он откроется, найдите значок поиска и щелкните по нему мышью.

В поле поиска введите «GUFW» и нажмите клавишу  Enter  . Нажав  Enter , вам будут представлены результаты поиска. Просмотрите результаты для «Конфигурация брандмауэра» и щелкните по нему.

Нажав на «Конфигурация брандмауэра», вы перейдете на страницу приложения Ubuntu Software. Нажмите кнопку «УСТАНОВИТЬ», чтобы загрузить и установить программное обеспечение на свой компьютер.

Настройка проброса портов в GUFW

Теперь, когда приложение GUFW установлено на вашем ПК с Ubuntu, вы можете использовать его для перенаправления портов за пределы брандмауэра. Для этого следуйте пошаговым инструкциям ниже.

Шаг 1. Откройте GUFW, выполнив поиск «Конфигурация брандмауэра» в меню приложения Ubuntu. Когда он откроется, найдите ползунок «Статус». Щелкните его, чтобы включить защиту, если она еще не включена.

Шаг 2: Найдите кнопку «Правила» в GUFW и щелкните по ней, чтобы получить доступ к области правил. Отсюда выберите значок «+». Щелкнув этот значок, вы откроете окно «Добавить правило брандмауэра».

Шаг 3: В новом окне правила найдите вкладку «Простое» и щелкните по ней. На вкладке найдите «Направление» и измените его на «Выход». Установив его на «out», вы разрешаете Ubuntu «переадресовывать» в Интернет.

Шаг 4: Найдите поле «Порт» и щелкните по нему мышью. Оттуда найдите поле «Порт или служба» и введите порт. Когда вы закончите записывать номер порта, нажмите кнопку «Добавить», чтобы добавить новое правило.

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

Перенаправление портов в Ubuntu — интерфейс командной строки

В дополнение к перенаправлению портов с помощью графического интерфейса пользователя также можно перенаправить порт в брандмауэре Ubuntu с помощью интерфейса командной строки (также известного как терминал). Для этого сначала убедитесь, что в вашей системе включен брандмауэр UFW.

Чтобы убедиться, что у вас включен брандмауэр UFW, откройте окно терминала. Вы можете открыть окно терминала, нажав  Ctrl + Alt + T  на клавиатуре или выполнив поиск «терминал» в меню приложения.

В открытом окне терминала используйте команду sudo ufw enable, чтобы включить брандмауэр, если он по какой-то причине отключен. Если ваш UFW уже включен, не беспокойтесь. Вы можете пропустить этот шаг.

Убедившись, что межсетевой экран UFW работает, используйте команду ufw allow для переадресации портов. Например, если вы размещаете сервер OpenSSH на своем ПК с Ubuntu, вам нужно будет открыть порт 22 для Интернета. Для этого вы можете ввести команду ниже.

sudo ufw allow 22/tcp

Или, если вам нужно разрешить подключения через порт 32400 к Интернету через UDP, вы можете вместо этого выполнить следующую команду.

sudo ufw allow 32400/udp

После того, как вы добавили свои порты в брандмауэр Ubuntu, вы можете проверить его статус, чтобы увидеть , выполняются ли введенные вами разрешающие  команды с помощью команды ufw status.

sudo ufw status

Предположим, у вас возникли проблемы с переадресацией портов в Ubuntu, а команды ufw allow  не работают. В этом случае вы можете полностью отключить брандмауэр, открыв доступ ко всем портам в Интернет с помощью команды ufw disable  .

sudo ufw disable



2021-05-05T11:53:04
Вопросы читателей

Как скачивать файлы в Linux с помощью Curl

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

В этом руководстве мы покажем вам, как работает программа Curl и как с ее помощью загружать файлы. Мы даже рассмотрим изящное приложение Curl с графическим интерфейсом! Читать

Как установить Go на Linux Mint 20?

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

Go можно установить на Linux Mint 20 из базового репозитория и архива Go.

 

Установка Go на Linux Mint 20 из стандартных репозиториев

Go имеет открытый исходный код, поэтому он является частью базового репозитория Linux Mint 20, и мы можем установить его оттуда.

Откройте терминал и обновите список пакетов apt:

$ sudo apt update

 

Теперь установите Go с помощью команды:

$ sudo apt install golang

 

 

После установки Go проверьте установленную версию, используя следующую команду:

$ go version

 

На момент написания последней версии Go была 1.16. Поскольку базовые репозитории не всегда включают самую последнюю версию приложения, на моем Linux Mint установлена ​​более старая версия Go.

 

Установка Go на Linux Mint 20 из официального тарбола

Чтобы установить Go на Linux Mint 20 из официального архива, выполните следующие действия:

 

Шаг 1. Загрузите официальный архив Go.

Сначала запустите терминал и загрузите последний официальный архив Go:

$ sudo wget https://golang.org/dl/go1.16.linux-amd64.tar.gz

 

Шаг 2. Распакуйте архив Go.

Затем распакуйте архивный файл Go в каталог /usr/local с помощью следующей команды:

$ sudo tar -C /usr/local -xzf go1.16.linux-amd64.tar.gz

 

Шаг 3. Задайте переменную пути.

Затем мы должны установить значение переменной среды пути в файле .bashrc. Откройте файл .bashrc в текстовом редакторе? например Vim:

$ nano ~/.bashrc

 

Добавьте приведенную ниже строку в файл .bashrc, чтобы система могла найти двоичные файлы Go:

export PATH=$PATH:/usr/local/go/bin

 

Шаг 4. Проверьте установку Go.

После установки переменной пути откройте новое окно терминала и проверьте установку Go с помощью команды:

$ go version

 

В результате вы можете увидеть, что в нашей системе Linux Mint 20 установлена ​​последняя версия Go.

 

Начало работы с Go на Linux Mint 20

Создадим файл Go и запустим первую программу Go:

package main

import "fmt"

func main() {

fmt.Println("Привет от AndreyEx")

}

 

Запустите ваш файл .go с помощью команды:

$ go run <file_name>

$ go run hello.go

 

Заключение

Мы можем установить Go на Linux Mint 20 из базового репозитория и архива Go. Этот пост был посвящен установке Go на Linux Mint 20. Кроме того, мы также создали и выполнили нашу первую программу Go.



2021-05-05T10:31:24
Go

Как найти информацию о процессоре в Linux

Процессор является наиболее важным компонентом компьютера. ЦП также называют микропроцессором или просто процессором. Так же, как мозг управляет человеческим телом, ЦП контролирует все части компьютера. Следовательно, центральный процессор считается мозгом компьютера. Вы можете знать основные детали своего процессора, такие как Intel Core i3, i5, AMD и т.д. Но как насчет других деталей, таких как скорость процессора, количество ядер, архитектура, размер кеша и так далее? В этом руководстве мы обсудим все возможные способы поиска информации о процессоре в Linux с помощью различных инструментов командной строки, а также графических инструментов.

Найти информацию о процессоре в Linux

Для получения информации о процессоре в Linux доступно множество утилит (как CLI, так и GUI). Давайте посмотрим на них по очереди.

Все приведенные ниже методы протестированы в настольной системе Ubuntu 20.04 LTS.

Метод 1 — проверьте информацию о процессоре с помощью lscpu

Утилита командной строки lscpu, собирает информацию архитектуры CPU от sysfs и архитектуры конкретных библиотек, как /proc/cpuinfo. Команда lscpu собирает сведения о ЦП, такие как количество ЦП, потоков, ядер, сокетов и узлов с неоднородным доступом к памяти (NUMA). Он также получает информацию о кэшах ЦП и совместном использовании кеша, семействе, модели, bogoMIPS, порядке байтов, пошаговом режиме и т.д. Команда lscpu является частью пакета util-linux, поэтому не беспокойтесь об установке.

Чтобы найти информацию о процессоре в Linux с помощью команды lscpu, просто запустите ее без каких-либо параметров:

$ lscpu

Пример вывода:

Architecture: x86_64

CPU op-mode(s): 32-bit, 64-bit

Byte Order: Little Endian

Address sizes: 36 bits physical, 48 bits virtual

CPU(s): 4

On-line CPU(s) list: 0-3

Thread(s) per core: 2

Core(s) per socket: 2

Socket(s): 1

NUMA node(s): 1

Vendor ID: GenuineIntel

CPU family: 6

Model: 42

Model name: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz

Stepping: 7

CPU MHz: 838.397

CPU max MHz: 2300.0000

CPU min MHz: 800.0000

BogoMIPS: 4589.90

Virtualization: VT-x

L1d cache: 64 KiB

L1i cache: 64 KiB

L2 cache: 512 KiB

L3 cache: 3 MiB

NUMA node0 CPU(s): 0-3

[...]

1.1. Отображение конкретной информации о процессоре, используемой lscpu в Linux

Как видите, lscpu отображает полную информацию о вашем процессоре. Вы также можете сузить результаты, используя команду grep для фильтрации определенной детали, например названия модели , как показано ниже:

$ lscpu | grep -i 'Model name'

Model name: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz

Если вы хотите отобразить только модель процессора, запустите:

$ lscpu | grep -i "Model name:" | cut -d':' -f2- -

Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz

Точно так же вы можете найти другие сведения о ЦП, например количество ядер ЦП , как показано ниже:

$ lscpu | grep -i "CPU(s)"

CPU(s): 4

On-line CPU(s) list: 0-3

NUMA node0 CPU(s): 0-3

1.2. Найдите поколение процессоров в Linux

Вы обратили внимание на числа (например, 2350M) после части «i3-» в приведенных выше выходных данных? Первые 2 после i3 показывают поколение процессора. В данном случае мой процессор 2-го поколения.

Чтобы узнать больше о номерах процессоров Intel, перейдите по этой ссылке .

Метод 2 — найти информацию о процессоре в Linux с помощью файла /proc/cpuinfo

Как я упоминал в предыдущем разделе, данные lscpuо процессоре собираются из файла /proc/cpuinfo. Итак, мы можем просто отобразить содержимое этого файла, используя команду cat для проверки сведений о процессоре в Linux.

$ cat /proc/cpuinfo

Пример вывода:

В отличие от команды lscpu, здесь будет отображаться информация о каждом ядре ЦП. Таким образом, вы получите результат намного дольше, чем lscpu.

Как мы видели ранее, мы также можем отфильтровать конкретные детали процессора из файла /proc/cpuinfo с помощью команды grep. Например, чтобы отобразить семейство процессоров, запустите:

$ cat /proc/cpuinfo | grep "cpu family"

Метод 3 — просмотр информации о процессоре с помощью lshw

Lshw (Hardware Lister)  — это полнофункциональная утилита CLI, которая предоставляет подробную информацию об аппаратной конфигурации системы Linux. Он может получить подробную информацию об оборудовании, такую ​​как точная конфигурация памяти, версия прошивки, конфигурация материнской платы, версия и скорость процессора, конфигурация кеша, скорость шины и т.д.

Утилита lshw имеет как командную строку, так и графический интерфейс. Он предустановлен в большинстве дистрибутивов Linux. Если он не установлен по какой-либо причине, вы можете установить lshw на свой компьютер с помощью диспетчера пакетов по умолчанию. Например, выполните следующую команду для установки lshw в Debian, Ubuntu, Pop_OS!:

$ sudo apt install lshw lshw-gtk

Чтобы просмотреть информацию о процессоре lshw, просто запустите:

$ sudo lshw -class processor

Пример вывода:

$ sudo lshw -class processor

*-cpu

description: CPU

product: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz

vendor: Intel Corp.

physical id: 4

bus info: cpu@0

version: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz

serial: To Be Filled By O.E.M.

slot: CPU 1

size: 987MHz

capacity: 2300MHz

width: 64 bits

clock: 100MHz

[...]

Если вы хотите отображать только модель процессора, используйте опцию -short с командой lshw:

$ sudo lshw -short -class processor

H/W path Device Class Description

============================================================

/0/4 processor Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz

Lshw также имеет графический интерфейс. Запустите lshw gui из меню приложения или Терминала, выполнив следующую команду:

$ sudo lshw-gtk

Дважды щелкните Portable Computer -> Motherboard -> CPU, чтобы получить полную информацию о вашем процессоре.

Метод 4 — получить сведения о процессоре с помощью dmidecode

Утилита dmidecode извлекает информацию о аппаратных компонентов системы от таблицы DMI (Desktop Management Interface). Сначала он попытается прочитать таблицу DMI из sysfs, а затем попытается прочитать непосредственно из памяти, если доступ sysfs не удался. После нахождения таблицы DMI dmidecode проанализирует эту таблицу и отобразит информацию об оборудовании системы в удобочитаемом формате. Dmidecode предустановлен в большинстве операционных систем Linux, поэтому не будем беспокоиться об установке.

Чтобы получить информацию о процессоре с помощью dmidecode в Linux, запустите:

$ sudo dmidecode --type processor

Пример вывода:

Метод 5 — просмотр информации о процессоре с помощью inxi

Inxi  — это инструмент командной строки для отображения системной информации, такой как процессор, драйверы, xorg, среда рабочего стола, ядро, версия (версии) GCC, процессы, использование оперативной памяти и много другой полезной информации.

Inxi доступен в репозиториях по умолчанию многих операционных систем Linux и Unix. Например, в Deian, Ubuntu, Pop_OS !, мы можем установить inxi с помощью команды:

$ sudo apt install inxi

Чтобы отобразить сведения о процессоре с помощью inxi, используйте -Cили отметьте —cpu:

$ inxi -C

Или же,

$ inxi --cpu

Это отобразит полную информацию о процессоре, включая количество ядер, модель процессора, кэш процессора, тактовую частоту процессора, минимальную / максимальную скорость процессора и т.д.

CPU: Topology: Dual Core model: Intel Core i3-2350M bits: 64 type: MT MCP L2 cache: 3072 KiB

Speed: 821 MHz min/max: 800/2300 MHz Core speeds (MHz): 1: 798 2: 798 3: 798 4: 798

Метод 6 — Распечатать информацию о ЦП с помощью hardinfo

HardInfo — это графическая утилита для сбора информации об оборудовании и операционной системе вашей системы и создания отчетов для печати в HTML или в текстовом формате.

Hardinfo доступен в репозиториях по умолчанию, поэтому установите его с помощью диспетчера пакетов по умолчанию. В Debian, Ubuntu выполните следующую команду для установки Hardinfo:

$ sudo apt install hardinfo

После установки hardinfo запустите его из тире или меню. Щелкните параметр «Процессор» в разделе «Устройства» на левой панели, чтобы получить сведения о ЦП/процессоре:

Метод 7 — использование hwinfo

Hwinfo  — это еще одна утилита командной строки для поиска информации об оборудовании системы. Он проверяет наличие оборудования в системе Linux и отображает подробную информацию о каждом устройстве.

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

$ sudo apt install hwinfo

Чтобы просмотреть информацию о процессоре с помощью hwinfo, запустите:

$ sudo hwinfo --cpu

Пример вывода:

Если вам нужна краткая информация о ЦП, запустите:

$ sudo hwinfo --short --cpu

Метод 8 — использование cpuid

Cpuid выводит подробную информацию о ЦП, собранную из инструкции CPUID, а также определяет точную модель ЦП из этой информации.

Он также не предустановлен по умолчанию, поэтому установите cpuid в зависимости от типа дистрибутива, который вы используете, как показано ниже.

В Debian, Ubuntu:

$ sudo apt install cpuid

В системах на основе RPM, таких как Fedora:

$ sudo dnf install cpuid

После установки cpuid получите информацию о процессоре с помощью команды:

$ cpuid

Пример вывода:

Как видите, Cpuid отображает гораздо более подробную информацию о вашем процессоре по сравнению с другими утилитами.

Метод 9 — использование nproc

Nproc является частью GNU coreutils. Он не дает много информации о процессоре. Он только печатает количество процессоров, доступных для текущего процесса.

$ nproc

4

Количество устройств может быть меньше количества онлайн-процессоров. Чтобы распечатать количество установленных процессоров, используйте —allфлаг:

$ nproc --all

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

Метод 10 — использование hwloc

Hwloc утилита предоставляет инструменты командной строки и C API , чтобы получить иерархическое отображение ключевых вычислительных элементов, таких , как:

  • Узлы памяти NUMA,
  • общие кеши,
  • пакеты процессоров,
  • ядра процессора,
  • и «потоки» процессора.

Убедитесь, что в вашей системе установлен hwloc:

$ sudo apt install hwloc

Чтобы отобразить сведения о процессоре Linux, запустите:

$ hwloc-ls

Эта команда отобразит сведения о вашем процессоре в простой диаграмме, похожей на карту, как показано ниже.

Бонус — Найдите семейство процессоров Intel в Linux

Если вы хотите узнать, какую архитектуру используют процессоры, например Haswell, Sandybridge, Ivybridge, запустите:

$ cat /sys/devices/cpu/caps/pmu_name

sandybridge

Судя по выходу, у меня есть чип Sandybridge . Обратите внимание, что этот файл недоступен для машин с процессором AMD. Вы также можете найти модель процессора, перейти по ссылке https://ark.intel.com/ и ввести номер модели (например, i3-2350M), чтобы узнать, к какой архитектуре он принадлежит.

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

https://www.youtube.com/watch?v=Oc4yY62mefQ



2021-05-04T12:31:56
Вопросы читателей

Как добавить каталог в PATH в Linux

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

Зачем нам добавлять каталог в $PATH?

На днях я тестировал программу Macchina , написанную на языке программирования Rust . Итак, я установил Rust с помощью диспетчера пакетов conda в своей системе Ubuntu, а затем установил Macchina с помощью диспетчера пакетов cargo Rust.

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

Updating crates.io index

Ignored package `macchina v0.5.9` is already installed, use --force to override

warning: be sure to add `/home/sk/.cargo/bin` to your PATH to be able to run the installed binaries

Как вы, возможно, уже знаете, когда мы устанавливаем программу, написанную на Rust, исполняемые двоичные файлы будут сохранены в каталоге ~/.cargo/bin.

$ ls ~/.cargo/bin/

macchina

Как видите, двоичный файл Macchina хранится в каталоге грузового отсека. После установки Rust мне следовало добавить этот каталог в свой $PATH, но я забыл. Отсюда и вышеупомянутая проблема!

Если бы я установил Rust с помощью скрипта установщика rustup, я бы не столкнулся с этой проблемой. Поскольку сценарий rustup автоматически добавит каталог bin Cargo в переменную среды $PATH, изменив файл профиля, расположенный в  ~/.profile. Но в этом случае я установил Rust внутри среды conda, и каталог bin не добавлен в PATH.

Список переменных среды в $PATH

Давайте перечислим все переменные среды $PATH, которые мы выведем командой echo.

$ echo $PATH

Пример вывода:

/home/sk/anaconda3/envs/rustenv/bin:/home/sk/anaconda3/condabin:/home/sk/.nvm/versions/node/v15.0.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Как видно из вышеприведенного вывода, каталог ~/.cargo/bin/ недоступен в $PATH, поэтому программа Macchina не может быть запущена с использованием ее имени. Однако я могу запустить программу, введя полный путь, как показано ниже:

$ ~/.cargo/bin/macchina

Чтобы запустить программу, используя ее имя из любого места, нам нужно добавить ее в PATH, как показано в следующем разделе.

Добавить каталог в PATH в Linux

Чтобы добавить каталог, например /home/sk/.cargo/bin/, в $ PATH, запустите:

$ export PATH=/home/sk/.cargo/bin:$PATH

Обратите внимание на двоеточие (:) в конце пути к каталогу.

Теперь снова перечислите переменные среды, используя echoкоманду:

$ echo $PATH

Пример вывода:

/home/sk/.cargo/bin:/home/sk/anaconda3/envs/rustenv/bin:/home/sk/anaconda3/condabin:/home/sk/.nvm/versions/node/v15.0.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Видите? Каталог ~/.cargo/bin был добавлен в $PATH. С этого момента я могу запускать любую программу, установленную в этом каталоге, просто вызывая имя программы. Не нужно указывать полный путь!

Учтите, что это временно. После выхода из текущего сеанса переменная среды исчезнет. Чтобы сделать изменения постоянными, отредактируйте файл ~/.bashrc:

$ nano ~/.bashrc

Добавьте в конец следующую строку:

export PATH=/home/sk/.cargo/bin:$PATH

Нажмите, CTRL+O, а затем, CTRL+X, чтобы сохранить файл и выйти.

Выполните следующую команду, чтобы изменения вступили в силу немедленно:

$ source ~/.bashrc

Если вы хотите сделать это общесистемным, добавьте ту же строку в /etc/profile.

Надеюсь это поможет.



2021-05-04T12:11:43
Вопросы читателей

Проверяйте доступ к консоли сервера перед тем, как сделать reboot

Хочу сделать предостережение, основанное на личном опыте. Не так давно делал рядовое обновление сервера, которое требовало перезагрузку. Сервер далеко, в необслуживаемой серверной. То есть там никого нет вечером, кто смог бы хоть что-то сделать. Как обычно, время выбрал позднее, так как на сервере полезная нагрузка. Его активно используют люди в течении рабочего дня. И кто бы мог подумать, что сервер не выйдет из ребута. Читать