Я бы не стал использовать ваш метод из соображений безопасности. Представьте, что вы переделываете свою сеть и вам больше не нужно использовать SNAT. Что случилось бы? Это очевидная часть. Где-то могут скрываться скрытые проблемы.
Насколько это возможно, правила NAT и правила фильтрации должны оставаться независимыми, если нет веской причины не делать этого. Я не уверен, что у тебя есть веская причина. Хорошей причиной может быть обработка NAT-трафика по-разному, а не NAT-трафика (, например,:сервер DNAT передает услугу другому серверу позади, но не позволяет использовать его в качестве маршрутизатора для прямого доступа к серверу/службе. сзади).
Теперь о вашей заметке :просто разделите задачу на несколько шагов.
Это неверное правило:
iptables -A FORWARD -m conntrack --ctstate SNAT ! --ctstate ESTABLISHED,RELATED -j LOG
можно заменить на:
iptables -N subtest
iptables -A FORWARD -m conntrack --ctstate SNAT -j subtest
iptables -A subtest -m conntrack ! --ctstate ESTABLISHED,RELATED -j LOG
или вместо этого с ВОЗВРАТОМ и обратной логикой:
iptables -N speciallog
iptables -A FORWARD -j speciallog
iptables -A speciallog -m conntrack ! --ctstate SNAT -j RETURN
iptables -A speciallog -m conntrack ! --ctstate ESTABLISHED,RELATED -j LOG
или, используя метки (not, если метки используются где-то еще (и не желая возиться с масками )), вместо этого можно добиться того же:
iptables -A FORWARD -m conntrack --ctstate SNAT -j MARK 1
iptables -A FORWARD -m mark --mark 1 -m conntrack ! --ctstate ESTABLISHED,RELATED -j LOG
Для каждого метода можно легко связать дополнительные тесты (путем увеличения отметки для метода отметки ).
sddm.service
запускается символической ссылкой /etc/systemd/system/display-manager.service
(, которая указывает на любой X Display Manager, который вы установили и выбрали для запуска в качестве диспетчера отображения по умолчанию ), который, в свою очередь, вызывается graphical.target
.
Если sddm
не удается запустить экран входа в систему/сеанс автоматического входа в систему графического интерфейса пользователя, вам следует обратиться к /var/lib/sddm/.local/share/sddm/xorg-session.log
и/или /var/log/Xorg.0.log
для получения подсказок.
Возможно, вам не хватает необходимого xserver-xorg-video-*
пакета :для Geforce RTX 2070, открытый -исходный код xserver-xorg-video-nouveau
почти справится с этим, но вы можете получить лучшие результаты с не -бесплатнаяxserver-xorg-video-nvidia
(версия 418. *или новее ).
Если вы используете xserver-xorg-video-nouveau
, вам могут понадобиться файлы прошивки с RTX 2070 -, которые поставляются в комплекте firmware-misc-nonfree
.
Если startx
работает, возможно, что-то не так с sddm
файлом состояния /var/lib/sddm/state.conf
, его файлом конфигурации /etc/sddm.conf
и/или сценариями по умолчанию, расположенными в /usr/share/sddm/scripts
, или их версиями, настраиваемыми системным администратором -в /etc/sddm/
.
Основы сеанса sddm
Debian 10:(с использованием X11, а не Wayland)
Когда запускается sddm
,он запускает X-сервер (/usr/bin/X
), запускает скрипт /usr/share/sddm/scripts/Xsetup
(, который по умолчанию пуст ), а затем запускает sddm-greeter
для приглашения на вход в систему, если в sddm.conf
не настроен автоматический вход в систему. Если несколько типов сеансов определены как файлы .desktop
в /usr/share/xsessions/
, приветствующий также предложит выбор типов сеансов, по умолчанию выбранный пользователем при предыдущем входе в графический интерфейс. На этом этапе выбор типа сеанса только устанавливает переменную среды $STARTUP
так, чтобы она указывала на команду, указанную в файле .desktop
.
Запуск фактического пользовательского сеанса происходит через /etc/sddm/Xsession
, который запускается как ведение журнала -в пользователе, инициализирует среду оболочки пользователя для сеанса графического интерфейса, а затем выполняет /etc/X11/Xsession
, который должен вызываться не только sddm
. ] но любым способом запуска X-сессии в Debian, включая startx
.
(С Wayland вместо этого сценарий сеанса будет /usr/share/sddm/scripts/wayland-session
, и я не знаю, что произойдет после этого.)
/etc/X11/Xsession
проверит наличие различных файлов конфигурации классического сеанса X. Затем он будет использовать любые сценарии в /etc/X11/Xsession.d
, которые, среди прочего, проверят, что команда запуска сеанса, выбранная sddm-greeter
, действительно существует, и вернутся к нормальным (сисадмином -регулируемым )значениям по умолчанию. если нет, и, наконец, на самом деле начать его. Для сеанса KDE команда запуска сеанса будет exec /usr/bin/startkde
.
Поскольку используется exec
, эта команда примет PID процесса оболочки, который выполнялся /etc/X11/Xsession
, и все сценарии, полученные им до этого момента. Эта команда будет «стержнем» всего сеанса входа в систему X :, когда этот процесс завершится, sddm
будет считать сеанс завершенным и вызовет завершение всего сеанса входа в систему с графическим интерфейсом :, /usr/share/sddm/scripts/Xstop
] будет выполнен скрипт, X-сервер будет сброшен, будет сгенерирован новый файл cookie xauth
. Любые оставшиеся процессы из старого сеанса могут получить сигнал HUP в этот момент и обычно умирают.