Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lUSyJ-0008Iw-Uh for pgsql-admin@arkaria.postgresql.org; Thu, 08 Apr 2021 11:37:16 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1lUSyI-0001HX-SD for pgsql-admin@arkaria.postgresql.org; Thu, 08 Apr 2021 11:37:14 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lUSyI-0001HQ-1g for pgsql-admin@lists.postgresql.org; Thu, 08 Apr 2021 11:37:14 +0000 Received: from sonic308-17.consmr.mail.ir2.yahoo.com ([77.238.178.145]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1lUSyE-0004sU-Fz for pgsql-admin@postgresql.org; Thu, 08 Apr 2021 11:37:13 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.uk; s=s2048; t=1617881828; bh=DN1Nj8beX+InwjcbXqEGOYahC6hr1L2iXWUPjGUl+a4=; h=Subject:Cc:References:From:Date:In-Reply-To:From:Subject:Reply-To; b=ryq4+KnmUHkQ7wZQ/CAPvsf3z95VjQy2SswJfCqj1CKHYJ4SHSFxi9KWqrPuU9AgLeN6+JUYl+9RGQfskPEGtReh/6bMOujDtDotyWR02Wwuh09TOc2Y7hK4Vw+V4ZE/ON8oaZV7BjTax2U8Fbx9XKB9iUG7jy5ytVv2Z12YGtACDFSVSc3FTERuF9qDvz3PYngabUEncIHMscOns7l4KbEmRz+5PyF5Xt+FdmxaGxPPaL8FUQOinB3nGwWjxGoKl3W/DYE/pXt9JF/7G6g27HeHnarpOpPx1QZuf3EsAkheW7GYUFl61q68JftsQeDay7egK7pA93lbFYmfsG7wOw== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1617881828; bh=F0DmEcB+rhvqUyo0szzf30P6+Qw/bYBpgM9z8LDT5/O=; h=X-Sonic-MF:Subject:From:Date:From:Subject; b=FOxegNMwPLTmCgfXq2Zoh5Wj/XyR41omkd+2c+m78PFyYDbeQ8Dn/8ENz2fTN7iQJXqWDV0hles7uXyv3JiyXzFYWNSzSWKf4nRDyjcyJxJJE/CON28BTLMZRd2RkdI83vLqYOCKiNBN32L8Lq9U17/5ttwYmHeyY0EXLKCFRnj80viBYM6YJWonSABgkdJ1qjbePZge/BvNg2zvsm7FTOxTGjO7bmp4TQNwewlAwy9Eh1ivgbUIWnrKBRCq85k4UuR+DcdQRG0cxC8fOleJumTQznaenW5BxvUV3mZw5HZ6/0egGjILwbjEHnx4SHa1BaT1e7KOAv2eNooUAy/7tA== X-YMail-OSG: 7CTh2fQVM1nIHyD1xmn8gzTJf4QbgcNxohFikL0SsaJpO7mDLUQZ_T4BJhbhMs3 0X5xv5BztHNYEjpdnFvUO9WQgBDb9Ku4YlxsDccWcavlY4Dvx9zpLyItw_hvTmaBS4eQF2DMrTa3 pO6teld6Ivy2ZU2flKaySONbDxGxXzPvASvOuseWAHqndq5Gaukb3YIFac5DeprXmbXFhjffKr6G SE_S4lmrJGVE.tvBz.pcjZujOEg1mpqY1lr_Itu6Sm.yk0hv6lPC2SvCkpMiUFYFLul5RTV.puLx n8.fE5FKl8nvBVM7MvovkyYT4UCehCvqujPtQVjAc1ElSvP8Wg9IUtBqlifs3B7ukdDUEsAZ0W40 vXegq5HuBSwwBhF8ePRdYpCqozYk4zi8ot19VBH4Y7ivWLYSA18lv5NwLmDt8lZRze3N_4kBjIjo rQJ7dX68cSm45M3PlDq5WcRJaYngtWsv8YUzswwEw8ux1L_g21GO6mv.BAqffuj9AypBBSf5AAfl Qt1uoCgEtjnpQHDYb7tSuqSDgOHNe1Y5Axa8Z5dncUO6PRgDrJXpeHU2yQWm1HH5HqO8DvNuz8.U sMq4OlesSTujZzoosxCc4deKypCxFoUeICB7bkKyKdLGx88XS5GamfKzz05SNtS.MLcAmLV.lEIe hbIetDzO1a3DrwAQzBFBOQDsyCkfVhDotj69nBGLx4iD5MtAwkY8hNC4liE4Bw304sNjuJmdEDJu 1cu8Yrx.C55ZWJyVHdY5cEwMo9.igUmMqn4WdFP1Fziirc579wKmwTLUK8fEH5mdLw9q6IKICOK0 37CK3R0z_Cs1nMB_3mK3bUeb25_lhE1wCX4s3Z2v6zRcPigNSidC7CWDYybnA2uZAHxTmQWccgOg oRG8dbDgwbDrP8mxVKI7Ie3aYsbPGQ4fdUj6vl3Ef6VzDAj4PHxhyxs4XzsfiqXpm4XOoY78.FbI KJbGBoSmsM_HkWEWKF8uLT0tRGbmxUKrg.9twKLSHXMJojSJGE.iUKzO377D_Q3OLctpp9smwxBz m7aAjJIUTHgZmo86IFkjFssaL2pBA2CxbgI3Co0W0Yz4Pnj3aRtfSASF9lHJNYCBivza6xmkQ_jm paV73LUMrjqR.._k2Z88TpmXrzLdLqMkGINmlgVqFyHYoIbFM.cA1J8g9MN44yRif2iRCA5tMZ0x NtdpJv40nrkCJIey72ESWQvWgL6RKT.tWhc82Vbns6mYRqleCnQ6xnep2el0WvotERDGhk4Uviq6 T9eTQv3MvulSu_DQsvMEYbvd7zGWIrA0ljCzJ9AmEkhkU8sW.DFY1ErENPsX3v9auof3waD9tgcX o07CyVHrZkDzJ_tvENiOD2mB429m9buOWCsW4udDsc1GtfFA9vhDAjCpVSckE2ZoEZ4Ma2s0snAF OhgJAI3qFmoAsZuaNfmf.DOtGBI4B3vPXkGwxopWn3M_0wPjxVIjjcSTdx0UW9Oh2offqtW8PXiC t0pUimR6EAOb6rofuUeEoyCFs5U7E_Z6MKdAPPWzrqaEoqwjGgumuI9gWDyCFXdmg365QVBhFmd_ 8XnWsKKxTlvGhKO8GeUOFaN81aO3fNJWerZsYIliqXqjOSJyhkPVWF220GH4QmkSo5RG9eycG2Hq bbkxsrZr2U4ZiTNuQy.NbT6nlTqOwYkxpRCjMtC_uFpfeuwfQMhRHrHEDB_2F0Lp5S7rPRdFIOJG 5dujF_Fz3mzebqACcCTeQeZbhs_TvZpAPHimQlEXQJyOaRymoCABfJAl5mHfIjgcHSmP5tNveakI hrob_2MbuNwfbC18DDz_1tNKc5HzX6yHk146PzNXOxi0KEbLOw33MxMjbAOmUrumtdmnKNjFt3O4 EmTW8JbHMhyTL88PRR45oT9FkOxpu2F7OMB..mP3Y5f8FiJ60qLF8Ec_uShozQ3Rrogthmmv7glN swKUCovrPVYYuRSxxbdsdyBOTvNE87QPDnuWsko0RzF1D3uBS7McGsEdy7ty0SdFjCNO.rxOmHW9 6QFFucA4Ba2Dw5X4slJc2Z9kZQAJPNkQ9NLNPiGtDLcGacdg0FDU15lPqNuPHvBr7YnTdVMzXU0G B2aEGbomn7LBypAoCzCvufj4Sh9ATUaYPwwx6embWmCA.xrvQnu4K4IuKZ8n_9LWI7JqzYxXc2CJ kdVQ4E0.HJH4jagzO_39sGSVa_QLbGRdSvTwuo1HRFh0CJfSAcGqqsLcPOlqqF.P_t0dcIXunznB 05n2kZsqqwG.u1z4qgsVB8cL4BqvVql1mpn5uAyTGKxb5lyBxFVACkg3kfbLZ4vddU3aHuI4f7ZQ Zen2duOsW7rHHnjfAJa1XEiEpyrFIa0lqNZy.wVg3P.W.4vUoY_MCe29dkhLQnakowdpRwmtAO5d rLexzzMx1UCdHJt1Jly6WjdVJrnmplh_UO2PHlql4qzD2H7.A.w3Aw4UoOT_9BkJOS4dhGBPYyPj 2N2WfFkPdgnyciM30l.WvFuyj7SdWXoXOZfhGyUq06jwHUoobGzdpQHEEX_uEVetm8po0sOINFsk VEEhe512_LxQdeg91.KUewSC2O1w- X-Sonic-MF: Received: from sonic.gate.mail.ne1.yahoo.com by sonic308.consmr.mail.ir2.yahoo.com with HTTP; Thu, 8 Apr 2021 11:37:08 +0000 Received: by kubenode532.mail-prod1.omega.ir2.yahoo.com (VZM Hermes SMTP Server) with ESMTPA ID 2daa9c825d767a03bf168fef07daad81; Thu, 08 Apr 2021 11:37:06 +0000 (UTC) Subject: Re: Replication & TLS encryption - how? Cc: pgsql-admin@postgresql.org References: <54a5bf2b-0504-02c0-e5a2-ab24173abcdb.ref@yahoo.co.uk> <54a5bf2b-0504-02c0-e5a2-ab24173abcdb@yahoo.co.uk> <1596782.1617813374@sss.pgh.pa.us> <7e89a9be-e788-23fc-6b1b-2ee67586d452@yahoo.co.uk> <84304703ff2131cb3302eaf12b31a235b25a76a6.camel@cybertec.at> From: lejeczek Message-ID: <9d29a3c7-80de-4408-9197-e5ce1dd54a8e@yahoo.co.uk> Date: Thu, 8 Apr 2021 12:37:04 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1 MIME-Version: 1.0 In-Reply-To: <84304703ff2131cb3302eaf12b31a235b25a76a6.camel@cybertec.at> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US X-Mailer: WebService/1.1.18033 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Apache-HttpAsyncClient/4.1.4 (Java/16) Content-Length: 3122 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 08/04/2021 11:27, Laurenz Albe wrote: > On Thu, 2021-04-08 at 09:21 +0100, lejeczek wrote: >> On 08/04/2021 03:59, Laurenz Albe wrote: >>> On Wed, 2021-04-07 at 21:12 +0100, lejeczek wrote: >>>> On 07/04/2021 17:36, Tom Lane wrote: >>>>> lejeczek writes: >>>>>> A novice here thus please go easy on me as I ask this - I >>>>>> see docs/howtos all over the place be those either talk of >>>>>> encryption or replication. I failed to find one which blend >>>>>> these two concepts together - sure it's possible to pgSQL >>>>>> replication encrypted, right? >>>> Thanks. Would you know how '|clientcert=1' fits into the >>>> equation? >>>> With it present in pg_hba.conf pgSQL was not happy saying: >>>> >>>> FATAL: connection requires a valid client certificate. >>> Then include "sslcert" in "primary_conninfo". >>> >>> You can use all the libpq connection parameters: >>> https://www.postgresql.org/docs/current/libpq-connect.html#LIBPQ-PARAMKEYWORDS >> This below is what 'pg_basebackup' generated on the master >> itself, master which already was configured for TLS/certs. >> >> primary_conninfo = 'user=replicator password=''9897'' >> channel_binding=prefer host=10.1.1.224 port=5432 >> sslmode=prefer sslcompression=0 >> ssl_min_protocol_version=TLSv1.2 gssencmode=prefer >> krbsrvname=postgres target_session_attrs=any' >> >> And with master's: >> >> hostssl replication replicator 10.1.1.223/32 md5 >> clientcert=1 > I repeat: add "sslcert" to "primary_conninfo". > Of course you will need a private key that matches the certificate. I get what you were saying but I also wondered - when I showed my "primary_conninfo" & pg_hba: why does replication appear to work without the bits you mention and what is the significance of 'clientcert=1' in all this. > >> I guess my question - as any novice's - would be: is >> replication really 100% encrypted? How to confirm-test it? > Look at the appropriate line in "pg_stat_ssl". master/provider: -[ RECORD 1 ]-+----------------------- pid           | 78705 ssl           | t version       | TLSv1.3 cipher        | TLS_AES_256_GCM_SHA384 bits          | 256 compression   | f client_dn     | client_serial | issuer_dn     | -[ RECORD 2 ]-+----------------------- pid           | 78867 ssl           | f version       | cipher        | bits          | compression   | client_dn     | client_serial | issuer_dn     | standby: -[ RECORD 1 ]-+-------- pid           | 3119249 ssl           | f version       | cipher        | bits          | compression   | client_dn     | client_serial | issuer_dn     | Does that confirm healthy & encrypted replication? many thanks, L. >> Lastly: is there anything more at 'pg_basebackup' stage user >> can do to have 'configs' more ready, more complete for 'full >> encryption' when starting with master already configured >> with TLS? >> I'm on 13.2 version. > No, this always requires manual configuration. > > Yours, > Laurenz Albe