MSMQ tworzący błędy: Komputer instalacyjny grupy roboczej nie obsługuje operacji / Wewnętrzny certyfikat Usługi kolejkowania wiadomości nie istnieje

To doprowadza mnie do szału, więc jeśli ktokolwiek mógłby mi pomóc, byłbym bardzo wdzięczny !!

Próbuję wysłać wiadomość do kolejki publicznej z serwera w domenie do kontrolera domeny, ale pojawia się błąd:

„Komputer instalacyjny grupy roboczej nie obsługuje tej operacji”.

Ustawiłem MSMQ na kontrolerze domeny CO i utworzyłem kolejkę komunikatów w folderze Public Queues.

Wiem, że podobne pytanie zostało zadane wcześniej:

Dlaczego MSMQ uważa, że ​​jestem na komputerze grupy roboczej?

ale próbowałem wszystkich rzeczy, które były sugerowane, ale nadal otrzymuję ten sam błąd.

Aby przejść przez to, co próbowałem z sugestii:

a) Integracja AD nie została wybrana jako opcja konfiguracji - po zainstalowaniu msmq została wybrana

b) wybrano integrację AD, ale nie zainicjowano; sprawdź dzienniki zdarzeń - sprawdziłem moje dzienniki zdarzeń i mam komunikat - wybieralna aktualizacja MSMQ-ADIntegracja pakietu Pakiet MSMQ Server został pomyślnie włączony.

c) Sprawdź, czy w katalogu Active nie ma osieroconego obiektu - sprawdziłem katalog LostAndFound w przystawce Użytkownicy i komputery usługi Active Directory, aby sprawdzić, czy nie ma osieroconych obiektów w AD

i zastosowałem się do tych instrukcji:http://technet.microsoft.com/en-us/library/cc730960.aspx

Zdeinstalowałem ponownie i ponownie zainstalowałem i ponownie sprawdziłem, że nie mam żadnych osieroconych obiektów.

Czy wszystkie serwery, które wysyłają wiadomość, wymagają zainstalowania msmq? w tej chwili mam go tylko na kontrolerze domeny, który wydawał mi się wystarczający.

Edycja 1: Dodałem msmq do wszystkich serwerów, które wysyłają wiadomości (są zrównoważone pod względem obciążenia, tak aby mogły być dowolne z nich), miały już zainstalowany msmq, ale bez publicznych kolejek, więc unistalled resrted i zainstalowany ponownie (zaznaczając wszystkie odpowiednie pola przy wyborze msmq - usługa integracji / routingu usługi katalogowej itp. i mają teraz kolejki publiczne. Otrzymuję teraz nowy błąd w następujący sposób:

„Wewnętrzny certyfikat kolejkowania wiadomości użytkownika nie istnieje”.

Edytuj 2:

Nadal pracuję nad tym, ale poczyniłem pewne postępy - kiedy sprawdziłem kontroler domeny dla urzędu certyfikacji, był tam, ale gdy spojrzałem na IIS, brakowało katalogu wirtualnego CertServ - zobacz link, aby uzyskać wyjaśnienie:

http://msdn.microsoft.com/en-us/library/windows/desktop/ms755466%28v=vs.85%29.aspx

Po rozwiązaniu tego problemu zażądam certyfikatu komputera dla każdego z moich serwerów, jak poniżej:

http://technet.microsoft.com/en-us/library/cc740173%28v=ws.10%29.aspx

Mam nadzieję, że to zadziała!

EDYTUJ 3: ok, więc ze względu na śmieci internet nie jestem w stanie zażądać certyfikatu, ale mam nadzieję, że zostanie to naprawione w ciągu następnej liczby dni. Próbowałem więc samocertyfikować, co nie miało znaczenia i usunęło UseAuthentication = true, UseEncryption = true i odznaczyłeś uwierzytelnione pole i ustawiłem szyfrowanie na opcjonalne. Nie otrzymuję już komunikatu o błędzie, który prowadzi mnie do przekonania, że ​​coś jest nie tak z uwierzytelnianiem (z usługą Active Directory). Jednak nawet jeśli nie zawiodło to w tym sensie, że nie został wyświetlony żaden komunikat o błędzie, a strona, której oczekuję, zostanie pokazana na mojej stronie jest wyświetlany. Brak wiadomości w moim kontrolerze domeny. Wiadomości kolejki publicznej ...

Zrobiłem to lokalnie, gdy działa, wydaje się, że próbuję to zrobić w domenie, która powoduje problemy.

Edytuj 4:

Po prostu wiesz, co robisz w tej sprawie - chciałem się upewnić, że wiadomość została wysłana do kontrolera domeny, więc przyjrzałem się monitorowaniu MSMQ End2End - więc na każdym z serwerów internetowych (wiadomość jest wysyłana) i Kontroler domeny (wiadomość jest wysyłana do) w Podglądzie zdarzeń> Dzienniki aplikacji i usług> Microsift> Windows> MSMQ> End2End I włączone rejestrowanie.

Gdy próbowałem wysłać wiadomość ponownie na serwerze WWW, zarejestrowano 2 zdarzenia End2End:

Komunikat o identyfikatorze CN = msmq, CN = ETAILWEB03, CN = Komputery, DC = Etail, DC = lokalny 7 został wysłany do kolejki PUBLIC = d7ee680c-11ec-4d9a-aa31-528dcc9b1eba

Wiadomość wysłana przez sieć

A na kontrolerze domeny w zdarzeniach End2End:

Wiadomość dotarła do sieci

Wydaje się więc, że wiadomość nadeszła, więc szukam teraz miejsca, w którym wiadomość została utracona:

https://groups.google.com/forum/?fromgroups=#!topic/microsoft.public.msmq.networking/88FYCvO2YwQ

Edytuj 5:

Ok, tak:

Wiadomości MSMQ odebrane, ale nie dostarczone Windows 2008 R2

Dodałem anonimowego użytkownika i mogłem dodać wiadomość do kolejki, co jest świetne, ale muszę teraz cofnąć się i dać pełną kontrolę użytkownikom, z których wiadomości powinny być odbierane - więc jaka jest nazwa użytkownika serwerów internetowych, a także dla bezpieczeństwa potrzebuję, aby wiadomości były uwierzytelniane, więc wracając do jednego z moich wcześniejszych problemów.

Edytuj 6:

Wciąż zmagam się z tym, ale trochę dalej ...

Na kontrolerze domeny CO (gdzie znajduje się urząd certyfikacji i odbierający MSMQ) jest automatycznie konfigurowany certyfikat, a na serwerach internetowych (które wysyłają wiadomości) uruchamiam następujące polecenie - run - gpupdate / force i ponownie uruchomiłem każdy serwer WWW.

Upewniłem się, że na wszystkich serwerach internetowych zaznaczono opcję Uwierzytelnij, a we właściwościach kolejki komunikatów wybrano treść. Odnowiłem też certyfikaty na wszystkich serwerach internetowych, aby upewnić się, że są aktualne. Otrzymuję teraz następujący błąd:

Nieprawidłowa nazwa ścieżki kolejki.

Spojrzałem na poniższy link:

http://blogs.msdn.com/b/johnbreakwell/archive/2010/03/24/understanding-how-msmq-security-blocks-rpc-traffic.aspx

Edytuj 7:

ok, aby spróbować uruchomić ten program, wydawało się, że gdy użytkownik aplikacji internetowej nie został rozpoznany, na serwerach internetowych poszedłem do IIS> Pule aplikacji> Ustawienia zaawansowane> Tożsamość i ustawiłem tożsamość na usługę sieciową. Po wykonaniu tej czynności nie otrzymuję już komunikatu o błędzie, gdy uruchamiam aplikację, ale wiadomość nie wydaje się znajdować w publicznej kolejce, w której oczekiwałbym, że tak się stanie, więc teraz spojrzę na end2end ponownie, aby sprawdzić, czy mogę się dowiedzieć gdzie to poszło.

Naprawić

Po ustawieniu usług IIS na usługę sieciową dwukrotnie sprawdziłem, czy wysyłana wiadomość została uwierzytelniona, a kontroler domeny, który odbierał wiadomość, został uwierzytelniony. Dałem pełny dostęp do wszystkich w mojej kolejce publicznej i zadziałało!

Szczerze mówiąc, po drodze było dużo prób i błędów, ale mam nadzieję, że ten post pomoże innym - dzięki Johnowi B większość rzeczy, które przeczytałem na ten temat, została opublikowana przez niego w takiej czy innej formie!

questionAnswers(1)

yourAnswerToTheQuestion