LINUX.ORG.RU

Сообщения seregakhv

 

nginx: не могу настроить конфиг на статический контент

Добрый день, камрады.

Помогите плиз разобраться с проблемой - настроить конфиг nginx нужным образом.

конфиг /etc/nginx/sites-available/default

server {
listen 443 ssl http2 ;
server_name mysite.ru;

ssl on;
ssl_certificate /main.crt;
ssl_certificate_key /main.key;
ssl_session_cache shared:SSL:50m;
ssl_session_timeout 1h;
ssl_buffer_size 4k;

keepalive_timeout 50;
keepalive_requests 100;
reset_timedout_connection on;
client_body_timeout 10;
send_timeout 2;
client_max_body_size 1m;
open_file_cache_valid 30s;
large_client_header_buffers 2 1k;

location /aaa {
root /var/www/frontend/build;
index index.html;
}

location / {
root /var/www/frontend/build;
index index.html;
location /index.php {
root /var/www/wp;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include snippets/fastcgi-php.conf;
}
}

проблематика следующая: Когда захожу на https://mysite.ru, перехожу в раздел aaa - страница скролица на соответствующий раздел, при этом в адресной строке появляется https://mysite.ru/aaa

Если сразу в браузере ввести адрес https://mysite.ru/aaa, выдается 404 ошибка, в логах nginx:

2019/11/07 16:14:11 [error] 14944#14944: *1 open() «/var/www/frontend/build/aaa» failed (2: No such file or directory), client: 192.167.1.6, server: mysite.ru, request: «GET /aaa HTTP/2.0», host: «mysite.ru»

Прошу подсказать, как сделать, чтобы при открытии https://mysite.ru/aaa страница сразу скролилась в нужное место или хотя бы кидалось на главную (index.html) без 404. Если есть еще какая-то конструктивная критика к параметрам конфига - буду рад выслушать.

ps. В идеале, вообще оставить один location, оптимизированный под все запросы

____________

ubuntu 16.10
nginx 1.10.3

 ,

seregakhv
()

nginx выдает 302, не слушая конфиг

Всем привет! Прошу помочь разобраться в нестандартном(для меня) поведении работы nginx. Вместо ожидаемого проксирования на внутренний ресурс - отдается 302 с ненужной ссылкой.

cat /etc/nginx/sites-enabled/myService:

server {
listen 80;
return 301 https://$host:8443$request_uri;
}

server {
listen 8443 ssl ;
ssl on;
ssl_certificate /etc/letsencrypt/live/dev.mydomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/dev.mydomain.com/privkey.pem;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 5m;

location / {
proxy_pass http://localhost:8080;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}

На хосте поставлена ubuntu-server 16.04
nginx - 1.10.3-0ubuntu0.16.04.3

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

8080(WAN) -> 80
8443(WAN) -> 8443

С другого хоста выполняю:

$ curl -I http://dev.mydomain.com:8080 (отрабатывает нормально)

HTTP/1.1 301 Moved Permanently
Server: nginx/1.10.3 (Ubuntu)
Date: Fri, 15 Mar 2019 10:12:16 GMT
Content-Type: text/html
Content-Length: 194
Connection: keep-alive
Location: https://dev.mydomain.com:8443/

проблемный запрос, редиректит не туда, куда нужно:

$ curl -I https://dev.mydomain.com:8443

HTTP/1.1 302 Found
Server: nginx/1.10.3 (Ubuntu)
Date: Fri, 15 Mar 2019 10:13:44 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Set-Cookie: ocuqio3tm92n=jlnpklj8j2h1aivS10r7d34hpk; path=/; >>HttpOnly
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-cache
Set-Cookie: oc_sessionPassphrase=s8otAimSz8fPCOLw%2Bfst8pjQWY5S2O40qKZVRT39xospZInp7UxJ0K9X%2Fqp7E8s%2BuEMTgwZjo7lEIWKWwet5%2bsW3Nz2wTaYPJeC1wuy9z2ZZiQwSoYt3eBJBguMovj8%2B; path=/; HttpOnly
Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; frame-src *; img-src * data: blob:; font-src 'self' data:; media-src *; connect-src *
Location: http://dev.mydomain.com/login
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
X-Robots-Tag: none
X-Frame-Options: SAMEORIGIN
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

То есть отдается 302 с адресом без https и без порта: http://dev.mydomain.com/login

В /var/log/nginx/access.log при втором запросе:

192.168.1.1 - - [15/Mar/2019:04:16:36 +0300] «HEAD / HTTP/1.1» 302 0 "-" «curl/7.54.0»

 , ,

seregakhv
()

Не работает маршрутизация после OVPN

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

Собрана такая схема:

OVPNClient(172.10.0.6)-----(172.10.0.1)tun-S1-eth(2.2.2.1)-----(2.2.2.2)eth-S2

На S1: net.ipv4.ip_forward=1
На S2 прописан маршрут: 172.10.0.0/24 via 2.2.2.1
На клиенте прописант маршрут: 2.2.2.0/24 via 172.10.0.1
S1 и S2 - ubuntu server 16.04

С Клиента пингуется 2.2.2.1
С S2 пингуется 172.10.0.1

Запускаем с клиента ping 2.2.2.2, на S1 в tcpdump:

# tcpdump -nni any icmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on any, link-type LINUX_SLL (Linux cooked), capture size 262144 bytes
00:00:29.152268 IP 172.10.0.6 > 2.2.2.2: ICMP echo request, id 1, seq 34391, length 40

На S2 в tcpdump при такой же команде совершенно ничего не видно

 , , ,

seregakhv
()

exim4 отправляет письма в виде plain text'a

Версия Exim4:4.84.2-2+deb8u3 OS: Debian 3.16.39-1+deb8u2

smtp сервер настроен на релей. Приложение без авторизации скидывает на локальный сервер, который в свою очередь раскидывает по почту дальше.

1. С недавнего времени письма на почту(например gmail.com) начали падать в виде plain text'a, т.е:

<html lang="en">
<head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <title>Newsletter Preview</title>
    <style>
        @font-face {
            font-family: 'HelveticaneuecyrRoman';
...

2. Адрес отправителя начал подменяться с mailer@domain.com на jenkins@domain.com, хотя приложение скидывает в exim с отправителем mailer

В логах, при отправке видно следующее:

2018-02-27 21:08:40 1eqjg8-0003AJ-JB <= jenkins@domain.com H=localhost (domain.com) [127.0.0.1] P=esmtp S=12394 id=371987050.9.1519754920593.JavaMail.jenkins@domain.com
2018-02-27 21:08:41 1eqjg8-0003AJ-JB => my@gmail.com R=dnslookup_relay_to_domains T=remote_smtp H=gmail-smtp-in.l.google.com [74.125.133.26] X=TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128 DN="C=US,ST=California,L=Mountain View,O=Google Inc,CN=mx.google.com" C="250 2.0.0 OK 1519762140 w195si145459wmw.31 - gsmtp"
2018-02-27 21:08:41 1eqjg8-0003AJ-JB Completed

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

 , ,

seregakhv
()

не могу создать процесс утилитой daemonize

Гуру, прошу помочь.

Пытаюсь в Jenkins'e, с помощью утилиты daemonize фокнуть процесс, который не будет зависеть от окружения jenkins, иметь вывод в файл и создавать .pid.

Методом проб и ошибок, в джобе jenkins'a, в shell-команде, прописал следующую команду:

 /usr/local/sbin/daemonize -p process.pid -E BUILD_ID=dontKillMe /usr/bin/nohup mvn -f ~/workspace/myJob/application/pom.xml clean spring-boot:run >  output.log
 

в итоге, .pid-файл пустой, в логе имеем следующее:

Daemonizing...Writing process ID to "process.pid".

Каталог ~/workspace/myJob/application/ принадлежит пользователю jenkins, файлы создаваться могут

К утилите daemonize пришел по совету самого Jenkins - https://wiki.jenkins.io/display/JENKINS/Spawning processes from build

Jenkins_version - 2.60.1

OS - Debian 8

Maven - 3.3.9

Java - 1.8

Спасибо.

 , ,

seregakhv
()

iptables can't initialize iptables table `nat': Table does not exist

Приветствую!

Достался сервер, потребовалось прописать правило в цепочку PREROUTING следующего вида:

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 123 -j REDIRECT --to-port 4567

Когда пытаюсь сделать все, что связано с цепочками 'nat' вываливается ошибка:

 iptables v1.4.21: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded. 

uname -a:

 Linux 123.domain.ru 2.6.32-042stab117.16 #1 SMP Fri Sep 9 21:57:19 MSK 2016 x86_64 x86_64 x86_64 GNU/Linux
 

Команда #modprobe iptable_nat ошибок не выдаёт, но модуль в lsmod не появляется

Прошу помочь решить проблему с nat'ом

Почитав соседнюю ветку iptables -t nat не добавляется правило понял, что скорее всего проблему не исправить. Есть ли какие-то альтернативные варианты по редиректу порта?

 , ,

seregakhv
()

Увеличить lvm-disk online

Всем привет! Имеется виртуалка(Debian) на esxi, необходимо расширить диск. Изначально диск был 20Gb, затем его расширили до 50 средствами ESXi

Что имеем:

# lsblk

NAME                     MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
fd0                        2:0    1    4K  0 disk 
sda                        8:0    0   50G  0 disk 
├─sda1                     8:1    0  243M  0 part /boot
├─sda2                     8:2    0    1K  0 part 
└─sda5                     8:5    0 19.8G  0 part 
  ├─sergey00000--vg-root   254:0    0 18.9G  0 lvm  /
  └─sergey00000--vg-swap_1 254:1    0  872M  0 lvm  [SWAP]
sr0                        11:0    1 1024M  0 rom  

# fdisk -l

Disk /dev/sda: 50 GiB, 53687091200 bytes, 104857600 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x205081f9

Device     Boot  Start      End  Sectors  Size Id Type
/dev/sda1  *      2048   499711   497664  243M 83 Linux
/dev/sda2       501758 41940991 41439234 19.8G  5 Extended
/dev/sda5       501760 41940991 41439232 19.8G 8e Linux LVM

Disk /dev/mapper/sergey00000--vg-root: 18.9 GiB, 20300431360 bytes, 39649280 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/mapper/sergey00000--vg-swap_1: 872 MiB, 914358272 bytes, 1785856 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

# df -h

Filesystem      Size  Used Avail Use% Mounted on
/dev/dm-0        19G   14G  4.0G  78% /
udev             10M     0   10M   0% /dev
tmpfs           403M   41M  362M  11% /run
tmpfs          1006M     0 1006M   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs          1006M     0 1006M   0% /sys/fs/cgroup
/dev/sda1       236M   33M  191M  15% /boot

В случае, когда система Ext - всё понятно -через fdisk удалил раздел, создал новый, в случае lvm вгонят в ступор вывод df-h, fdisk и lsblk. Вариант переставить систему с превычной разметкой не подходит.

 ,

seregakhv
()

Tomcat8. Как заменить '%23' на '#' в URL

Приветствую! Как сделать, чтобы tomcat заменял символы '%23' на '#' при вводе URL, т.е. при http://mysite.ru/%2 3/blog запрос обрабатывался как http://mysite.ru/#/blog

 ,

seregakhv
()

Exim4 - письма на Google отправляет с задержкой

Имеется Debian 3.16.0-4 Exim4 4.84.2-1

Exim настроен на роль ретранслятора, слушает 127.0.0.1 и перекидывает письма.

На mail.ru, yandex.ru и рабочую почту доходят нормально, но при отправке на google письмо фризится на 1-2 минуты и только потом отправляется на целевой сервер, на котором тоже обрабатывается 1-2 минуты.

логи:

2016-08-03 13:46:15 1bUtgk-0006De-SA <= root@blablabla.net U=root P=local S=7272155 id=20160803104614.GA23900@blablabla.net

2016-08-03 13:48:22 1bUtgk-0006De-SA gmail-smtp-in.l.google.com [2a00:1450:400c:c01::1b] Connection timed out

2016-08-03 13:48:23 1bUtgk-0006De-SA => mymail@gmail.com R=dnslookup_relay_to_domains T=remote_smtp H=gmail-smtp-in.l.google.com 
[74.125.195.27] X=TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128 DN="C=US,ST=California,L=Mountain View,O=Google Inc,CN=mx.google.com" C="250 2.0.0 OK 1470221303 d10si7346588wje.168 - gsmtp"

2016-08-03 13:48:23 1bUtgk-0006De-SA Completed

Что можете посоветовать?

 , ,

seregakhv
()

RSS подписка на новые темы