# Компьютерные технологии > Операционные системы > UNIX >  Pf+ прозрачный SQUID

## byasha

Категорически приветствую!

Подскажите, куда копать.
Что-то мне подсказывает, что поведение системы не штатное

# uname -a
FreeBSD  10.0-RELEASE-p11 FreeBSD 10.0-RELEASE-p11 #1: Mon Oct 27 16:37:37 MSK 2014     root@:/usr/obj/usr/src/sys/PF1306IP6  amd64

Ставлю связку Squid + pf. 

Squid прозрачный, для этого

1) В ядре


# PF

device pf
device pflog
device pfsync

2) В /etc/rc.conf

#PF
pf_enable="YES"
pf_rules="/etc/pf.conf"
pf_flags=""
pflog_enable="YES"
pflog_logfile="/var/log/pflog"
pflog_flags=""


3) /etc/pf.conf

rdr on em2 proto { tcp } from 172.20.0.0/16 to any port 80 -> 127.0.0.1 port 3128

4) squid.conf (Версия 3.4)

http_port 127.0.0.1:3129
http_port 127.0.0.1:3128 intercept

Конфиги написал, запустил, все работает
Но, после reboot не поднимается связка Squid + pf.
И нет интернета в сети
Squid валиться с ошибкой доступа к pf.
PF open failed: (13) Permission denied

Исправляется:

Если руками
Выставлять на псевдоустройство
/dev/pf
root:squid 0640

И сразу-же работает, но после reboot 

/dev/pf имеет root:squid 0600

И опять руками править

Для автоматического изменения

В файле /etc/devfs.conf дописываю

# Allow Squid read acess to /dev/pf
own pf root:squid
perm pf 0640

и далее
/etc/rc.d/devfs restart

Теоретически что должно произойти.
При своем рестарте  демон devfs согласно конфигу /etc/devfs.conf
выставит права на устройства в папке /dev/

И та же самая ситуация должна произойти при reboot системы
НО ЭТОГО НЕ ПРОИСХОДИТ.


Застраховался, но как-то гламурно

по crontab -e прописал 
@reboot /home/aaa/start.sh

####
#start.sh
####
chmod 640 /dev/pf

После перезагрузки права на /dev/pf именно 640 и интернет в сети есть,
но в логи  SQUID валяться ошибки доступа к PF 

PF open failed: (13) Permission denied

При перезагрузке squid и в логах нормально

Но значит, что я что-то не доделал

Как решить проблему штатно, без костылей?

Или, если более обще - как мне добиться того, что бы  /dev/pf
при reboot системы имел root:squid 0640 и соответственно работала моя связка SQUID+pf.

И вообще, откуда берется список устройств в /dev/pf и каким образом на них выставляются права
(Читал документацию и вычитал, что при перезагрузке системы эти устройства удаляются
и при старте создаются вновь. Или же вторая версия, что список этих устройств архивируется при отключении и при 
старте разархивируется. В обоих случаях права выставляться должны уже после того как они созданы при старте. Но вот какИ? )

----------

