
CVE-2023-51444 के लिए एक्सप्लॉइट जो GeoServer को लक्षित करता है, वेब मैपिंग वातावरण में रिमोट कोड निष्पादन और भेद्यता मूल्यांकन को सक्षम करता है।
यह README आपको GeoServer विकास शुरू करने में मदद करता है। यह आपको स्रोत कोड चेक आउट करने, इसे कंपाइल करने और चलाने की प्रक्रिया में मार्गदर्शन करेगा।
GeoServer विकास के लिए Java 8, Maven और git की आवश्यकता है। Java वर्ग लाइब्रेरियों में सूक्ष्म बदलावों के कारण हम इस समय Java 8 पर विकास की आवश्यकता रखते हैं (हालाँकि परिणाम Java 11 पर परीक्षित किया जाता है)।
आगे पढ़ने के लिए: http://docs.geoserver.org/latest/en/developer/index.html
== Linux ==
अपने Linux वितरण से OpenJDK 8, Maven और git प्राप्त करें।
== macOS ==
Java 8 रनटाइम एनवायरनमेंट डाउनलोड और इंस्टॉल करें, जैसा कि AdoptOpenJDK macOS इंस्टॉलर द्वारा प्रदान किया गया है। https://adoptopenjdk.net
अपने शेल एनवायरनमेंट को अपडेट करें: export JAVA_HOME=/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
सिस्टम /usr/bin/java ऊपर दिए गए JAVA_HOME सेटिंग का उपयोग करता है।
git डाउनलोड और इंस्टॉल करें https://git-scm.com/download/mac
Maven 3 डाउनलोड और इंस्टॉल करें http://maven.apache.org/download.html
== Windows ==
Windows Environment Variables अपडेट करें:
git डाउनलोड और इंस्टॉल करें https://git-scm.com/download/windows
Maven 3 डाउनलोड और इंस्टॉल करें http://maven.apache.org/download.html
== OS स्वतंत्र कार्य ==
स्रोत कोड प्राप्त करें कमांड लाइन पर जाएं और चलाएं: git clone https://github.com/geoserver/geoserver.git
स्रोत कोड बनाएं कमांड लाइन पर जाएं और उस फोल्डर पर नेविगेट करें जिसे आपने अभी चेक आउट किया है। अब चलाएं: cd geoserver cd src mvn clean install
स्थानीय रूप से चलाना cd web/app mvn jetty:run
== समस्या निवारण ==
निर्माण प्रक्रिया कई कारणों से विफल हो सकती है:
अनुपलब्ध निर्भरताएँ - Maven निर्भरताओं को डाउनलोड करने का प्रयास करता है जो सर्वर की ओर अभी उपलब्ध नहीं हो सकती हैं। समाधान: कुछ मिनटों में पुनः प्रयास करें।
विफल परीक्षण - Maven मौजूदा परीक्षणों को स्वचालित रूप से चलाता है। यदि उनमें से कुछ विफल होते हैं, तो निर्माण विफल हो जाता है। समाधान: आप Maven को परीक्षण न चलाने के लिए कह सकते हैं। यह हतोत्साहित किया जाता है। इसके बजाय डेवलपर्स को परेशान करें या परीक्षण को ठीक करें और एक पैच भेजें, धन्यवाद! यदि आप वास्तव में परीक्षण को अक्षम करना चाहते हैं, तो Maven को इस प्रकार चलाएं: mvn -DskipTests=true install