Для начала настраиваем директиву'logtimezone' => 'Asia/Yekaterinburg'
В файле /var/www/owncloud/config/config.php
Затем устанавливаем fail2ban.
sudo apt install fail2ban
Создаем локальные файлы настроек.
sudo cp fail2ban.conf fail2ban.conf.local
sudo cp jail.conf jail.conf.local
Создаем regex фильтра.
sudo vim /etc/fail2ban/filter.d/owncloud.conf
[Definition]
failregex={.*Login failed: \'.*\' \(Remote IP: \'<HOST>\'\)"}
ignoreregex =
Теперь сам конфиг.
sudo vim /etc/fail2ban/jail.d/owncloud.local
[owncloud]
enabled = true
port = 80,443
protocol = tcp
filter = owncloud
maxretry = 3
bantime = 10800
logpath = /var/www/owncloud/data/owncloud.log
Перезапускаем службу.
sudo systemctl restart fail2ban.service
Смотрим статус.
sudo fail2ban-client status owncloud
Для проверки парсинга используйте.
fail2ban-regex /var/www/owncloud/data/owncloud.log /etc/fail2ban/filter.d/owncloud.conf
Для снятия бана с ip.
sudo fail2ban-client set owncloud unbanip IPADDRESS
Category Archives: Linux
SUDO без пароля
Запускаем редактирование файла /etc/sudoers специальной командой. sudo visudo Меняем в строчке. %sudo ALL=(ALL:ALL) %sudo ALL=(ALL:ALL) NOPASSWD: ALL Если ошиблись с редактированием есть специальная команда. pkexec visudo
Vagrant шпаргалка.
Инициализировать box.
vagrant init ubuntu/xenial64
Проверить файл Vagrantfile.
vagrant validate
Создать вирт машину.
vagrant up Vagrantfile
Установить плагин.
vagrant plugin install my-plugin
Посмотреть глобальный статус.
vagrant global-status
Соединиться по ssh с машиной в текущей директории.
vagrant ssh
Соединиться по ssh с машиной через имя.
vagrant ssh d1e80fa
Пауза.
vagrant suspend 1f2a1a5
vagrant resume ubuntu1
Вкл/выкл.
vagrant halt 1f
vagrant up 1f
Перезагрузка.
vagrant reload
Удалить машину.
vagrant destroy d1e80fa
Посмотреть ssh конфигурацию.
vagrant ssh-config
Работа со снапшотами.
vagrant snapshot save 0f test
vagrant snapshot restore 0f test
vagrant snapshot delete 0f test
Скопировать файл в виртуальную машину.
vagrant upload source_file.txt dst_file.txt 0f
Обновление образов.
vagrant box update
Файл Vagrant
Имя в vagrant global-status.
config.vm.define "ubuntu1"
Имя в VirtualBox.
config.vm.provider "virtualbox" do |v|
v.name = "ubuntu1"
Имя образа.
vagrant2.vm.box = "ubuntu/trusty64"
Проброс портов.
vagrant2.vm.network "forwarded_port", guest: 80, host: 8081
или
config.vm.network "forwarded_port", guest: 8080, host: 8080
Добавить физический адаптер и статический адрес.
config.vm.network "public_network",bridge: "enp2s0" , ip: "192.168.100.240"
Скопировать при развертывании.
config.vm.synced_folder "test/" , "/var/www/test"
Установить пакет при развертывание.
config.vm.provision "shell", inline: <<-SHELL
sudo apt-get update >/dev/null 2>&1
sudo apt-get install -y mc >/dev/null 2>&1
SHELL
или через скрипт
config.vm.provision "shell", path: "install.sh"
Использовать статический ssh ключ. (/home/user/.vagrant.d/insecure_private_key)
config.ssh.insert_key = false
Прописать маршрут по умолчанию.
inline: "ip route add default via 172.16.10.1"
Установить значение для ОЗУ.
config.vm.provider "virtualbox" do |vb|
vb.memory = "2048"
end
Установка сервера LEMP Ubuntu 18.04.
Установка сервера.
sudo apt update
sudo apt install nginx
Проверка сервиса.
sudo systemctl status nginx
Настройка Firewall.
sudo ufw allow 'Nginx HTTP'
sudo ufw allow 'OpenSSH'
Включение Firewall.
sudo ufw enable
Установка СУБД.
sudo apt install mysql-server
Запускаем простой скрипт безопасности.
sudo mysql_secure_installation
Подключение дополнительных репозиториев.
sudo add-apt-repository universe
Установка php-fpm.
sudo apt install php-fpm php-mysql
Создание файла виртуального хостинга test.
sudo vim /etc/nginx/sites-available/test
server {
listen 80;
root /var/www/html;
index index.php index.html index.htm index.nginx-debian.html;
server_name test;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
Добавление символьной ссылки.
sudo ln -s /etc/nginx/sites-available/test /etc/nginx/sites-enabled/
Удаление символьной ссылки для default.
sudo unlink /etc/nginx/sites-enabled/default
Проверка конфигурации сайта.
sudo nginx -t
sudo systemctl reload nginx
Создание файла тестирования php.
sudo vim /var/www/html/info.php
<?php
phpinfo();
?>
Все можно проверять.
Увеличение дискового пространства Linux системы на гипервизоре Hyper-V.
Сначала увеличиваем размер диска со стороны гипервизора. Resize-VHD -Path 'C:\vm\test\Virtual Hard Disks\test.vhdx' -SizeBytes 300GB Переходим в гостевую систему. запускаем утилиту parted в моем случае нужно увеличить второй раздел диска. parted /dev/sda2 Увеличиваем размер до нужного. (parted) resizepart 2 Warning: Partition /dev/sda2 is being used. Are you sure you want to continue? Yes/No? Yes End? [136GB]? 300GB Information: You may need to update /etc/fstab. Посмотрим fdisk все OK. sudo fdisk -l /dev/sda Disk /dev/sda: 500 GiB, 536870912000 bytes, 1048576000 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: gpt Disk identifier: C7B995A0-EDBE-4387-99C6-7F5067D39A43 Device Start End Sectors Size Type /dev/sda1 2048 4095 2048 1M BIOS boot /dev/sda2 4096 585937500 585933405 279.4G Linux filesystem Увеличиваем структуру самой файловой системы. sudo resize2fs /dev/sda2 resize2fs 1.44.1 (24-Mar-2018) Filesystem at /dev/sda2 is mounted on /; on-line resizing required old_desc_blocks = 16, new_desc_blocks = 35 The filesystem on /dev/sda2 is now 73241675 (4k) blocks long.
Tmux основы работы.
Создать новую сессию. tmux new-session -s name Присоединиться к сессии. tmux a -t name Удалить сессию. tmux kill-ses name Отсоеденить сессию Ctrl+B D Вертикальное разделение. Ctrl+B % Горизонтальное разделение. Ctrl+B " Убрать разделение. Ctrl+B X Закрыть текущее разделение. exit Для растягивания мышью окон echo "set -g mouse on" >> .tmux.conf
SSH Авторизация без пароля.
Переходим в домашний каталог. user@client$ cd /home/user Генерируем ключ (При желании можно добавить парольную фразу). user@client$ ssh-keygen Создаем папку mkdir. user@client$ ssh user@host mkdir -p .ssh Копируем публичный ключ на хост. user@client$ cat .ssh/id_rsa.pub | ssh user@host "cat >> .shh/authorized_keys" либо можно воспользоваться утилитой. user@client$ ssh-copy-id -i id_rsa.pub user@host Можно конектиться без пароля. user@client$ ssh user@host user@host$ Теперь можно закрыть доступ по паролю для этого в файл /etc/ssh/sshd_config внести следующие настройки. PermitRootLogin no UsePAM no PasswordAuthentication no Теперь перезапустить службу. service sshd restart