pfsense startup script example

This commit is contained in:
bol-van 2022-01-23 12:29:20 +03:00
parent 8b0bb3c7d1
commit 645f705ba7
3 changed files with 31 additions and 0 deletions

View File

@ -177,6 +177,10 @@ Fortunately ipfw and ipdivert modules are present and can be kldload-ed.
It's also necessary to change firewall order using sysctl commands. It's also necessary to change firewall order using sysctl commands.
Sometimes pf may limit dvtws abilities. It scrubs ip fragments disabling dvtws ipfrag2 desync mode. Sometimes pf may limit dvtws abilities. It scrubs ip fragments disabling dvtws ipfrag2 desync mode.
There's autostart script example in `init.d/pfsense`. It should be placed to `/usr/local/etc/rc.d` and edited.
Write your ipfw rules and daemon start commands.
Because git is absent the most convinient way to copy files is ssh. curl is present by default.
/usr/local/etc/rc.d/zapret.sh (chmod 755) /usr/local/etc/rc.d/zapret.sh (chmod 755)
``` ```
#!/bin/sh #!/bin/sh
@ -187,7 +191,9 @@ sysctl net.inet.ip.pfil.outbound=ipfw,pf
sysctl net.inet.ip.pfil.inbound=ipfw,pf sysctl net.inet.ip.pfil.inbound=ipfw,pf
sysctl net.inet6.ip6.pfil.outbound=ipfw,pf sysctl net.inet6.ip6.pfil.outbound=ipfw,pf
sysctl net.inet6.ip6.pfil.inbound=ipfw,pf sysctl net.inet6.ip6.pfil.inbound=ipfw,pf
ipfw delete 100
ipfw add 100 divert 989 tcp from any to any 80,443 out not diverted not sockarg ipfw add 100 divert 989 tcp from any to any 80,443 out not diverted not sockarg
pkill ^dvtws$
dvtws --daemon --port 989 --dpi-desync=split2 dvtws --daemon --port 989 --dpi-desync=split2
``` ```

View File

@ -175,6 +175,10 @@ pfsense использует фаервол pf, а он не поддержив
Бинарики из binaries/freebsd-x64 собраны под FreeBSD 11. Они должны работать и на последующих версиях FreeBSD, Бинарики из binaries/freebsd-x64 собраны под FreeBSD 11. Они должны работать и на последующих версиях FreeBSD,
включая pfsense. Можно пользоваться install_bin.sh. включая pfsense. Можно пользоваться install_bin.sh.
Пример скрипта автозапуска лежит в init.d/pfsense. Его следует поместить в /usr/local/etc/rc.d и отредактировать
на предмет правил ipfw и запуска демонов. Есть встроенный редактор edit как более приемлемая альтернатива vi.
Поскольку git отсутствует, копировать файлы удобнее всего через ssh. curl присутствует по умолчанию.
/usr/local/etc/rc.d/zapret.sh (chmod 755) /usr/local/etc/rc.d/zapret.sh (chmod 755)
----------- -----------
#!/bin/sh #!/bin/sh
@ -185,7 +189,9 @@ sysctl net.inet.ip.pfil.outbound=ipfw,pf
sysctl net.inet.ip.pfil.inbound=ipfw,pf sysctl net.inet.ip.pfil.inbound=ipfw,pf
sysctl net.inet6.ip6.pfil.outbound=ipfw,pf sysctl net.inet6.ip6.pfil.outbound=ipfw,pf
sysctl net.inet6.ip6.pfil.inbound=ipfw,pf sysctl net.inet6.ip6.pfil.inbound=ipfw,pf
ipfw delete 100
ipfw add 100 divert 989 tcp from any to any 80,443 out not diverted not sockarg ipfw add 100 divert 989 tcp from any to any 80,443 out not diverted not sockarg
pkill ^dvtws$
dvtws --daemon --port 989 --dpi-desync=split2 dvtws --daemon --port 989 --dpi-desync=split2
----------- -----------

19
init.d/pfsense/zapret.sh Executable file
View File

@ -0,0 +1,19 @@
#!/bin/sh
# this file should be placed to /usr/local/etc/rc.d and chmod 755
# prepare system
kldload ipfw
kldload ipdivert
sysctl net.inet.ip.pfil.outbound=ipfw,pf
sysctl net.inet.ip.pfil.inbound=ipfw,pf
sysctl net.inet6.ip6.pfil.outbound=ipfw,pf
sysctl net.inet6.ip6.pfil.inbound=ipfw,pf
# add ipfw rules and start daemon
ipfw delete 100
ipfw add 100 divert 989 tcp from any to any 80,443 out not diverted not sockarg
pkill ^dvtws$
dvtws --daemon --port 989 --dpi-desync=split2