اسم مستعار DNS مخصص عبر إعداد وكيل عكسي
في هذه المقالة من قاعدة المعرفة، سنشرح لك كيفية إعداد اسم مستعار DNS مخصص لمثيل ClickHouse Cloud لديك باستخدام وكيل عكسي مثل Nginx للعميل الأصلي لـ ClickHouse.
أنشئ شهادة موقَّعة ذاتيًا
أنشئ شهادة موقَّعة ذاتيًا باستخدام اسم النطاق الذي تختاره.
في هذا المثال، سنستخدم اسم النطاق xyz-customdomain.com وننشئ
شهادة باسم MyCertificate.crt. راجع "إنشاء شهادات SSL"
للمزيد من التفاصيل.
أضف الشهادة إلى /etc/clickhouse-client/config.xml:
<clickhouse>
<openSSL>
<client>
<loadDefaultCAFile>false</loadDefaultCAFile>
<caConfig>/etc/ssl/certs/MyCertificate.crt</caConfig>
<cacheSessions>true</cacheSessions>
<disableProtocols>sslv2,sslv3</disableProtocols>
<preferServerCiphers>true</preferServerCiphers>
<invalidCertificateHandler>
<name>RejectCertificateHandler</name>
</invalidCertificateHandler>
</client>
</openSSL>
</clickhouse>تحديث إعدادات Nginx
أضف ما يلي إلى ملف nginx.conf:
proxy_ssl_name xyz.us-west-2.aws.clickhouse.cloud;
proxy_ssl_server_name on;stream {
upstream stream_backend {
server xyz.us-west-2.aws.clickhouse.cloud:9440;
}
server {
listen 9440 ssl;
proxy_pass stream_backend;
ssl_certificate /etc/ssl/certs/MyCertificate.crt;
ssl_certificate_key /etc/ssl/certs/MyKey.key;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_session_cache shared:SSL:20m;
ssl_session_timeout 4h;
ssl_handshake_timeout 30s;
proxy_ssl on;
proxy_ssl_trusted_certificate /etc/ssl/certs/isrgrootx1.pem;
proxy_ssl_session_reuse on;
proxy_ssl_verify on;
proxy_ssl_name xyz.us-west-2.aws.clickhouse.cloud;
proxy_ssl_server_name on;
}
}حيث إن isrgrootx1.pem هي شهادة الجذر الخاصة بـ ClickHouse Cloud، ويمكنك
تنزيلها من هنا.
حدّث ملف hosts
أضف ما يلي إلى ملف /etc/hosts على خادم Nginx:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost6 localhost6.localdomain6
10.X.Y.Z xyz-customdomain.comحيث إن 10.X.Y.Z هو عنوان IP لخادم Nginx الخاص بك.
الاتصال بـ Cloud باستخدام اسم مستعار
أنت الآن جاهز للاتصال باستخدام الاسم المستعار المخصص:
clickhouse-client --host xyz.customdomain.com --secure --password 'xxxxxxx'
ClickHouse client version 23.12.1.428 (official build).
Connecting to xyz.customdomain.com:9440 as user default.
Connected to ClickHouse server version 23.9.2.
clickhouse-cloud :)