Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- error_reporting(E_ERROR | E_PARSE);
- ini_set('display_errors', '1');
- $DB_host = "localhost";
- $DB_user = "user";
- $DB_pass = "pass";
- $DB_name = "db";
- $mysqli = new MySQLi($DB_host,$DB_user,$DB_pass,$DB_name);
- if ($mysqli->connect_error) {
- die('Error : ('. $mysqli->connect_errno .') '. $mysqli->connect_error);
- }
- function encrypt_key($paswd)
- {
- $mykey=getEncryptKey();
- $encryptedPassword=encryptPaswd($paswd,$mykey);
- return $encryptedPassword;
- }
- function decrypt_key($paswd)
- {
- $mykey=getEncryptKey();
- $decryptedPassword=decryptPaswd($paswd,$mykey);
- return $decryptedPassword;
- }
- function getEncryptKey()
- {
- $secret_key = md5('eugcar');
- $secret_iv = md5('sanchez');
- $keys = $secret_key . $secret_iv;
- return encryptor('encrypt', $keys);
- }
- function encryptPaswd($string, $key)
- {
- $result = '';
- for($i=0; $i<strlen ($string); $i++)
- {
- $char = substr($string, $i, 1);
- $keychar = substr($key, ($i % strlen($key))-1, 1);
- $char = chr(ord($char)+ord($keychar));
- $result.=$char;
- }
- return base64_encode($result);
- }
- function decryptPaswd($string, $key)
- {
- $result = '';
- $string = base64_decode($string);
- for($i=0; $i<strlen($string); $i++)
- {
- $char = substr($string, $i, 1);
- $keychar = substr($key, ($i % strlen($key))-1, 1);
- $char = chr(ord($char)-ord($keychar));
- $result.=$char;
- }
- return $result;
- }
- function encryptor($action, $string) {
- $output = false;
- $encrypt_method = "AES-256-CBC";
- $secret_key = md5('eugcar sanchez');
- $secret_iv = md5('sanchez eugcar');
- $key = hash('sha256', $secret_key);
- $iv = substr(hash('sha256', $secret_iv), 0, 16);
- if( $action == 'encrypt' ) {
- $output = openssl_encrypt($string, $encrypt_method, $key, 0, $iv);
- $output = base64_encode($output);
- }
- else if( $action == 'decrypt' ){
- $output = openssl_decrypt(base64_decode($string), $encrypt_method, $key, 0, $iv);
- }
- return $output;
- }
- #premium
- $data = "";
- $PREMIUM="users.is_validated=1 AND users.is_freeze=0 AND users.v2ray_id<>'none'";
- //$data .= "\n".'cat << EOF >/etc/v2ray/config.json';
- $data .= "\n".'{';
- $data .= "\n".' "log": {';
- $data .= "\n".' "access": "/var/log/v2ray/access.log",';
- $data .= "\n".' "error": "/var/log/v2ray/error.log",';
- $data .= "\n".' "loglevel": "warning"';
- $data .= "\n".' },';
- $data .= "\n".' "inbounds": [';
- $data .= "\n".' {';
- $data .= "\n".' "port": 443,';
- $data .= "\n".' "protocol": "vmess",';
- $data .= "\n".' "settings": {';
- $data .= "\n".' "clients": [';
- $query = $mysqli->query("SELECT * FROM users WHERE ".$PREMIUM." ");
- while($row = $query->fetch_assoc())
- {
- $v2ray = $row['v2ray_id'];
- $data .= "\n".' {"id": "'.$v2ray.'", "level": 1, "alterId": 64},';
- }
- $data .= "\n".' {"id": "c50c17cd-8948-479d-da2c-b38ff00e4ab2", "level": 1, "alterId": 64}';
- $data .= "\n".' ]';
- $data .= "\n".' },';
- $data .= "\n".' "streamSettings": {';
- $data .= "\n".' "network": "ws",';
- $data .= "\n".' "security": "tls",';
- $data .= "\n".' "tlsSettings": {';
- $data .= "\n".' "certificates": [';
- $data .= "\n".' {';
- $data .= "\n".' "certificateFile": "/etc/letsencrypt/live/JHODNS/cert.pem",';
- $data .= "\n".' "keyFile": "/etc/letsencrypt/live/JHODNS/privkey.pem"';
- $data .= "\n".' }';
- $data .= "\n".' ],';
- $data .= "\n".' "serverName": "JHODNS"';
- $data .= "\n".' },';
- $data .= "\n".' "wsSettings": {';
- $data .= "\n".' "headers": {},';
- $data .= "\n".' "path": "/"';
- $data .= "\n".' }';
- $data .= "\n".' },';
- $data .= "\n".' "sniffing": {';
- $data .= "\n".' "enabled": true,';
- $data .= "\n".' "destOverride": [';
- $data .= "\n".' "http",';
- $data .= "\n".' "tls"';
- $data .= "\n".' ]';
- $data .= "\n".' }';
- $data .= "\n".' }';
- $data .= "\n".' ],';
- $data .= "\n".' "outbounds": [';
- $data .= "\n".' {';
- $data .= "\n".' "protocol": "freedom",';
- $data .= "\n".' "settings": {';
- $data .= "\n".' "domainStrategy": "UseIP"';
- $data .= "\n".' },';
- $data .= "\n".' "tag": "direct"';
- $data .= "\n".' },';
- $data .= "\n".' {';
- $data .= "\n".' "protocol": "blackhole",';
- $data .= "\n".' "settings": {},';
- $data .= "\n".' "tag": "blocked"';
- $data .= "\n".' },';
- $data .= "\n".' {';
- $data .= "\n".' "protocol": "mtproto",';
- $data .= "\n".' "settings": {},';
- $data .= "\n".' "tag": "tg-out"';
- $data .= "\n".' }';
- $data .= "\n".' ],';
- $data .= "\n".' "dns": {';
- $data .= "\n".' "servers": [';
- $data .= "\n".' "https+local://cloudflare-dns.com/dns-query",';
- $data .= "\n".' "1.1.1.1",';
- $data .= "\n".' "1.0.0.1",';
- $data .= "\n".' "8.8.8.8",';
- $data .= "\n".' "8.8.4.4",';
- $data .= "\n".' "localhost"';
- $data .= "\n".' ]';
- $data .= "\n".' },';
- $data .= "\n".' "routing": {';
- $data .= "\n".' "domainStrategy": "IPOnDemand",';
- $data .= "\n".' "rules": [';
- $data .= "\n".' {';
- $data .= "\n".' "type": "field",';
- $data .= "\n".' "ip": [';
- $data .= "\n".' "0.0.0.0/8",';
- $data .= "\n".' "10.0.0.0/8",';
- $data .= "\n".' "100.64.0.0/10",';
- $data .= "\n".' "127.0.0.0/8",';
- $data .= "\n".' "169.254.0.0/16",';
- $data .= "\n".' "172.16.0.0/12",';
- $data .= "\n".' "192.0.0.0/24",';
- $data .= "\n".' "192.0.2.0/24",';
- $data .= "\n".' "192.168.0.0/16",';
- $data .= "\n".' "198.18.0.0/15",';
- $data .= "\n".' "198.51.100.0/24",';
- $data .= "\n".' "203.0.113.0/24",';
- $data .= "\n".' "::1/128",';
- $data .= "\n".' "fc00::/7",';
- $data .= "\n".' "fe80::/10"';
- $data .= "\n".' ],';
- $data .= "\n".' "outboundTag": "blocked"';
- $data .= "\n".' },';
- $data .= "\n".' {';
- $data .= "\n".' "type": "field",';
- $data .= "\n".' "inboundTag": ["tg-in"],';
- $data .= "\n".' "outboundTag": "tg-out"';
- $data .= "\n".' },';
- $data .= "\n".' {';
- $data .= "\n".' "type": "field",';
- $data .= "\n".' "domain": [';
- $data .= "\n".' "domain:epochtimes.com",';
- $data .= "\n".' "domain:epochtimes.com.tw",';
- $data .= "\n".' "domain:epochtimes.fr",';
- $data .= "\n".' "domain:epochtimes.de",';
- $data .= "\n".' "domain:epochtimes.jp",';
- $data .= "\n".' "domain:epochtimes.ru",';
- $data .= "\n".' "domain:epochtimes.co.il",';
- $data .= "\n".' "domain:epochtimes.co.kr",';
- $data .= "\n".' "domain:epochtimes-romania.com",';
- $data .= "\n".' "domain:erabaru.net",';
- $data .= "\n".' "domain:lagranepoca.com",';
- $data .= "\n".' "domain:theepochtimes.com",';
- $data .= "\n".' "domain:ntdtv.com",';
- $data .= "\n".' "domain:ntd.tv",';
- $data .= "\n".' "domain:ntdtv-dc.com",';
- $data .= "\n".' "domain:ntdtv.com.tw",';
- $data .= "\n".' "domain:minghui.org",';
- $data .= "\n".' "domain:renminbao.com",';
- $data .= "\n".' "domain:dafahao.com",';
- $data .= "\n".' "domain:dongtaiwang.com",';
- $data .= "\n".' "domain:falundafa.org",';
- $data .= "\n".' "domain:wujieliulan.com",';
- $data .= "\n".' "domain:ninecommentaries.com",';
- $data .= "\n".' "domain:shenyun.com"';
- $data .= "\n".' ],';
- $data .= "\n".' "outboundTag": "blocked"';
- $data .= "\n".' } ,';
- $data .= "\n".' {';
- $data .= "\n".' "type": "field",';
- $data .= "\n".' "protocol": [';
- $data .= "\n".' "bittorrent"';
- $data .= "\n".' ],';
- $data .= "\n".' "outboundTag": "blocked"';
- $data .= "\n".' }';
- $data .= "\n".' ]';
- $data .= "\n".' },';
- $data .= "\n".' "transport": {';
- $data .= "\n".' "kcpSettings": {';
- $data .= "\n".' "uplinkCapacity": 100,';
- $data .= "\n".' "downlinkCapacity": 100,';
- $data .= "\n".' "congestion": true';
- $data .= "\n".' }';
- $data .= "\n".' }';
- $data .= "\n".'}';
- //$data .= "\n".'EOF';
- //$data .= "\nv2ray restart";
- $data .= "\n";
- $location1 = '/home/pathmosajsonmo/id.json';
- $fp = fopen($location1, 'w');
- fwrite($fp, $data) or die("Unable to open me!");
- fclose($fp);
- $mysqli->close();
- ?>
Add Comment
Please, Sign In to add comment