Skip to main content
Back to blog

SEO गाइड चरण ७: सुरक्षा — २०२६ मा गूगलको अपेक्षाहरू

·12 min read·by LANGR SEO

SEO गाइड चरण ७: सुरक्षा

यो १३-चरण SEO गाइड को चरण ७ हो। सुरक्षा केवल प्रयोगकर्ताहरूलाई संरक्षण गर्न मात्र होइन — यसले तिम्रो खोज रैंकिङमा प्रत्यक्ष प्रभाव पार्छ। गूगलले २०१४ देखि HTTPS लाई रैंकिङ संकेतको रूपमा प्रयोग गर्दै आएको छ, र अपेक्षाहरू मात्र बढेका छन्।


धेरै साइट मालिकहरू सुरक्षा लाई दुई विकल्पमा सोच्दछन्: "हामीसँग SSL छ, त्यसैले हामी सुरक्षित छौं।" वास्तविकता भनेको, गूगलले दर्जनौ सुरक्षा संकेतहरूको मूल्याङ्कन गर्दछ। उचित सुरक्षा हेडर, मान्य प्रमाणपत्रहरू र मिक्स्ड सामग्री बिना भएका साइटहरूले केवल आधारभूत SSL प्रमाणपत्र भएका साइटहरू भन्दा राम्रो रैंकिङ पाउँछन् — सबै कुरा समान हुँदा।

सकारात्मक कुरा: अधिकांश सुरक्षा सुधारहरू एक पटकको कन्फिगरेसन हुन्। तिनीहरूलाई एकपटक सेट गर्नुहोस्, र तिनीहरूले सदाहरूका लागि तिम्रो रैंकिङको रक्षा गर्छन्।

SSL कन्फिगरेसन

SSL (प्राविधिक रूपमा TLS) तिम्रो सर्वर र आगन्तुकहरू बीचको जडानलाई इनक्रिप्ट गर्दछ। २०१४ देखि, गूगलले HTTPS लाई रैंकिङ संकेतको रूपमा स्पष्ट रूपमा पुष्टि गरेको छ। २०२६ मा, HTTPS नहुनु केवल रैंकिङको समस्या मात्र होइन — Chromeले HTTP साइटहरूलाई ठेगाना पट्टीमा "सुरक्षित छैन" भनेर चिन्हित गर्दछ, जसले प्रयोगकर्ताको विश्वासलाई ध्वस्त गर्छ।

सही SSL का लागि आवश्यकताहरू:

| आवश्यकताहरू | किन | जाँच कसरी गर्ने | |-------------|-----|--------------| | मान्य प्रमाणपत्र | म्याद समाप्त = ब्राउजर चेतावनी = प्रयोगकर्ताहरू फर्किन्छन् | म्याद समाप्त हुने मिति जाँच गर्नुहोस् | | पूर्ण चेन | अधुरो चेन केही उपकरणहरूमा असफल हुन्छ | SSL Labs परीक्षण | | TLS 1.2+ | पुरानो संस्करणहरूमा ज्ञात कमजोरिहरू छन् | SSL Labs परीक्षण | | SHA-1 छैन | म्याद पार गरिसकेको, ब्राउजरहरूले अस्वीकृत गर्छ | प्रमाणपत्रका विवरणहरू | | SAN कभरेज | www र non-www दुवैले कभर गर्नुपर्छ | प्रमाणपत्रका विवरणहरू | | स्वचालित नवीकरण | म्याद समाप्त हुने दुर्घटनाहरूबाट बचाउँछ | Let's Encrypt / प्रदायक कन्फिगर |

SSL स्कोरिङ:

१००% = मान्य सर्ट + पूर्ण चेन + TLS 1.3 + बलियो सिफर + स्वचालित नवीकरण
  ०% = समाप्त वा हराएको प्रमाणपत्र

सामान्य SSL गल्तीहरू:

  1. प्रमाणपत्र बिना सूचना समाप्त हुन्छ — सबैभन्दा कममा समाप्त हुने मितिबाट ३० दिन अघि निगरानी सेट गर्नुहोस् (चरण ६)
  2. अधुरो प्रमाणपत्र चेन — सर्वरले केवल पत्तासहित मध्यवर्ती प्रमाणपत्रहरू पठाउनुपर्छ
  3. मिक्स्ड सामग्री — HTTPS पृष्ठले HTTP स्रोतहरू लोड गर्दछ (तस्बिरहरू, स्क्रिप्टहरू, शैलीपत्रहरू)
  4. रिडाइरेक्ट लूपहरू — HTTP → HTTPS → HTTP चक्रहरू गलत CDN/प्रोक्सीले कारण बनाइन्छ
  5. Non-www बनाम www असंगति — प्रमाणपत्रले एकलाई कभर गर्छ तर अर्कोमा होइन

छिटो जित: आफ्नो डोमेनलाई SSL Labs (ssllabs.com/ssltest) मार्फत चलाउनुहोस्। "A" श्रेणी मुनि केहि पनि कार्ययोग्य समस्याहरू छन्। अधिकांश होस्टिंग प्रदायकहरूले यो एक क्लिकमा समाधान गर्छन्।

सुरक्षा हेडर

सुरक्षा हेडरहरू HTTP प्रतिक्रिया हेडर हुन् जसले ब्राउजरहरूलाई तिम्रो साइट लोड गर्दा कसरि व्यवहार गर्न निर्देशन दिन्छ। तिनीहरूले सम्पूर्ण श्रेणीका आक्रमणहरू रोक्छन् — र गूगलका क्रॉलरले तिनीहरूको जाँच गर्छन्।

आवश्यक सुरक्षा हेडरहरू:

सामग्री-सुरक्षा-नीति (CSP)

CSP सबैभन्दा शक्तिशाली सुरक्षा हेडर हो। यसले ब्राउजरहरूलाई स्पष्ट रूपमा बताउँछ कि कुन स्रोतहरू (स्क्रिप्टहरू, शैलीहरू, तस्बिरहरू, फन्टहरू) तिम्रा पृष्ठहरूमा लोड गर्न अनुमति छ।

Content-Security-Policy: default-src 'self'; script-src 'self' https://cdn.example.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self' https://fonts.gstatic.com; connect-src 'self' https://api.example.com; frame-ancestors 'none';

CSP के रोक्दछ:

  • क्रस-साइट स्क्रिप्टिङ (XSS) आक्रमणहरू
  • डेटा इन्जेक्सन आक्रमणहरू
  • क्लिकज्याकिङ (वाचाबाट frame-ancestors)
  • अनधिकृत स्क्रिप्ट कार्यान्वयन (क्रिप्टोमाइनरहरू, विज्ञापन इन्जेक्टरहरू)

CSP कार्यान्वयन रणनीति:

  1. Content-Security-Policy-Report-Only बाट सुरु गर्नुहोस् (ब्लक नगरी उल्लंघनलाई रेकर्ड गर्दछ)
  2. १-२ हप्ता रिपोर्टहरूको निगरानी गर्नुहोस्
  3. वैध स्रोतहरू सफ्टवेरका लागि श्वेतसूची गर्नुहोस्
  4. लागू गर्ने मोडमा स्विच गर्नुहोस्
  5. निरन्तर उल्लंघन रेकर्डका लागि report-uri वा report-to थप्नुहोस्

X-फ्रेम-विकल्पहरू

तिम्रो साइटलाई अन्य डोमेनहरूमा iframe मा समावेश गर्नबाट रोक्दछ (क्लिकज्याकिङको रक्षा)।

X-Frame-Options: DENY

वा यदि तिमीलाई समान-उत्पत्ति फ्रेमिङलाई अनुमति दिनु आवश्यक छ भने:

X-Frame-Options: SAMEORIGIN

X-Content-Type-Options

ब्राउजरहरूले MIME-प्रकारको नास्निफिङबाट रोक्दछ (फाइलहरूलाई घोषणा गरिएको भन्दा भिन्न प्रकारको रूपमा व्याख्या गर्ने)।

X-Content-Type-Options: nosniff

यो एक लाइनले .jpg फाइलमा लुकाइएको JavaScript व्याख्या गरिरहेमा आक्रमणहरू रोक्दछ।

Referrer-Policy

प्रयोगकर्ताहरू तिम्रा साइटबाट लिङ्क क्लिक गर्दा कति धेरै रेफरर जानकारी पठाइन्छ भनेर नियन्त्रण गर्दछ।

Referrer-Policy: strict-origin-when-cross-origin

यसले समान-उत्पत्ति अनुरोधहरूका लागि पूर्ण URL पठाउँछ तर क्रस-उत्पत्ति अनुरोधहरूका लागि केवल उत्पत्ति (डोमेन) पठाउँछ। विश्लेषणका आवश्यकताहरूको सन्तुलनमा गोपनीयता।

Permissions-Policy

तिम्रो साइटमा कुन ब्राउजर सुविधाहरू (क्यामेरा, माइक्रोफोन, भौगोलिक स्थिति, आदि) प्रयोग गर्न सकिन्छ भनेर नियन्त्रण गर्दछ।

Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=()

तिमीले नगर्ने सुविधाहरूलाई निष्क्रिय गर्नु तेस्रो पक्षका स्क्रिप्टहरूलाई तिनीहरूको दुरूपयोग गर्नबाट रोक्दछ।

हेडर कार्यान्वयनको उदाहरण (Next.js):

// next.config.js
module.exports = {
  async headers() {
    return [{
      source: '/(.*)',
      headers: [
        { key: 'X-Content-Type-Options', value: 'nosniff' },
        { key: 'X-Frame-Options', value: 'SAMEORIGIN' },
        { key: 'Referrer-Policy', value: 'strict-origin-when-cross-origin' },
        { key: 'Permissions-Policy', value: 'camera=(), microphone=(), geolocation=()' },
        { key: 'Strict-Transport-Security', value: 'max-age=31536000; includeSubDomains; preload' },
      ]
    }]
  }
}

हेडर कार्यान्वयन (Apache .htaccess):

Header always set X-Content-Type-Options "nosniff"
Header always set X-Frame-Options "SAMEORIGIN"
Header always set Referrer-Policy "strict-origin-when-cross-origin"
Header always set Permissions-Policy "camera=(), microphone=(), geolocation=()"
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"

हेडर कार्यान्वयन (Nginx):

add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;

छिटो जित: माथिका ५ हेडरहरूलाई आफ्नो सर्वर कन्फिगरेसनमा थप्नुहोस्। यसले ५ मिनेट लिन्छ र कुनै पनि स्क्यान उपकरणमा तुरुन्तै सुरक्षा स्थितिमा सुधार ल्याउँछ।

HSTS प्रीलोड

HTTP स्ट्रिक्ट ट्रान्सपोर्ट सेक्युरिटी (HSTS)ले ब्राउजरहरूलाई तिम्रो डोमेनको लागि सधैं HTTPS प्रयोग गर्न भनेको छ — पहिलो अनुरोध अघि नै। HSTS बिना, तिम्रो साइटमा पहिलो भ्रमणले HTTP (अवरोधको जोखिममा) प्रयोग गर्ने सम्भावना रहन्छ भन्दा कि HTTPSमा रिडाइरेक्ट हुन्छ।

HSTS हेडर:

Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

तीन निर्देशनहरू:

| निर्देशन | अर्थ | |-----------|---------| | max-age=31536000 | यसलाई १ वर्षका लागि याद गर्नुहोस् (सेकेन्डमा) | | includeSubDomains | सबै उपडोमेनहरूमा पनि लागू हुन्छ | | preload | ब्राउजर प्रीलोड सूचीमा समावेश गर्नको लागि अनुरोध गर्नुहोस् |

HSTS प्रीलोड सूची:

अत्यन्त HSTS सुरक्षा। ब्राउजरहरूले सधैं HTTPS प्रयोग गर्नुपर्ने डोमेनहरूको पूर्वनिर्धारित सूचीसहित आउँदछन्। तिम्रो डोमेनलाई hstspreload.org मा पेश गर्दा:

  • पहिलो पटकका आगन्तुकहरूले तुरुन्तै HTTPS पाउँछन् ( कुनै HTTP → HTTPS रिडाइरेक्ट छैन)
  • आक्रमणकर्ताहरूले जडानहरूको स्तर घटाउन असम्भव हुन्छ
  • स्थायी (एकपटक पेश गरिसकेपछि हटाउन गाह्रो)

HSTS प्रीलोडका लागि आवश्यकताहरू:

  1. मान्य HTTPS प्रमाणपत्र
  2. सबै HTTP लाई HTTPS तर्फ रिडाइरेक्ट गर्नुहोस् (उपडोमेनहरू सहित)
  3. HSTS हेडर जसमा max-age >= 31536000
  4. HSTS हेडरमा includeSubDomains समावेश गर्नुहोस्
  5. HSTS हेडरमा preload समावेश गर्नुहोस्
  6. सबै उपडोमेनहरूले HTTPS लाई समर्थन गर्नु पर्छ

सावधानी: केवल प्रीलोडमा पेश गर्नुहोस् यदि तिम्रा सबै उपडोमेनहरू HTTPS लाई समर्थन गर्दछन्। includeSubDomains निर्देशनले कुनै HTTP- मात्र उपडोमेन पहुँच नहुने बनाउँछ।

छिटो जित: यदि तिमीसँग सबै उपडोमेनहरूमा पहिलेको HTTPS छ भने, पूरा HSTS हेडर थप्नुहोस् र hstspreload.org मा पेश गर्नुहोस्। प्रोसेसिङले केही हप्ता लाग्छ तर सुरक्षा स्थायी हुन्छ।

कमजोरिहरूको स्क्यानिंग

स्वचालित कमजोरिहरूको स्क्यानिङले तिम्रो स्ट्याकमा ज्ञात सुरक्षा समस्याहरूलाई पहिचान गर्छ जसलाई आक्रमणकर्ताहरूले समृद्ध गरिन्छ।

कमजोरी स्क्यानिङले के जाँच गर्छ:

  • पुरानो सफ्टवेयर: WordPress, प्लगइनहरू, JavaScript पुस्तकालयहरू जसमा ज्ञात CVEs छन्
  • उदघाटन फाइलहरू: .env, .git, wp-config.php, डेटाबेस डंपहरू
  • जानकारीको छन्: सर्वर संस्करण हेडरहरू, डिबग मोड, स्ट्याक ट्रेस
  • डिफल्ट प्रमाणपत्रहरू: प्रमाणिकरण बिना एडमिन पृष्ठहरू, डिफल्ट पासवर्डहरू
  • खुल्ला पोर्टहरू/सेवाहरू: अनावश्यक सेवाहरू जसले इन्टरनेटमा ज्ञात छन्
  • इन्जेक्सन पोइन्टहरू: CSRF सुरक्षा बिनाका फर्महरू, मान्य नगरी इनपुटहरू

प्लेटफर्म अनुसार सामान्य कमजोरिहरू:

| प्लेटफर्म | शीर्ष कमजोरी | समाधान | |----------|-------------------|-----| | WordPress | पुराना प्लगइनहरू | स्वचालित अद्यावधिक + WAF | | Shopify | तेस्रो-पक्ष अनुप्रयोग अनुमति | त्रैमासिक अनुप्रयोग सूचीको अडिट | | Next.js | उजागर API मार्गहरू | प्रमाणिकरण मध्यवर्ती + दर सीमित गर्दै | | स्थिर साइटहरू | CDN गलत कन्फिगरेसन | क्यास नियमहरू समीक्षा गर्नुहोस् | | कस्टम | SQL इन्जेक्सन | प्यारामिटराइज गरिएको प्रश्नहरू |

स्क्यानिंग आवृत्ति:

  • दैनिक: स्वचालित सतह स्क्यान (SSL, हेडर, उजागर फाइलहरू)
  • साप्ताहिक: निर्भरता कमजोरिहरू जाँच (npm audit, WordPress प्लगइन स्क्यानर)
  • महिनामा: प्रमाणिकरण परीक्षणको साथ गहिरो स्क्यान
  • प्रत्येक तैनाती पछि: पुनरावृत्ति जाँच

छिटो जित: npm audit (Node.js) चलाउनुहोस् वा तिम्रो CMS प्लगइन सूचीमा पुराना घटकहरूको लागि जाँच गर्नुहोस्। तत्काल महत्त्वपूर्ण/उच्च गम्भीरता समस्याहरू समाधान गर्नुहोस्।

मिक्स्ड सामग्री

मिक्स्ड सामग्री तब हुन्छ जब HTTPS पृष्ठले HTTP मार्फत स्रोतहरू (तस्बिरहरू, स्क्रिप्टहरू, स्टाइलशीटहरू, iframes) लोड गर्छ। यसले इनक्रिप्शनलाई आंशिक रूपमा तोड्छ र ब्राउजर चेतावनीहरू ट्रिगर गर्दछ।

मिक्स्ड सामग्रीका प्रकारहरू:

| प्रकार | गम्भीरता | उदाहरण | ब्राउजर व्यवहार | |------|----------|---------|------------------| | सक्रिय | उच्च | HTTP स्क्रिप्ट, iframe, CSS | डिफल्ट रूपमा अवरोधित | | निष्क्रिय | मध्यम | HTTP तस्बिर, भिडियो, ऑडियो | चेतावनीसहित लोड तपाईंको |

सक्रिय मिक्स्ड सामग्री आधुनिक ब्राउजरले अवरोधित गर्छ — यसको अर्थ तपाईंका स्क्रिप्ट र शैलीहरू सिमै लोड हुँदैन। निष्क्रिय मिक्स्ड सामग्री लोड हुन्छ तर सुरक्षा चेतावनीहरू देखाउँछ।

मिक्स्ड सामग्री फेला पार्न:

  1. Chrome DevTools खोल्नुहोस् → कन्सोल
  2. "मिक्स्ड सामग्री" चेतावनीहरूको लागि हेर्नुहोस्
  3. वैकल्पिक रूपमा, एक क्रॉलर (Screaming Frog, LANGR) संग स्क्यान गर्नुहोस्

सामान्य मिक्स्ड सामग्री स्रोतहरू:

  • सामग्रीमा हार्डकोड गरिएको http:// URL (ब्लग पोष्टहरू, उत्पादन विवरणहरू)
  • तेस्रो पक्षका विजेटहरू जसले HTTP स्रोतहरू लोड गर्छ
  • एम्बेड गरिएका सामग्री (YouTube पुराना एम्बेडहरू, सामाजिक मीडिया विजेटहरू)
  • CSS background-image HTTP URL द्वारा लोड गरिएको
  • फन्टहरू HTTP मार्फत लोड गरिएका

मिक्स्ड सामग्री समाधान गर्नु:

<!-- खराब -->
<img src="http://example.com/image.jpg" />

<!-- राम्रो -->
<img src="https://example.com/image.jpg" />

<!-- सबैभन्दा राम्रो (प्रोटोकल-सम्बन्धित, पृष्ठ प्रोटोकलमा अनुकूलित हुन्छ) -->
<img src="//example.com/image.jpg" />

डाटाबेस समाधान (WordPress):

UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://yourdomain.com', 'https://yourdomain.com');
UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'http://yourdomain.com', 'https://yourdomain.com');

छिटो जित: आफ्नो गृहपृष्ठ Chrome मा खोल्नुहोस्, F12 थिच्नुहोस्, कन्सोल ट्याबमा मिक्स्ड सामग्री चेतावनीहरूको लागि जाँच गर्नुहोस्। जुनसुकै देखें त्यसलाई समाधान गर्नुहोस् — यी गूगललाई सिधै देखापर्छ।

तेस्रो-पक्ष स्क्रिप्टको जोखिमहरू

तिमीले लोड गर्ने प्रत्येक बाह्य स्क्रिप्ट एक संभावित सुरक्षा (र प्रदर्शन) जिम्मेवारी हो। तेस्रो-पक्ष स्क्रिप्टहरूले निम्न कार्यहरू गर्न सक्छन्:

  • प्रभावित हुन सक्छ (सप्लाई चेन आक्रमण)
  • तिम्रा प्रयोगकर्ताहरूलाई स्वीकृति बिना ट्र्याक गर्न सक्छ (GDPR उल्लङ्घन)
  • तिम्रो साइटलाई ढिलो बनाउन सक्छ (रेंडर-ब्लकिङ, नेटवर्क ढिलाइ)
  • कार्यक्षमता तोड्न सक्छ (संस्करण अद्यावधिक, बाघ)
  • अनावश्यक सामग्री इन्जेक्ट गर्न सक्छ (गलत भएको विज्ञापन स्क्रिप्ट)

तिम्रा तेस्रो-पक्ष स्क्रिप्टहरूको अडिट गर्नुहोस्:

| स्क्रिप्ट | आवश्यक? | जोखिम स्तर | विकल्प | |--------|-----------|------------|-------------| | Google Analytics | प्रायः हो | कम | सर्भर-साइड ट्र्याकिङ | | च्याट विजेटहरू | शायद | मध्यम | आत्म-होस्टेड समाधानहरू | | सामाजिक शेयर बटनहरू | ठूलो चाँडै | मध्यम | स्थिर शेयर लिङ्कहरू | | A/B परीक्षण | कहिलेकाहीं | उच्च | सर्वर-साइड परीक्षण | | रिटार्गेटिङ पिक्सेलहरू | व्यवसाय निर्णय | उच्च | पहिलो पक्षका डेटा | | फन्ट CDN | सुविधाजनक | कम | आत्म-होस्ट फन्टहरू |

आवश्यक तेस्रो-पक्ष स्क्रिप्टहरूको जोखिम कम गर्नु:

  1. सबस्रोत इमानदारी (SRI): ह्यास सत्यापनले हानिकारक स्क्रिप्टहरू लोड हुनबाट रोक्दछ
<script src="https://cdn.example.com/lib.js"
        integrity="sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxAE+sO0..."
        crossorigin="anonymous"></script>
  1. CSP प्रतिबन्धहरू: केवल ज्ञात डोमेनहरूबाट स्क्रिप्टहरूलाई अनुमति दिनुहोस्
  2. स्यान्डबक्स गरिएको iframes: तेस्रो-पक्ष विजेटहरूलाई पृथक गर्नुहोस्
  3. नियमित अडिटहरू: त्रैमासिक सबै बाह्य स्रोतहरूको समीक्षा
  4. निगरानी: तिम्रा पृष्ठहरूमा नयाँ बाह्य डोमेनहरू देखिएमा अलर्ट गर्नुहोस्

छिटो जित: तिम्रो HTML मा रहेका प्रत्येक