530 Se așteaptă un nume de gazdă valid la configurarea IIS 10 pentru mai multe site-uri (Administrarea sistemului, Iis, Ftp, Windows Server 2016)

Flo a intrebat.
a intrebat.

Am configurat IIS pentru a avea mai multe site-uri FTP, folosind instrucțiunile găsite aici: https://docs.microsoft.com/en-us/iis/publish/using-the-ftp-service/using-ftp-virtual-host-names-in-iis-7

Vedeți configurația cu care am ajuns mai jos.

În IIS am configurat autentificarea de bază și folosesc utilizez utilizatorul mysite_ftp pentru „Connect as”, la testarea setărilor obțin marcaje verzi atât la Authenication cât și la Authorization.

Setări IIS:

Când folosesc Filezilla pentru a încerca să mă conectez, obțin următoarea logare:

Încercat cu numele de gazdă VPS: h2746286.stratoserver.net

Status: Resolving address of h2746286.stratoserver.net
Status: Connecting to 85.214.200.30:21...
Status: Connection established, waiting for welcome message...
Status: Insecure server, it does not support FTP over TLS.
Command:    USER tv_ftp
Response:   331 Valid hostname is expected.
Command:    PASS ***********
Response:   503 Login with USER first.
Error:  Critical error: Could not connect to server

Încercat cu numele de gazdă: www.telefonievergelijken.nl

Status: Resolving address of www.telefonievergelijken.nl
Status: Connecting to 85.214.200.30:21...
Status: Connection established, waiting for welcome message...
Status: Insecure server, it does not support FTP over TLS.
Command:    USER tv_ftp
Response:   331 Valid hostname is expected.
Command:    PASS ***********
Response:   503 Login with USER first.
Error:  Critical error: Could not connect to server

Încercat cu hostname: ftp.telefonievergelijken.nl

Status: Resolving address of ftp.telefonievergelijken.nl
Status: Connecting to 85.214.200.30:21...
Status: Connection established, waiting for welcome message...
Status: Insecure server, it does not support FTP over TLS.
Command:    USER tv_ftp
Response:   331 Valid hostname is expected.
Command:    PASS ***********
Response:   503 Login with USER first.
Error:  Critical error: Could not connect to server

applicationHost.config

<sectionGroup name="system.ftpServer">
    <section name="log" overrideModeDefault="Deny" allowDefinition="AppHostOnly" />
    <section name="firewallSupport" overrideModeDefault="Deny" allowDefinition="AppHostOnly" />
    <section name="caching" overrideModeDefault="Deny" allowDefinition="AppHostOnly" />
    <section name="providerDefinitions" overrideModeDefault="Deny" />
    <sectionGroup name="security">
        <section name="ipSecurity" overrideModeDefault="Deny" />
        <section name="requestFiltering" overrideModeDefault="Deny" />
        <section name="authorization" overrideModeDefault="Deny" />
        <section name="authentication" overrideModeDefault="Deny" />
    </sectionGroup>
    <section name="serverRuntime" overrideModeDefault="Deny" allowDefinition="AppHostOnly" />
</sectionGroup>

<sites>
    <site name="othersite" id="2">
        <application path="/" applicationPool=".NET v4.5">
            <virtualDirectory path="/" physicalPath="E:othersitewwwroot" userName="othersite_web" password="[enc:IISCngProvider:b1dn9+We00KRNWUB6shbPm/hLtBOF2hOG9We5zVgaEmYL5C/fDLxDc3QH9Rnvi79SjeM+Rauk/bQWEBzJnw=:enc]" />
        </application>
        <bindings>
            <binding protocol="http" bindingInformation="*:80:www.othersite.nl" />
            <binding protocol="http" bindingInformation="*:80:othersite.nl" />
        </bindings>
    </site>
    <site name="telefonievergelijken" id="3">
        <application path="/" applicationPool=".NET v4.5">
            <virtualDirectory path="/" physicalPath="E:telefonievergelijkenwwwroot" userName="tv_web" password="[enc:IISCngProvider:x+PhGwZweUwR53tUgGTdEGui8k4gIJRASehxKVtsPoTtxNIA8aRe8WUwvdLuEdzSQicrJVDwen7e/C6x9qfiFyudqtZYwhXuo=:enc]" />
        </application>
        <bindings>
            <binding protocol="http" bindingInformation="*:80:www.telefonievergelijken.nl" />
            <binding protocol="http" bindingInformation="*:80:telefonievergelijken.nl" />
        </bindings>
        <traceFailedRequestsLogging enabled="true" directory="E:IISDataLogFilesFailedReqLogFiles" />
    </site>
    <site name="FTP-othersite" id="1">
        <application path="/">
            <virtualDirectory path="/" physicalPath="E:othersitewwwroot" />
        </application>
        <bindings>
            <binding protocol="ftp" bindingInformation="127.0.0.1:21:" />
        </bindings>
        <ftpServer>
            <security>
                <ssl controlChannelPolicy="SslAllow" dataChannelPolicy="SslAllow" />
                <authentication>
                    <basicAuthentication enabled="true" />
                </authentication>
            </security>
        </ftpServer>
    </site>
    <site name="FTP-TV" id="4">
        <application path="/">
            <virtualDirectory path="/" physicalPath="E:telefonievergelijkenwwwroot" userName="tv_ftp" password="[enc:IISCngProvider:xYxqamuKq02/xUcvZGTdEGui8gh3w6XT0hEegnCMZbVIxeWIOypRIZ1u8UAOG/AJg=:enc]" />
        </application>
        <bindings>
            <binding protocol="ftp" bindingInformation="127.0.0.1:21:www.telefonievergelijken.nl" />
        </bindings>
        <ftpServer>
            <security>
                <ssl controlChannelPolicy="SslAllow" dataChannelPolicy="SslAllow" />
                <authentication>
                    <basicAuthentication enabled="true" />
                </authentication>
            </security>
        </ftpServer>
    </site>
    <siteDefaults>
        <logFile logFormat="W3C" directory="E:IISDataLogFiles" />
        <traceFailedRequestsLogging directory="E:IISDataLogFilesFailedReqLogFiles" />
        <ftpServer>
            <logFile directory="E:IISDataLogFilesFTPLogs" />
            <security>
                <authentication>
                    <basicAuthentication enabled="false" />
                </authentication>
            </security>
        </ftpServer>
    </siteDefaults>
    <applicationDefaults applicationPool="DefaultAppPool" />
    <virtualDirectoryDefaults allowSubDirConfig="true" />
</sites>        

UPDATE 1

Ah, am schimbat adresa IP 127.0.0.0.1 cu adresa IP externă a VPS-ului meu. Când încerc să mă conectez cu ftp.telefonievergelijken.nl|tv_ftp primesc erori de logare:

Error:  Could not connect to server
Status: Waiting to retry...
Status: Resolving address of ftp.telefonievergelijken.nl|tv_ftp
Status: Connection attempt failed with "EAI_NONAME - Neither nodename nor servname provided, or not known".

UPDATE 2

Am schimbat setările username-ului pentru conectare:

Comentarii

  • Nu văd niciun site care să aibă HTTPS activat (Folosind portul 443)? –  > Por Davidw.
  • Nu am HTTPS activat pentru acestea încă (nu am certificat încă), așa că doar prin HTTP este bine, sau spuneți că am configurat ceva greșit? Basicauthentiaction înseamnă doar că ar trebui să fie furnizat un nume de utilizator/parolă și allowssl este doar pentru a indica faptul că, dacă ar fi să accesez prin https, ar trebui să fie posibil (dar nu obligatoriu), corect? –  > Por Flo.
  • în cazul meu, a fost din cauză că am împărțit un nume de gazdă între un site web și un site FTP, odată ce am folosit un nume de gazdă unic pentru site-ul FTP a funcționat. –  > Por Rabolf.
3 răspunsuri
BE77Y

Se pare că încercați să vă conectați la site-ul FTP folosind un nume de gazdă care nu este configurat în prezent în niciuna dintre legăturile cu site-ul FTP din IIS.

Mă bazez doar pe ieșirea de eroare de la Filezilla pe care ai inclus-o, deoarece ai cenzurat numele de gazdă (chiar și sub formă de exemplu) din ieșire, deci nu prea mai am multe informații.

Va trebui să configurați o legătură pe site-ul FTP care să corespundă cu numele de gazdă pe care îl utilizați pentru a vă conecta la site-ul FTP (fie că este vorba de Filezilla sau de orice alt client FTP).

EDIT: Din informațiile actualizate ale mesajului dvs., observ că legăturile pentru site-ul FTP sunt într-adevăr configurate incorect – în prezent, site-ul FTP este legat doar la adresa de buclă localhost (127.0.0.1). Va trebui să îl legați la o adresă care nu este o adresă de buclă, care poate fi direcționată din exterior. În funcție de mediul în care vă aflați, aceasta va fi probabil fie adresa IP externă (dacă este mapată direct pe server), fie o adresă IP internă (dacă ați configurat NAT). Pe baza informațiilor actuale, presupun că trebuie să aveți un alt site FTP configurat, care interceptează aceste cereri și vă afișează eroarea de nume de gazdă invalid. Odată ce configurați corect acest site FTP, totul ar trebui să funcționeze așa cum a fost prevăzut.

În plus, răspunsul lui @Dre este, de asemenea, crucial (așa că ar trebui să îl votați și voi) – dacă aveți mai mult de un site FTP legat la aceeași adresă IP, va trebui să specificați numele de gazdă în câmpul „user” al clientului FTP în format hostname|user

Comentarii

  • Ah, destul de corect! 🙂 Am adăugat mai multe detalii… vă ajută să restrângeți problema? –  > Por Flo.
  • @Flo – ah, da, cu siguranță ajută. Am actualizat răspunsul meu în consecință. –  > Por BE77Y.
  • În regulă, vezi actualizarea mea 1, încă primesc o eroare, deși diferită acum. După câteva căutări pe Google am înțeles că încă mai există o problemă cu numele de gazdă… dar de ce? –  > Por Flo.
  • Am înțeles greșit. Modificat în consecință și adăugat update 2. Încă primesc o eroare la hostname: 530 valid hostname is expected. –  > Por Flo.
  • Se pare că numele de gazdă de pe legătura dvs. începe cu www. dar numele de gazdă la care încerci să te conectezi în clientul tău începe cu ftp. Trebuie să vă conectați la numele de gazdă corect configurat pe legarea site-ului (sau să schimbați legarea site-ului în ftp.) –  > Por BE77Y.
Dre

Atunci când este configurat cu două sau mai multe nume de gazdă, numele de gazdă virtuală și numele de utilizator corecte trebuie să fie ambele trimise în numele de utilizator de către clientul ftp. Separați numele site-ului și utilizatorul cu simbolul liniei verticale: |

www.example.com|MyUser

Deci, în clientul FTP folosiți acest lucru pentru numele de utilizator:

ftp.telefonievergelijken.nl|tv_ftp

Comentarii

  • „When configured this way…” – cum se poate configura ftp-site astfel încât să nu fie nevoie să includ și numele de gazdă în numele de utilizator, în plus față de numele de gazdă? –  > Por simaglei.
  • @simaglei Când este configurat cu două sau mai multe nume de gazdă. Dacă găzduiți doar un singur nume de gazdă, acesta va necesita doar numele de utilizator. –  > Por Dre.
Anthony Horne

Dacă nu găzduiți mai multe gazde pe portul 21 (sau orice alt port pe care îl utilizați), puteți, de asemenea, să eliminați pur și simplu legătura din setările IIS, adică să ștergeți câmpul „Host Name” din „Site Bindings” >> „Edit Site Binding”. Ar trebui să funcționeze ulterior, cu condiția ca app pool-ul dvs. să aibă permisiunile relevante.