Назад | Перейти на главную страницу

Ошибка Stunnel: привязка pop3s к 0.0.0.0:110

Я настраиваю станнель поэтому приложение без поддержки SSL может получить доступ к учетной записи Gmail / Google Apps. Вот конфигурация, которую я использую:

CLIENT=YES

[pop3s]
accept = 110
connect = pop.gmail.com:995

[imaps]
accept = 143
connect = imap.gmail.com:993

[ssmtp]
accept = 25
connect = smtp.gmail.com:465

Я создал файл .pem, хорошо. Но он не работает и регистрирует следующую ошибку:

Clients allowed=125
stunnel 4.50 on x86_64-apple-darwin11.2.0 platform
Compiled/running with OpenSSL 0.9.8r 8 Feb 2011
Threading:PTHREAD SSL:ENGINE Auth:none Sockets:SELECT,IPv6
Reading configuration from file ./tools/stunnel.conf
Snagged 64 random bytes from /Users/synergist/.rnd
Wrote 1024 new random bytes to /Users/synergist/.rnd
PRNG seeded successfully
Initializing SSL context for service pop3s
Insecure file permissions on stunnel.pem
Certificate: stunnel.pem
Certificate loaded
Key file: stunnel.pem
Private key loaded
SSL options set: 0x01000004
SSL context initialized
Initializing SSL context for service imaps
Insecure file permissions on stunnel.pem
Certificate: stunnel.pem
Certificate loaded
Key file: stunnel.pem
Private key loaded
SSL options set: 0x01000004
SSL context initialized
Initializing SSL context for service ssmtp
Insecure file permissions on stunnel.pem
Certificate: stunnel.pem
Certificate loaded
Key file: stunnel.pem
Private key loaded
SSL options set: 0x01000004
SSL context initialized
Configuration successful
Option SO_REUSEADDR set on accept socket
Error binding pop3s to 0.0.0.0:110
bind: Permission denied (13)
Service pop3s closed FD=5
str_stats: 168 block(s), 8340 data byte(s), 8400 control byte(s)

Почему stunnel не может привязаться к 110? Есть ли что-то уже привязанное к 110, если да, то как я могу узнать, что это?

Обновление: у меня работает stunnel с помощью sudo, есть ли способ заставить его работать без?

Вы не можете привязаться к портам <= 1024 без прав суперпользователя, это вопрос безопасности. Если вы установите порты> 1024, все будет в порядке.

Как вы уже заявили в своем обновлении, и следующий вывод сообщает вам:

Error binding pop3s to 0.0.0.0:110
bind: Permission denied (13)

Вам потребуются повышенные привилегии, чтобы привязать службу к порту. Я считаю, что пользователи без полномочий root могут связывать службы только с портами выше 1024, а 0-1024 зарезервированы для root.

Что касается вашего вопроса о том, какая служба прослушивает порт, вы жестяная банка проверьте это с lsof с помощью: lsof -i tcp:110. Если у вас не установлен lsof на вашем сервере, netstat также может быть полезен, но он немного менее эффективен (например, netstat -an|grep -i listen чтобы показать все "слушающие" процессы, дополнительно добавьте еще grep ':110' чтобы отфильтровать и это.