डाइनैमिक ऐक्सेस कुंजियां

Outline में दो तरह की ऐक्सेस कुंजियां उपलब्ध हैं: स्टैटिक और डाइनैमिक. स्टैटिक पासकोड, कनेक्शन की पूरी जानकारी को पासकोड में ही एन्क्रिप्ट करते हैं. वहीं, डाइनैमिक पासकोड, कनेक्शन की जानकारी की जगह को एन्क्रिप्ट करते हैं. इससे, उस जानकारी को रिमोट तौर पर सेव किया जा सकता है और ज़रूरत पड़ने पर उसे बदला जा सकता है. इसका मतलब है कि अपने उपयोगकर्ताओं के लिए नई कुंजियां जनरेट और डिस्ट्रिब्यूट किए बिना, अपने सर्वर कॉन्फ़िगरेशन को अपडेट किया जा सकता है. इस दस्तावेज़ में, डाइनैमिक ऐक्सेस कुंजियों का इस्तेमाल करने का तरीका बताया गया है. इससे, अपने Outline सर्वर को ज़्यादा आसानी से मैनेज किया जा सकता है.

ऐक्सेस की जानकारी देने के लिए, तीन फ़ॉर्मैट उपलब्ध हैं. इनका इस्तेमाल आपकी डाइनैमिक ऐक्सेस कुंजियों के लिए किया जाएगा:

Outline Client का वर्शन 1.8.1 या इसके बाद का वर्शन.

सीधे किसी मौजूदा ss:// लिंक का इस्तेमाल किया जा सकता है. अगर आपको सर्वर, पोर्ट या एन्क्रिप्शन के तरीके को बार-बार बदलने की ज़रूरत नहीं है, लेकिन आपको सर्वर का पता अपडेट करने की सुविधा चाहिए, तो यह तरीका सबसे सही है.

उदाहरण:

ss://Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTpleGFtcGxl@outline-server.example.com:8388/?outline=1

JSON ऑब्जेक्ट का इस्तेमाल करना

Outline Client v1.8.0 और उसके बाद के वर्शन.

इस तरीके से, उपयोगकर्ताओं के आउटलाइन कनेक्शन के सभी पहलुओं को मैनेज करने में ज़्यादा आसानी होती है. इस तरीके से, सर्वर, पोर्ट, पासवर्ड, और एन्क्रिप्शन का तरीका अपडेट किया जा सकता है.

उदाहरण:

{
  "server": "outline-server.example.com",
  "server_port": 8388,
  "password": "example",
  "method": "chacha20-ietf-poly1305"
}
  • server: आपके वीपीएन सर्वर का डोमेन या आईपी पता.
  • server_port: वह पोर्ट नंबर जिस पर आपका वीपीएन सर्वर चल रहा है.
  • password: वीपीएन से कनेक्ट करने के लिए ज़रूरी पासवर्ड.
  • method: वीपीएन का इस्तेमाल करके, डेटा को एन्क्रिप्ट (सुरक्षित) करने का तरीका. Shadowsocks के साथ काम करने वाले AEAD ciphers देखें

YAML ऑब्जेक्ट का इस्तेमाल करना

Outline Client का वर्शन 1.15.0 या इसके बाद का वर्शन.

यह तरीका, JSON के पिछले तरीके से मिलता-जुलता है. हालांकि, Outline के बेहतर कॉन्फ़िगरेशन फ़ॉर्मैट का फ़ायदा उठाकर, इसमें ज़्यादा सुविधाएं जोड़ी गई हैं. आपके पास, सर्वर, पोर्ट, पासवर्ड, एन्क्रिप्शन का तरीका वगैरह को अपडेट करने का विकल्प होता है.

उदाहरण:

transport:
  $type: tcpudp
  tcp:
    $type: shadowsocks
    endpoint: outline-server.example.com:8388
    cipher: chacha20-ietf-poly1305
    secret: example
  udp:
    $type: shadowsocks
    endpoint: outline-server.example.com:8388
    cipher: chacha20-ietf-poly1305
    secret: example
  • transport: इस फ़ील्ड में, इस्तेमाल किए जाने वाले ट्रांसपोर्ट प्रोटोकॉल (इस मामले में, TCP और UDP) के बारे में बताया जाता है.
  • tcp/udp: हर प्रोटोकॉल के लिए कॉन्फ़िगरेशन की जानकारी देता है.
    • $type: यह कॉन्फ़िगरेशन के टाइप के बारे में बताता है. यहां यह shadowsocks है.
    • एंडपॉइंट: आपके वीपीएन सर्वर का डोमेन या आईपी पता और पोर्ट.
    • secret: वीपीएन से कनेक्ट करने के लिए ज़रूरी पासवर्ड.
    • cipher: वीपीएन का इस्तेमाल किया जाने वाला एन्क्रिप्शन (सुरक्षित) तरीका. Shadowsocks के साथ काम करने वाले AEAD सिफर देखें.

अपने Outline सर्वर का ऐक्सेस कॉन्फ़िगर करने के सभी तरीकों के बारे में जानने के लिए, ऐक्सेस कुंजी का कॉन्फ़िगरेशन देखें. इन तरीकों में, ट्रांसपोर्ट, एंडपॉइंट, डायलर, और पैकेट सुनने वाले शामिल हैं.

स्टैटिक पासकोड से ऐक्सेस की जानकारी निकालना

अगर आपके पास कोई मौजूदा स्टैटिक ऐक्सेस पासकोड है, तो उससे जानकारी निकालकर JSON या YAML पर आधारित डाइनैमिक ऐक्सेस पासकोड बनाया जा सकता है. स्टैटिक ऐक्सेस कुंजियां इस पैटर्न के मुताबिक होती हैं:

SS-URI = "ss://" userinfo "@" hostname ":" port [ "/" ] [ "#" tag ]
userinfo = websafe-base64-encode-utf8(method  ":" password)
           method ":" password

उदाहरण:

ss://Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTpleGFtcGxl@outline-server.example.com:8388/?outline=1
  • सर्वर: outline-server.example.com
  • सर्वर पोर्ट: 8388
  • उपयोगकर्ता की जानकारी: Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTpleGFtcGxl Google Admin टूलबॉक्स के Encode/Decode जैसे टूल का इस्तेमाल करके, base64 के तौर पर डिकोड किया गया

    • तरीका: chacha20-ietf-poly1305
    • पासवर्ड: example

होस्टिंग प्लैटफ़ॉर्म चुनना

डाइनैमिक ऐक्सेस कुंजियां बनाने का तरीका जानने के बाद, अपने ऐक्सेस कुंजी कॉन्फ़िगरेशन के लिए, सही होस्टिंग प्लैटफ़ॉर्म चुनना ज़रूरी है. यह फ़ैसला लेते समय, प्लैटफ़ॉर्म की भरोसेमंदता, सुरक्षा, इस्तेमाल में आसानी, और सेंसरशिप के ख़िलाफ़ होने जैसी बातों का ध्यान रखें. क्या प्लैटफ़ॉर्म, डाउनटाइम के बिना आपकी ऐक्सेस कुंजी की जानकारी लगातार उपलब्ध कराएगा? क्या यह आपके कॉन्फ़िगरेशन को सुरक्षित रखने के लिए, ज़रूरी सुरक्षा उपाय उपलब्ध कराता है? प्लैटफ़ॉर्म पर, ऐक्सेस की अहम जानकारी को मैनेज करना कितना आसान है? क्या इस प्लैटफ़ॉर्म को उन इलाकों में ऐक्सेस किया जा सकता है जहां इंटरनेट पर पाबंदी है?

अगर किसी स्थिति में जानकारी के ऐक्सेस पर पाबंदी लगाई जा सकती है, तो Google Drive, pad.riseup.net, Amazon S3 (पाथ-स्टाइल ऐक्सेस के साथ), Netlify या GitHub के गुप्त gists जैसे ऐसे प्लैटफ़ॉर्म पर होस्ट करने पर विचार करें जिन पर सेंसरशिप नहीं की जाती. डिप्लॉयमेंट की ज़रूरतों का आकलन करें और ऐसा प्लैटफ़ॉर्म चुनें जो ऐक्सेस और सुरक्षा से जुड़ी आपकी ज़रूरतों के मुताबिक हो.