Включить RDP в Kali Linux

Для включения RDP в Kali Linux нужно установить xrdp и включить автоматический запуск. Более дополнительных настроек не требуется.

Устанавливаем пакет:

apt-get install xrdp

Запускаем и добавляем в атозапуск xrdp:

service xrdp start
service xrdp-sesman start
update-rc.d xrdp enable

При первом входя может выкинут при подключении. Сделайте рестарт системы. По поводу работы, RDP во всех Linux дистрибутивах тормознутый. Для более менее комфортной работы поменяй в настройках RDP качество изображения на 16bit и сделайте однотонную заставку на рабочий стол.

включит root логин в ProFTPD

ВНИМАНИЕ, использование root для входа в систему всегда плохая практика. Эта заметка предназначена для особого случая или для работы с средой разработки.

Открываем конфиг:

vi /etc/proftpd/proftpd.conf

Добавляем в конец файла:

<Global>
RootLogin on
UseFtpUsers off
</Global>

Перезапускаем службу:

service proftpd restart

Зависла команда yum

Дата: 15.06.2019Метки:

На CentOS 7 зависла команда yum. Убил все процессы, но если даже просто вызвать yum никакого вывода вообще не появлялось. Для решения проблемы нужно выполнить команд ниже. Затем проверить, что нет работающих процессов yum и rpm и повторить попытку.

rm /var/lib/rpm/__db*
rm /var/lib/rpm/.rpm.lock
rm /var/lib/rpm/.dbenv.lock

dd клонирование диска по SSH

Дата: 19.05.2019Метки:

Необходимо было сделать клон с одного диска на другой используя команду dd. На серверах абсолютно идентичные диски. Данные передаем в сжатом виде.

dd if=/dev/sda | gzip | ssh root@target 'gzip -d | dd of=/dev/sda'

В моем случае диски были по 2TB и процесс занимал несколько часов. В связи с чем имеет смысл запустить команду screen и уже потом вводить команду выше. Это нужно для того чтобы можно было закрыть окно SS-подключения.

Для отслеживания прогресса откроете еще один SSH-сеанс и введите команды из этой записи.

Установка Java 8 в Debian 8. Работающий способ.

Дата: 15.05.2019Метки:

Заметка про установку Java 8 в Debian 8. В сети полно мануалов, но помути в данный момент ни один не рабочий. Большинство из них это добавление репозитория Ubuntu — не рабочий вариант. Если вас устроить установка Java 7, то вы это можете сделать командой:

apt-get install default-jre

Ну а если нужно установить Java 8 в Debian 8, используйте следующуие команды:

wget http://javadl.sun.com/webapps/download/AutoDL?BundleId=106240 -O jre-linux.tar.gz
tar xvfz jre-linux.tar.gz
mkdir /usr/lib/jvm
mv jre1.8.0_45 /usr/lib/jvm/jre1.8.0_45
update-alternatives --install /usr/bin/java java /usr/lib/jvm/jre1.8.0_45/bin/java 1 
java -version
update-alternatives --config java

Warning: require(): open_basedir restriction in effect. File(x) is not within the allowed path(s)

Столкнулся с ошибкой во время переноса скрипта на другой сервер. Для управления сайтами используется панель Vesta CP. Проблема заключается в том, что на сервере не правильно прописана опция open_basedir. Для нормальной работы скрипта нам нужно обеспечить доступ к каталогу /home/system/web/system.ru/yii/.

Warning: require(): open_basedir restriction in effect. File(/home/system/web/system.ru/yii/vendor/autoload.php) is not within the allowed path(s): (/home/system/web/system.ru/public_html:/home/system/1) in /home/system/web/system.ru/public_html/admin/index.php on line 10

Warning: require(/home/system/web/system.ru/yii/vendor/autoload.php): failed to open stream: Operation not permitted in /home/system/web/system.ru/public_html/admin/index.php on line 10

Fatal error: require(): Failed opening required '/home/system/web/system.ru/public_html/admin/../../yii/vendor/autoload.php' (include_path='.:/usr/share/pear:/usr/share/php') in /home/system/web/system.ru/public_html/admin/index.php on line 10

Для решения проблемы Warning: require(): open_basedir restriction in effect. File(x) is not within the allowed path(s) переходим в каталог с конфигами Apache. У меня Vesta CP и они расположены по следующему пути:

cd /home/system/conf/web

Далее добавляем или правим настройки в конфигах:

system.ru.httpd.conf
system.ru.httpd.ssl.conf

Следующую опцию:

<Directory /home/system/web/system.ru/public_html>
        AllowOverride All
        SSLRequireSSL
        Options +Includes -Indexes +ExecCGI
        php_admin_value open_basedir   /home/system/web/system.ru/public_html:/home/system
        php_admin_value upload_tmp_dir /home/system/tmp
        php_admin_value session.save_path /home/system/tmp
    </Directory>

Поиск и замена в Linux

Дата: 03.04.2019

Допустим у вас есть сервер, на котором нужно изменить ip-адрес. Проблема в том, что есть много конфигов, где может быть указан этот адрес. Но у вас нет времени и желания лазить по всем конфигам и прописывать новые настройки. Данную задачу можно автоматизировать и ускорить если выполнить поиск по содержимому всех файлов в Linux c последующей заменой необходимого фрагмента текста на свое значение.

Для поиска и замены в Linux по указанному слову выполните команду:

grep -rli 'исходный текст' * | xargs -i@ sed -i 's/исходный текст/текст на который нужно заменить/g' @

Если нужно просто выполнить поиск по содержимому файлов без выполнения замены:

grep -rl 'исходный текст' /

Linux выполнять команду каждую секунду

Дата: 26.03.2019

Небольшая заметка на тему, как непрерывно выполнять одну и туже команду в Linux. Лично мне понадобилось при переносе файлов каждую секунду проверять размер каталога. В данном случае мне нужно было постоянно выполнять команду du -sh. Для выполнения любой команды через заданный промежуток времени в Linux есть утилита watch.

Параметры ее использования достаточно просты. Для примера мне нужно выполнить команду каждую 1-у секунду:

watch -n1 command

MySQL Server Has Gone Away

Дата: 15.02.2019Метки:

Во время загрузки дампа в phpMyAdmin столкнулся с ошибкой MySQL Server Has Gone Away. Дамп был размером на 10MB, а его экспорт требовал времени. В итоге срабатывал тайм-аут соединения, в результате чего сервер закрывал соединение. Для решения проблемы необходимо в файле my.cnf увеличить значение параметра wait_timeout.

vi /etc/mysql/my.cnf

Затем установить тайм-аут ожидания в секундах:

wait_timeout = 600

Настроить soft RAID0 в Linux

Дата: 11.02.2019Метки:

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

# mdadm -C /dev/md4 -l raid0 -n 2 /dev/nvme[0-1]n1p4
mdadm: /dev/nvme0n1p4 appears to contain an ext2fs file system
       size=376531904K  mtime=Sun Feb 10 21:31:56 2019
mdadm: /dev/nvme1n1p4 appears to contain an ext2fs file system
       size=376531904K  mtime=Sun Feb 10 21:31:56 2019
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md4 started.

Просмотреть информацию о RAID массиве:

# mdadm -E /dev/nvme[0-1]n1p4
/dev/nvme0n1p4:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x0
     Array UUID : d798bc02:2e3b3241:ef4ac56e:f742e569
           Name : server:4  (local to host server)
  Creation Time : Mon Feb 11 05:08:40 2019
     Raid Level : raid0
   Raid Devices : 2

 Avail Dev Size : 752801792 (358.96 GiB 385.43 GB)
    Data Offset : 262144 sectors
   Super Offset : 8 sectors
   Unused Space : before=262056 sectors, after=0 sectors
          State : clean
    Device UUID : a0a31486:1d80a1ad:16728a55:5e91b47e

    Update Time : Mon Feb 11 05:08:40 2019
  Bad Block Log : 512 entries available at offset 72 sectors
       Checksum : 5e149378 - correct
         Events : 0

     Chunk Size : 512K

   Device Role : Active device 0
   Array State : AA ('A' == active, '.' == missing, 'R' == replacing)
/dev/nvme1n1p4:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x0
     Array UUID : d798bc02:2e3b3241:ef4ac56e:f742e569
           Name : server:4  (local to host server)
  Creation Time : Mon Feb 11 05:08:40 2019
     Raid Level : raid0
   Raid Devices : 2

 Avail Dev Size : 752801792 (358.96 GiB 385.43 GB)
    Data Offset : 262144 sectors
   Super Offset : 8 sectors
   Unused Space : before=262056 sectors, after=0 sectors
          State : clean
    Device UUID : ec2e8427:f2f506e8:c7895f2e:737b9873

    Update Time : Mon Feb 11 05:08:40 2019
  Bad Block Log : 512 entries available at offset 72 sectors
       Checksum : 7a29660 - correct
         Events : 0

     Chunk Size : 512K

   Device Role : Active device 1
   Array State : AA ('A' == active, '.' == missing, 'R' == replacing)
root@server:~# mdadm --detail /dev/nvme[0-1]n1p4
mdadm: /dev/nvme0n1p4 does not appear to be an md device
mdadm: /dev/nvme1n1p4 does not appear to be an md device
root@server:~# mdadm --detail /dev/md4
/dev/md4:
        Version : 1.2
  Creation Time : Mon Feb 11 05:08:40 2019
     Raid Level : raid0
     Array Size : 752801792 (717.93 GiB 770.87 GB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

    Update Time : Mon Feb 11 05:08:40 2019
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

     Chunk Size : 512K

           Name : server:4  (local to host server)
           UUID : d798bc02:2e3b3241:ef4ac56e:f742e569
         Events : 0

    Number   Major   Minor   RaidDevice State
       0     259       10        0      active sync   /dev/nvme0n1p4
       1     259        4        1      active sync   /dev/nvme1n1p4

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

# mkfs.ext4 /dev/md4
mke2fs 1.43.4 (31-Jan-2017)
Discarding device blocks: done
Creating filesystem with 188200448 4k blocks and 47054848 inodes
Filesystem UUID: 8d549021-4994-496d-90a0-ee53133036b1
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
        102400000

Allocating group tables: done
Writing inode tables: done
Creating journal (262144 blocks): done
Writing superblocks and filesystem accounting information: done

Далее монтируем командой:

mount /dev/md4 /home