Бруй В.В., Карлов С.В. - Linux-сервер - пошаговые инструкции - инсталляции и настройки (1077321), страница 92
Текст из файла (страница 92)
/etc/init.d/functions406Часть 7. Программное обеспечение для организации службы электронной почты# Source networking configuration.. /etc/sysconfig/network# Source for additional options if we have them.if [ -f /etc/sysconfig/qpopper ] ; then.
/etc/sysconfig/qpopperfi# Check that networking is up.[ ${NETWORKING} = "no" ] && exit 0# If Qpopper is not available stop now.[ -f /usr/sbin/popper ] || exit 0# Path to the Qpopper binary.popper=/usr/sbin/popperRETVAL=0prog="Qpopper"start() {echo -n $"Starting $prog: "daemon $popper $IPADDR $OPTIONSRETVAL=$?echo[ $RETVAL -eq 0 ] && touch /var/lock/subsys/popperreturn $RETVAL}stop() {echo -n $"Shutting down $prog: "killproc $popperRETVAL=$?echo[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/popperreturn $RETVAL}# See how we were called.case "$1" instart)start;;stop)stop;;status)status $popperRETVAL=$?;;restart)stopstartRETVAL=$?;;condrestart)if [ -f /var/lock/subsys/popper ]; thenstopstartRETVAL=$?fi;;*)Глава 28.
Qpopper – программное обеспечение для организации получения...407echo $"Usage: $0 {start|stop|status|restart|condrestart}"exit 1esacexit $RETVALШаг 2Определите права доступа к файлу /etc/init.d/qpopper и назначьте его владельцем пользователя root:[root@test /]# chmod 700 /etc/init.d/qpopper[root@test /]# chown 0.0 /etc/init.d/qpopperШаг 3Для автоматического запуска Qpopper при загрузке системы создайте необходимые ссылки:[root@test /]# chkconfig --add qpopper[root@test /]# chkconfig --level 345 qpopper onТестирование QpopperШаг 1Проверьте наличие, а при необходимости добавьте в файл /etc/shells строку:/bin/false/Шаг 2На центральном почтовом концентраторе создайте пользователя, которому разрешается получениесообщений:[root@test /]# useradd -g users -s /bin/false polyakoff[root@test /]# passwd polyakoffChanging password for user polyakoffNew UNIX password: Secretnoe_$L0VORetype new UNIX password: Secretnoe_$L0VOpasswd: all authentication tokens updated successfullyШаг 3Запустите Qpopper:[root@test /]# /etc/init.d/qpopper startЗапускается Qpopper:[ОК]Шаг 4Просканируйте порты вашего почтового концентратора с помощью сканера портов, например, nmap(http:// www.insecure.org/nmap/):[root@test root]# nmap test.bruy.infoЕсли POP-сервер ожидает подключений на 110 порту, то вы получите сообщение следующего вида:Starting nmap V.
2.54BETA34 ( www.insecure.org/nmap/ )Interesting ports on test.bruy.info (212.111.80.127):(The 1554 ports scanned but not shown below are in state: closed)PortStateService110/tcpopenpop-3Nmap run completed -- 1 IP address (1 host up) scanned in 1 secondШаг 5На удаленной системе настройте клиентскую почтовую программу на использование в качествеSMTP и POP-сервера вашего почтового концентратора. Отправьте с ее помощью сообщение пользователю,например, polyakoff. Через некоторое время проверьте почту. Если вы получили сообщение, то POPсервер работает нормально.Запуск Qpopper с поддержкой SSLПо умолчанию Qpopper использует пароли в обычном текстовом формате. Злоумышленник, перехватывая пакеты с помощью программы-снифера, может определить имена и пароли пользователей вашего408Часть 7.
Программное обеспечение для организации службы электронной почтыцентрального почтового концентратора и использовать их для получения доступа к почте и выполнениядругих несанкционированных действий. Для установки шифрования трафика между клиентской почтовойпрограммой и POP-сервером необходимо включить поддержку протокола SSL. Для этого предлагается выполнить следующие операции.Шаг 1Для создания самостоятельно подписанного сертификата необходимо наличие собственного сертификационного центра. Если вы его уже создали, то перейдите к следующему шагу. В противном случае ознакомьтесь с рекомендациями раздела «Тестирование OpenSSL» главы 12 и создайте собственный сертификационный центр.Шаг 2Создайте самостоятельно подписанный незащищенный паролем сертификат:[root@test /]# cd /usr/share/ssl[root@test ssl]# openssl req -new -x509 -nodes -days 365 -out tmp.pemGenerating a 1024 bit RSA private key.................................................++++++.........................................................................................++++++writing new private key to 'privkey.pem'----You are about to be asked to enter information that will be incorporatedinto your certificate request.What you are about to enter is what is called a Distinguished Name or aDN.There are quite a few fields but you can leave some blankFor some fields there will be a default value,If you enter '.', the field will be left blank.----Country Name (2 letter code) [RU]:<Enter>State or Province Name (full name) [Moscow]:<Enter>Locality Name (eg, city) [Yubileyniy]:<Enter>Organization Name (eg, company) [Valentine Bruy]:<Enter>Organizational Unit Name (eg, section) [Home]:<Enter>Common Name (eg, YOUR name) [test.bruy.info]:<Enter>Email Address [drwalbr@bruy.info]: drwalbr@test.bruy.info <Enter>Шаг 3Добавьте в конец файла privkey.pem раздел "certificate" из файла tmp.pem:[root@test ssl]# cat tmp.pem >> privkey.pemШаг 4Поместите файл /usr/share/ssl/privkey.pem сертификата в каталог certs, переименуйтеего в pop3.pem, установите права доступа к файлу и удалите более ненужный файл tmp.pem:[root@test ssl]# mv privkey.pem certs/pop3.pem[root@test ssl]# chmod 400 certs/pop3.pem[root@test ssl]# rm -f tmp.pemШаг 5Файл /etc/qpopper.conf отредактируйте следующим образом:set clear-text-password= tlsset reverse-lookup= falseset tls-support= alternate-portset tls-server-cert-file= "/usr/share/ssl/certs/pop3.pem"set chunky-writes= tlsШаг 6В файле /etc/sysconfig/qpopper:Замените строку:IPADDR = "0.0.0.0:110"на:IPADDR = "0.0.0.0:995"Глава 28.
Qpopper – программное обеспечение для организации получения...Шаг 7Перезапустите Qpopper:[root@test /]# /etc/init.d/qpopper restartОстанавливается Qpopper:Запускается Qpopper:409[ОК][ОК]Шаг 8Просканируйте порты вашего почтового концентратора с помощью сканера портов, например, nmap(http:// www.insecure.org/nmap/):[root@test /]# nmap test.bruy.infoЕсли POP-сервер ожидает подключений с поддержкой протокола SSL на 995 порту, то вы получитесообщение следующего вида:Starting nmap V. 2.54BETA34 ( www.insecure.org/nmap/ )Interesting ports on test.bruy.info (212.111.80.127):(The 1554 ports scanned but not shown below are in state: closed)PortStateService995/tcpopenpop3sNmap run completed -- 1 IP address (1 host up) scanned in 1 secondШаг 9Проверьте работоспособность сертификата:[root@test /]# cd /usr/share/ssl[root@test ssl]# opensslOpenSSL> s_client –host test.bruy.info –port 995Если вы получите сообщение такого вида:CONNECTED(00000003)depth=0 subject=/C=RU/ST=Moscow/L=Yubileyniy/O=ValentineBruy/OU=Home/CN=test.bruy.info/emailAddress=drwalbr@test.bruy.infoissuer=/C=RU/ST=Moscow/L=Yubileyniy/O=ValentineBruy/OU=Home/CN=test.bruy.info/emailAddress=drwalbr@test.bruy.infoverify error:num=18:self signed certificateverify return:1 =/C=RU/ST=Moscow/L=Yubileyniy/O=ValentineBruy/OU=Home/CN=test.bruy.info/emailAddress=drwalbr@test.bruy.infoissuer=/C=RU/ST=Moscow/L=Yubileyniy/O=ValentineBruy/OU=Home/CN=test.bruy.info/emailAddress=drwalbr@test.bruy.info--Certificate chain0 s:/C=RU/ST=Moscow/L=Yubileyniy/O=ValentineBruy/OU=Home/CN=test.bruy.info/emailAddress=drwalbr@test.bruy.infoissuer=/C=RU/ST=Moscow/L=Yubileyniy/O=ValentineBruy/OU=Home/CN=test.bruy.info/emailAddress=drwalbr@test.bruy.infoi: :/C=RU/ST=Moscow/L=Yubileyniy/O=ValentineBruy/OU=Home/CN=test.bruy.info/emailAddress=drwalbr@test.bruy.infoissuer=/C=RU/ST=Moscow/L=Yubileyniy/O=ValentineBruy/OU=Home/CN=test.bruy.info/emailAddress=drwalbr@test.bruy.info--Server certificate-----BEGIN CERTIFICATE----MIIDqjCCAxOgAwIBAgIBADANBgkqhkiG9w0BAQQFADCBmzELMAkGA1UEBhMCUlUxDzANBgNVBAgTBk1vc2NvdzETMBEGA1UEBxMKWXViaWxleW5peTEXMBUGA1UEChMOVmFsZW50aW5lIEJydXkxDTALBgNVBAsTBEhvbWUxFzAVBgNVBAMTDnRlc3QuYnJ1eS5pbmZvMSUwIwYJKoZIhvcNAQkBFhZkcndhbGJyQHRlc3QuYnJ1eS5pbmZvMB4XDTAzMDYwNjEyMjc0M1oXDTA0MDYwNTEyMjc0M1owgZsxCzAJBgNVBAYTAlJVMQ8wDQYDVQQIEwZNb3Njb3cxEzARBgNVBAcTCll1YmlsZXluaXkxFzAVBgNVBAoTDlZhbGVudGluZSBCcnV5MQ0wCwYDVQQLEwRIb21lMRcwFQYDVQQDEw50ZXN0LmJydXkuaW5mbzElMCMGCSqGSIb3DQEJARYWZHJ3YWxickB0ZXN0LmJydXkuaW5mbzCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAzvmLMuOeBKpoCi87tzsd9Q3J6g1gWHFQFFI8dTR9Wpnn4UZfOsUg7c01PR7vEZSkap5X1wkJ3mQRYB+7XnDHfcQ34jjqUXyj410Часть 7.
Программное обеспечение для организации службы электронной почтыY7xCRy5mVr8vg5qsTn2uG6vePThci8Lgjz1cEbafh+k2o/W73RIrYJou4x3YNUs1BbvKUSahFdsCAwEAAaOB+zCB+DAdBgNVHQ4EFgQUtJuuHibUU9UUJOalwV+Eg1KgKfIwgcgGA1UdIwSBwDCBvYAUtJuuHibUU9UUJOalwV+Eg1KgKfKhgaGkgZ4wgZsxCzAJBgNVBAYTAlJVMQ8wDQYDVQQIEwZNb3Njb3cxEzARBgNVBAcTCll1YmlsZXluaXkxFzAVBgNVBAoTDlZhbGVudGluZSBCcnV5MQ0wCwYDVQQLEwRIb21lMRcwFQYDVQQDEw50ZXN0LmJydXkuaW5mbzElMCMGCSqGSIb3DQEJARYWZHJ3YWxickB0ZXN0LmJydXkuaW5mb4IBADAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBAUAA4GBAKL1il+jCyUEtfWjwsg93r8HysD16FO8ort74h9tJIqjoVSazuOR957J5RfPpakTW86XrDW66NdLDRzRdmAyDGfrY2gCYQMYyG5StPJChys8Xwgz1TcuaC9W/B3j1xVotOTh6sZcya6zKHw3hDD6CegMe5WsFeolx9REb1FPG2Af-----END CERTIFICATE----subject=/C=RU/ST=Moscow/L=Yubileyniy/O=ValentineBruy/OU=Home/CN=test.bruy.info/emailAddress=drwalbr@test.bruy.infoissuer=/C=RU/ST=Moscow/L=Yubileyniy/O=ValentineBruy/OU=Home/CN=test.bruy.info/emailAddress=drwalbr@test.bruy.info--No client certificate CA names sent--SSL handshake has read 1104 bytes and written 346 bytes--New, TLSv1/SSLv3, Cipher is AES256-SHAServer public key is 1024 bitSSL-Session:Protocol : TLSv1Cipher: AES256-SHASession-ID:5B5265419B1696D549F5164FCCA3399970D573009A27AD5D2FE45026C661C3DBSession-ID-ctx:Master-Key:295C9CBCDF2BBC8851AB64CA1807125DB2705DBE73BA506B88D2FEEA61B1F8DF15F2443C600105E56D810B71A48445EAKey-Arg: NoneStart Time: 1056267322Timeout: 300 (sec)Verify return code: 18 (self signed certificate)--+OK readyто ваш сертификат работает правильно.Завершите соединение с POP-сервером:Pop > quit+OK Pop server at test.bruy.info signing off.closedШаг 10На удаленной системе настройте клиентскую почтовую программу на использование в качествеSMTP и POP-сервера вашего почтового концентратора.