Я пытаюсь настроить Dante 1.4.2 на своем сервере Ubuntu 18.04, но Dante ведет себя странно:
Jun 12 01:33:22 (1528760002.119429) danted[8854]: error: /etc/danted.conf: problem on line 93 near token "user.privileged": syntax error. Please see the Dante manual for more information
Jun 12 01:33:22 (1528760002.121016) danted[8854]: alert: mother[1/1]: shutting down
Мой /etc/danted.conf выглядит так, как показано ниже (кроме закомментированных и пустых строк):
# cat /etc/danted.conf | grep -v '^#' | grep -v '^$'
logoutput: syslog stdout /var/log/sockd.log
internal: eth0 port = 1080
external: <server's real IP>
socksmethod: pam.username
client pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect disconnect error
pam.servicename: sockd
}
socks pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect disconnect error
}
user.privileged: proxy
user.unprivileged: nobody
Это заявление user.*
Records - это раскомментированные строки из стокового файла. В соответствии с форматом конфигурации Dante эти ключевые слова верны (см. https://www.inet.no/dante/doc/1.4.x/sockd.conf.5.html).
Если я прокомментирую user.*
строк, Dante запускается, но напоминает мне, что это небезопасная конфигурация:
Jun 12 01:43:45 (1528760625.302753) danted[9445]: warning: checkconfig(): setting the unprivileged uid to 0 is not recommended for security reasons
Пожалуйста, сообщите, если user.privileged
и user.unprivileged
необходимы, и если да, то как запустить Dante с этими настройками.
Спасибо!
Решением было изменить порядок строк в конфигурации следующим образом:
# cat danted.conf | grep -v '^#' | grep -v ^$
logoutput: syslog stdout /var/log/sockd.log
internal: eth0 port = 1080
external: <server's real IP>
socksmethod: pam.username
user.privileged: root
user.unprivileged : nobody
client pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect disconnect error
pam.servicename: sockd
}
socks pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect disconnect error
}