Jump to content

Recommended Posts

Posted

Since a lot of people got problems with account panels and hosting company that doesn't support mssql connection i've made a AP Gateway and Account Panel that should work everywhere.

How it works:

Account Panel got 3 basic functions:

- DBCreateAccount - creates account

- DBChangePassword - changes password for specified account

- DBResetPassword - resets password for specified account and sends it to player's email box

Above functions uses tcp/ip protocol to connect to AP Gateway - that's why no additional library is required at hosting side. The AP Gateway (made in C# uses .Net Framework 4.0) have be run in windows box - can be run in same machine as MS SQL Server, it connects to sql server and handles Account Panel's requests.

 

How to configure:

1. Download and unpack AccountPanel.7z then open and edit config.php:

<?php
$serverName="L2Service";  //Change it to your server name
$serverUrl="http://www.l2service.com"; //Change it to your server's website url
$dbHost = "127.0.0.1";  //APGateway IP - ip of the machine where AP Gateway will be hosted
$dbPort = 1224; //APGateway Port
$captchaType=1; //Captcha Type 1 - Slide , 0 - Text - anti bot system

?>

2. Upload Account Panel to your web host.

3. Create new login in MSSQL for APGateway (it needs read/writie/connect access to lin2db database).

4. Download and unpack APGateway.7z then open and configure APGateway.exe.config in some text editor (ex Notepad2):

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
        <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
            <section name="APGateway.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
        </sectionGroup>
    </configSections>
    <applicationSettings>
        <APGateway.Properties.Settings>
            <setting name="DbUser" serializeAs="String">
                <value>sa</value>
            </setting>
            <setting name="DbPassword" serializeAs="String">
                <value>123456</value>
            </setting>
            <setting name="DbServer" serializeAs="String">
                <value>(local)\SQLEXPRESS</value>
            </setting>
            <setting name="BannedIpList" serializeAs="String">
                <value>192.168.15.44;120.33.234.11</value>
            </setting>
            <setting name="BanDuration" serializeAs="String">
                <value>300</value>
            </setting>
            <setting name="SafeIpList" serializeAs="String">
                <value>127.0.0.1</value>
            </setting>
            <setting name="ConnectionPerSecond" serializeAs="String">
                <value>10</value>
            </setting>
            <setting name="AcceptSocketDelay" serializeAs="String">
                <value>10</value>
            </setting>
            <setting name="DBTrustedConnection" serializeAs="String">
                <value>False</value>
            </setting>
            <setting name="DBTimeout" serializeAs="String">
                <value>30</value>
            </setting>
            <setting name="SMTPServer" serializeAs="String">
                <value>smtp.gmail.com</value>
            </setting>
            <setting name="SMTPPort" serializeAs="String">
                <value>587</value>
            </setting>
            <setting name="SMTPUseSSL" serializeAs="String">
                <value>True</value>
            </setting>
            <setting name="SMTPLogin" serializeAs="String">
                <value>yourSmtpLogin</value>
            </setting>
            <setting name="SMTPPassword" serializeAs="String">
                <value>yourSmtpPassword</value>
            </setting>
            <setting name="EmailAddress" serializeAs="String">
                <value>support@l2service.com</value>
            </setting>
            <setting name="ServerName" serializeAs="String">
                <value>L2Service</value>
            </setting>
        </APGateway.Properties.Settings>
    </applicationSettings>
</configuration>

 

- DbUser - replace sa with your new login

- DbPassword - repalce 123456 with password for your new login

- DbServer - replace (local)\SQLEXPRESS with your sql server instance

- SafeIpList - add your web host's ip there (separated with ';' )

SMTP server is used to send new passwords to player's email box (Reset Password option)

- SMTPServer - replace smtp.gmail.com with your smtp server

- SMTPPort - replace 587 with your smtp server port

- SMTPLogin - replace yourSmtpLogin with login to your email account

- SMTPPassword - replace yourSmtpPassword with password for your email account

- EmailAddress - replace support@l2service.com with your email address

- ServerName - replace L2Service with your server name

5. Upload APGateway to your server machine and open port 1224 TCP in Firewall (dont forget to add rule that only your web server ip can connect)

6. Open update.sql from AccountPanel.7z and run this query in MSSQL Management Studio - it will add email field to user_account table.

7. Run APGateway and have fun with working account panel.

 

Required files:

AccountPanel.7z

APGateway.7z

.NET Framework 4.0 (Web Installer)

 

Feel free to edit above files as you like to, just don't sell them.

 

Regards

  • 3 weeks later...
  • 9 months later...
  • 2 weeks later...
Posted

If you shared this tool because many have problems with hosters that don't support mssql .

Why you dont release the source code of ApGateway so the users can compile - look on the code and trust this server executable?

Posted

Think that most of the people here, don't have any codding knowledge, so even if they will have the source, they won't have any idea how to use it or work with it.

 

Use it and then cry for being hacked.

I think Vanganth knows what he is doing.

Posted

Think that most of the people here, don't have any codding knowledge, so even if they will have the source, they won't have any idea how to use it or work with it.

I think Vanganth knows what he is doing.

Correct, but this panel is vulnerable if its used by default settings.

A minor tweak can be a of great use tho.

Posted

Correct, but this panel is vulnerable if its used by default settings.

A minor tweak can be a of great use tho.

By default settings you mean port ? lol

Posted

By default settings you mean port ? lol

Using it on default port is simply vulnerable and it was proven already.

Its simple to change it tho :)

  • 1 month later...
  • 3 years later...
  • 4 months later...
Guest
This topic is now closed to further replies.


  • Posts

    • You can walk to the near windows, open and jump from it befor you tell me to shut up. I don't give a fuck about NCsfot but I am not a delusional I know what is legal and what is not. If NCSoft knocks on the door all of this will be close more fast than light. And yes sure lineage 2 still alive because random ppl is making emulations and custom on his work not becasue of the korean player that actual play the game and give money to them ofc I don't know you but for sure I will not start a conversation saying to put things on the ass and shut up grow up littel man 
    • SSAO was in the game but was removed due to performance. I will revisit it. We have god rays and volumetric fog already (mind you, the god rays are a low-resolution screen-space radial effect, and fog volumes are unshadowed). It is something else I want to revisit, but I need to balance performance and quality. The only thing we haven't added is depth of field, which I might look into.    
    • Put your NC Soft rules in the Ass and shut da fak up! Nobody cares what theres money grabers think or write or claim! If not people like Elfo and other fans this game will be not known, NC Soft must suck the dicks to Everyone coz olif not people this will be another garbage.
    • the problem isnt the tech, its what you build on top of it. running a live server on a closed binary you didnt compile is risky by default. you cant audit it, you cant patch it, and when something breaks you dont have the source to know why.   the usual “but everyone uses the ncsoft client” is exactly the point. that binary isnt safe because its third party, its safe DESPITE being third party, for one reason only: 20 years of thousands of ppl tearing it apart byte by byte. whole protocol is documented, no surprises left. if it had anything weird in it we would have found it a decade ago.   this client is the opposite. its a fresh binary that a couple ppl looked at for a few days. and who made it matters. ncsoft is a dead corp that couldnt care less about your private server. this one is from a project thats alive, from someone who most likely doesnt want his client running someone elses server. im not saying it has anything in it. im saying you cant audit it and the author is not a neutral party. add that this same thread shows it gets reversed in days, so it gives you zero protection and full dependency.   for a weekend project who cares. for something with real players i wouldnt build my server on that.
  • Topics

×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..