База данных SSL сертификатов .NET Core не существует в Linux - PullRequest
0 голосов
/ 01 июня 2018

Я использую mailkit в своем приложении asp core и пытаюсь отправить почту через tls 1.3 с опцией StartTls.Вот мой код:

var emailMessage = new MimeMessage();
                emailMessage.From.Add(new MailboxAddress("Tom", "sender"));
                emailMessage.To.Add(new MailboxAddress("", "receiver"));
                emailMessage.Subject = "la";
                emailMessage.Body = new TextPart(MimeKit.Text.TextFormat.Html)
                {
                    Text = "lalala"
                };

                using (var client = new SmtpClient())
                {
                    await client.ConnectAsync("smtp.lalala.com", 587, SecureSocketOptions.StartTls);
                    await client.AuthenticateAsync("sender", "password");
                    await client.SendAsync(emailMessage);

                    await client.DisconnectAsync(true);
                }

На локальном хосте работает отлично.Но у меня есть два сервера Ubuntu.На первом сервере, если он сначала не работал, а ошибка была: Expected ',' instead of '' И это все.Но каким-то образом я мог получить сообщение о том, что mailkit не может найти путь / home / мой пользователь / .dotnet / ... и когда я создал эту папку, мне отправили письмо.Я видел, что в этой папке были сертификаты x509 или что-то вроде этого.Затем я попытался развернуть этот проект на другом сервере Ubuntu и снова не удалось.Я полностью забыл об этой папке и создал простое консольное приложение, отправляющее электронную почту, и снова получил ошибку с путем ~ / .dotnet.Я создал путь, и консольное приложение работало!Но не главное приложение asp.Так что я застрял.Я работаю с моим не администратором на этом сервере, а dotnet работает как пользователь www-data.Так может ли быть ошибка разрешения?И полученная ошибка не может ничего объяснить

...