<LocationMatch (?i)^/yourcontextroot>
...
(? i) говорит базовому PCRE быть нечувствительным к регистру.
Нет. По умолчанию нет журнала , показывающего это, но
Посмотрите, как настроен ваш межсетевой экран:
iptables -L
Найдите политику Chain [INPUT | OUTPUT]
первый. Если есть что-то еще, кроме ACCEPT
, используемый порт, возможно, придется явно ACCEPT
изменить ...
iptables -L INPUT | grep `port=2[01]`
Чтобы показать явные правила для порта 20 и порта 21, но будьте осторожны, вам может потребоваться прочитать всю конфигурацию брандмауэра, чтобы проверить многопортовые
, определяемые пользователем цепочки
и т. д., это может оказаться трудным, если вы не знаете iptables
] вообще.
Пустая открытая конфигурация брандмауэра может выглядеть так:
iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
см .:
man iptables
, я использую этот трюк: Последующие вызовы одной и той же функции будут печатать только правила, в которых изменен счетчик. Это может помочь определить, какое правило что-то блокирует.
Сетевой стек ядра может быть сброшен с помощью
netstat -tan
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN
tcp 0 2364 192.168.1.1:21 192.168.1.35:49179 ESTABLISHED
для сокетов TCP или
netstat -uan
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
для сокетов UDP.
Как я FTP сервер использует сокеты TCP , я мог видеть, что в настоящее время установлен обмен между моим сервером и хостом ... 35 , ( на данный момент сервер имеет 2364 пакета для отправки клиенту. Может быть, файл, может быть, список ...)
Вместо использования журнала
вы можете наблюдать, что происходит на вашем интерфейсе:
tcpdump -i ethX
Будет сброшена полезная информация о трафике на ethX
, но по умолчанию и для большей читабельности , этот инструмент будет пытаться разрешить имя каждого IP. Таким образом, может быть некоторая задержка между самим событием и дампом на терминале. Итак:
tcpdump -ani ethX
не будет пытаться разрешить (opt -n
) IP-адреса и имена служб и покажет ВСЕ ( -a
) пакеты, проходящие через интерфейс.
более точно :
tcpdump -ani ethX port 21 or port 20
09:17:58.264453 IP 192.168.1.1.21 > 192.168.24.91.45951: Flags [S.], seq 3593971599, ack 1942867644, win 5792, options [mss 1460,sackOK,TS val 1168768120 ecr 62841986,nop,wscale 7], length 0
09:17:58.299693 IP 192.168.1.35.56485 > 192.168.1.1.21: Flags [S], seq 3334605998, win 5840, options [mss 1368,sackOK,TS val 1936641509 ecr 0,nop,wscale 7], length 0
09:17:58.299728 IP 192.168.1.1.21 > 192.168.1.35.56485: Flags [S.], seq 980554936, ack 3334605999, win 5792, options [mss 1460,sackOK,TS val 1168768129 ecr 1936641509,nop,wscale 7], length 0
...
Более подробно: ... используйте -v или -vv для полного декодирования протокола
tcpdump -anvvi ethX port 21 or port 20
tcpdump: listening on eth1, link-type EN10MB (Ethernet), capture size 65535 bytes
09:22:40.047486 IP (tos 0x0, ttl 62, id 31488, offset 0, flags [DF], proto TCP (6), length 60)
192.168.24.91.46011 > 192.168.1.1.21: Flags [S], cksum 0x5985 (correct), seq 3989081263, win 14600, options [mss 1368,sackOK,TS val 62912431 ecr 0,nop,wscale 6], length 0
09:22:40.047525 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 60)
192.168.1.1.21 > 192.168.24.91.46011: Flags [S.], cksum 0x926d (correct), seq 2283473829, ack 3989081264, win 5792, options [mss 1460,sackOK,TS val 1168838566 ecr 62912431,nop,wscale 7], length 0
09:22:40.817248 IP (tos 0x0, ttl 62, id 31489, offset 0, flags [DF], proto TCP (6), length 52)
192.168.24.91.46011 > 192.168.1.1.21: Flags [.], cksum 0xd6e9 (correct), seq 1, ack 1, win 229, options [nop,nop,TS val 62912442 ecr 1168838566], length 0
09:22:40.817567 IP (tos 0x0, ttl 62, id 31490, offset 0, flags [DF], proto TCP (6), length 52)
192.168.24.91.46011 > 192.168.1.1.21: Flags [F.], cksum 0xd6e3 (correct), seq 1, ack 1, win 229, options [nop,nop,TS val 62912447 ecr 1168838566], length 0
...
Где вы можете отслеживать каждую операцию.
Если iptables и SElinux отключены, журналы для чтения, скорее всего, не будут. Я не совсем понимаю, где telnet вписывается в этот сценарий, поскольку он не имеет ничего общего с ssh. Текущая политика SELinux блокирует только ssh-соединения на нестандартных портах ниже 1023, так что это маловероятно.
Сообщение В соединении отказано
обычно означает, что на запрошенном порту ничего не прослушивается. Вы можете проверить, прослушивает ли что-то, используя netstat
netstat -tunlp | grep 8022
tcp 0 0 0.0.0.0:8022 0.0.0.0:* LISTEN 2178/sshd
tcp6 0 0 :::8022 :::* LISTEN 2178/sshd
. Выше показано, что sshd прослушивает порт 8022 на всех интерфейсах IPv4 и IPv6.
Если у вас установлен LOG в правиле iptables, вы должны получить запись журнала в / var / adm / messages
. Вот пример:
# --- Log new connections:
-A INPUT -m state --state NEW -j LOG --log-prefix "NEW: " --log-level info
Правило, подобное приведенному ниже, в вашем наборе правил IP-таблиц может помочь вам начать:
# Enable port 8022 (ssh) but rate limit it:
-A INPUT -p tcp -m tcp --dport 8022 ! --syn -j ACCEPT
-A INPUT -p tcp -m tcp --dport 8022 --syn -m limit --limit 3/minute -j ACCEPT
Команда sestatus сообщит вам, включен ли selinux:
[root@seadog ~]# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: enforcing
Mode from config file: enforcing
Policy version: 24
Policy from config file: targeted
Сообщения от selinux попадают в / var /log/audit/audit.log
по умолчанию.
Команда semanage
(находится в rpm: policycoreutils-python) также может быть полезна для перечисления портов, которыми управляет selinux:
root@seadog log]# semanage port -l
SELinux Port Type Proto Port Number
afs_bos_port_t udp 7007
afs_client_port_t udp 7001
afs_fs_port_t tcp 2040
afs_fs_port_t udp 7000, 7005
afs_ka_port_t udp 7004
afs_pt_port_t udp 7002
afs_vl_port_t udp 7003
agentx_port_t tcp 705
TCP Wrapper также может быть включен. Проверьте файлы /etc/hosts.allow
и /etc/hosts.deny
.