{"id":16163002,"url":"https://github.com/d3vilh/xray-cloud","last_synced_at":"2025-05-07T10:06:42.535Z","repository":{"id":188963279,"uuid":"679604448","full_name":"d3vilh/xray-cloud","owner":"d3vilh","description":"Fast Shadowsocks and XTLS-Reality tunnel proxy that helps you bypass firewalls.","archived":false,"fork":false,"pushed_at":"2023-08-19T18:14:10.000Z","size":206,"stargazers_count":17,"open_issues_count":3,"forks_count":4,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-14T17:21:39.426Z","etag":null,"topics":["reality","shadowsocks","x-ui","xray","xtls","xtls-reality"],"latest_commit_sha":null,"homepage":"","language":"Jinja","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/d3vilh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["d3vilh"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":["https://www.buymeacoffee.com/d3vilh"]}},"created_at":"2023-08-17T07:58:18.000Z","updated_at":"2025-02-12T21:46:29.000Z","dependencies_parsed_at":"2024-11-02T08:32:36.150Z","dependency_job_id":null,"html_url":"https://github.com/d3vilh/xray-cloud","commit_stats":null,"previous_names":["d3vilh/xray-cloud"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d3vilh%2Fxray-cloud","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d3vilh%2Fxray-cloud/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d3vilh%2Fxray-cloud/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d3vilh%2Fxray-cloud/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/d3vilh","download_url":"https://codeload.github.com/d3vilh/xray-cloud/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246443523,"owners_count":20778247,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["reality","shadowsocks","x-ui","xray","xtls","xtls-reality"],"created_at":"2024-10-10T02:34:11.864Z","updated_at":"2025-04-01T01:32:57.631Z","avatar_url":"https://github.com/d3vilh.png","language":"Jinja","funding_links":["https://github.com/sponsors/d3vilh","https://www.buymeacoffee.com/d3vilh"],"categories":[],"sub_categories":[],"readme":"# Xray-cloud\nFast shadowsocks tunnel proxy that helps you bypass firewalls.\n**Xray-cloud** supports any x86 servers be it a VPS, Cloud provider (AWS, GoogleC, Azure), a dedicated server, or a home computer. It also supports any ARM-based devices such as Raspberry Pi, Banana Pi, etc.\n\n  \u003e **!Beaware!**: Some protocols described here are [prohibited in PRC](https://en.wikipedia.org/wiki/Shadowsocks). Don't use this if you are in PRC. This is for your educational purposes only. \n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"/images/XRAY-Dashboard1.png\" alt=\"Xray Dashboard\" height=\"358\"\u003e\u003cimg src=\"/images/XRAY-Dashboard2.png\" alt=\"Xray Inbounds\" height=\"358\"\u003e\n\u003c/p\u003e\n# Installation\n\n  1. Install [Ansible](https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html) and Git:\n     ```shell \n     sudo apt-get install -y python3-pip git rsync\n     sudo apt install ansible\n     ```\n  2. Clone this repository: \n     ```shell\n     git clone https://github.com/d3vilh/xray-cloud\n     ```\n  3. Then enter the repository directory: \n     ```shell \n     cd xray-cloud\n     ```\n  4. Install requirements: \n     ```shell\n     ansible-galaxy collection install -r requirements.yml\n     ```\n     \u003e If you see `ansible-galaxy: command not found`, you have to relogin and then try again.\n  5. Run the following command to add the `docker` group if it doesn't exist and add user to the `docker` group:\n     \u003e If you have docker installed for current user, you can skip this step.\n     ```shell\n     sudo groupadd docker\n     sudo usermod -aG docker $USER\n     ```\n\n  6. **Double check** that `ansible_user` is correct for `inventory.yml`. Need to run installtion on the remote server - follow the recomendations in config file.\n\n  7. Run installation playbook:\n     ```shell\n     ansible-playbook main.yml\n     ```\n  8. You have to allow following ports for Inbound traffic in Security Group configuration: `443`, `54321` (temporary for UI), `2098` (if you'll be using subscriptions).\n  \n  9. After installation, you can access the Xray Web UI at `http://\u003cyour-server-ip\u003e:54321` and login with the default username `admin` and password `admin`. You must change the password in the Web UI.\n\n# Basic Xray Server Configuration\n\n## Important configuration notes:\n   * **UI access port** `http://localhost:54321`, (*change `localhost` to your server host ip/name*)\n   * **Default password** is `admin/admin`, which **must** be changed via web interface on first login (`Pannel Settings` \u003e `User Settings`).\n   * **External ports** used by container: `443:tcp`, `54321:tcp`(by default), Inbound ports you'll configure.\n   * **Configuration files** you should mount `db` and `cert` directories into container, there it will store SQLite DB with configuration and there you'll put https certificate.\n   * **It is Important** to change following settings for better security:\n     * default password in `Pannel Settings` \u003e `User Settings` \u003e `Password` to something strong and secure.\n     * default pannel port in `Pannel Settings` \u003e `Pannel Configurations` \u003e `Pannel Port` from `54321` to some random port (the best in the upper end of the range, up to `65535`)\n     * default configuration pannel URL in `Pannel Settings` \u003e `Pannel Configurations` \u003e `Panel URL Root Path` to something random, like `/mysecretpannel/` or `/superxray/`.\n\n## Inbounds configuration\nNow when default security configuration is done. It is time to configure Xray to work with your Server. There is few steps below you should follow.\u003cbr\u003e\nMore Xray configuration examples can be found [here](https://github.com/XTLS/Xray-examples).\n\n### 1. SHADOWSOCKS Configuration\nTo create Shadowsocks Inbound you need to:\n* Enable Subscriptions:\n`Pannel Service` \u003e `Subscriptions` \u003e `Enable Service` \u003e `ON`\n\n`Save` \u003e `Restart Pannel` to apply Subscriptions.\n* Add new Inbound:\n`Inbounds` \u003e `Add Inbound`:\n  * `Remark`: Anything humanreadable to identify this inbound (`ShadowSocks`, for example)\n  * `Protocol`: `shadowsocks`\n  * `Listen IP`: IP where server will listen for connections. You can leave it empty in this case it will listen on all interfaces.\n  * `Listen Port`: Port where server will listen for connections. It is random by default - leave it.\n  * `Total Flow GB` and `Expire date` is limit parameters you could sent for this inbound. Leave it empty for unlimited.\n  * `Client` \u003e\n    * `Email`: Anything humanreadable, to identify this client (`ShadowUser1`, for example)\n    * `Password`: Password for desired encryption. It is random by default - leave it.\n    * `Subscription`: `User1` Anything humanreadable to identify this Subscription.\n    * `Encryption`: for Shadowsocks use any encryption you like which starts with 2022. For example `2022-blake3-aes-256-gcm`\n    * `Network`: `tcp,udp` or `tcp` for Shadowsocks\n    * `Transmission`: `tcp`\n\nYou can use Shadowsocks now, but it is better to continue with VLESS \u0026 XTLS-Reality configuration below to bypass [Active probing](https://ensa.fi/active-probing/).\n\nHere how Shadowsocs Configuration looks like:\n\n\u003cimg src=\"https://raw.githubusercontent.com/d3vilh/raspberry-gateway/master/images/XRAY-SS-Config1.png\" alt=\"Raspberry ShadowSocks Configuration 1\" width=\"300\" border=\"0\" /\u003e\n\n### 2. VLESS \u0026 XTLS-Reality Configuration\nTo create VLESS Inbound you need to:\n* Enable Subscriptions:\n`Pannel Service` \u003e `Subscriptions` \u003e `Enable Service` \u003e `ON`\n\n`Save` \u003e `Restart Pannel` to apply Subscriptions.\n* Add new Inbound:\n`Inbounds` \u003e `Add Inbound`:\n  * `Remark`: Anything humanreadable to identify this inbound (`Reality`, for example)\n  * `Protocol`: `vless`\n  * `Listen IP`: IP where server will listen for connections. You can leave it empty in this case it will listen on all interfaces.\n  * `Listen Port`: `443` Port where server will listen for connections.\n  * `Total Flow GB` and `Expire date` is limit parameters you could set for this inbound. Leave it empty for unlimited.\n  * `Client` \u003e\n    * `Email`: Anything humanreadable, to identify this client (`RealUser1`, for example)\n    * `ID`: Random UUID by default - leave it.\n    * `Subscription`: `User1` Keep it same as you set for Shadowsocks.\n    * `Accept Proxy Protocol`: `Reality` This is important to enable before setting next options.\n    * `Flow`: `xtls-rprx-vision` This option will appear above the `Subscription` option after enabling `Accept Proxy Protocol`.\n    * `Domain name`: `yourdomain.com` Your domain name. You can leave it empty if you don't have one, so X-UI will automatically insert your IP.\n    * `Xver`: `0` Leave it default. IDK what is it for.\n    * `uTLS`: `Firefox` Leave it default, `Firefox` or `Chrome` are desirable and most reliable to clients options.\n    * `Dest`, `Server Names`: `microsoft.com:443` and `microsoft.com,www.microsoft.com` This is domains under which you will \"disguise yourself\". This should be some popular external domain, which is not blocked by your SP, Organisation or Goverment (I hope you know consequences and have strong reason for).\n    * `Shorts`: Random by default - leave it.\n    * `Private Key` and `Public Key`: Click `Get New Cert` button below.\n* Save it, and you are done.\n\nHere how Realty Configuration looks like:\n\n\u003cimg src=\"https://raw.githubusercontent.com/d3vilh/raspberry-gateway/master/images/XRAY-Realty-Config1.png\" alt=\"Raspberry Realty Configuration 1\" width=\"300\" border=\"0\" /\u003e\u003cbr\u003e\u003cimg src=\"https://raw.githubusercontent.com/d3vilh/raspberry-gateway/master/images/XRAY-Realty-Config2.png\" alt=\"Raspberry Realty Configuration 2\" width=\"300\" border=\"0\" /\u003e\n\nThis is what you'll have as a result of our configuration:\n\n\u003cimg src=\"https://raw.githubusercontent.com/d3vilh/raspberry-gateway/master/images/XRAY-Inbounds1.png\" alt=\"Raspberry Configured XRAY Inbounds\" width=\"900\" border=\"0\" /\u003e\n\n## Firewal Security Group Configuration\n\nBased on the ports you've configured in Xray Inbounds, you have to allow inbound traffic on ports `443`, `2098` (if you'll use subscriptions), `\u003cYOUR-NEW-UI-PORT\u003e` and `other` Inbound ports, if you are using it.\n\n## Additional Options.\nUnder `Pannel Settings` \u003e `Xray Configuration` you can find some additional options. Such as block BitTorrent traffic for your Clients or enable Ads Blocking or Family-Friendly for them. \nYou can block connections to specific countries from the list like China, Russia, etc.\nIn addition you can setup Telegram Bot which will help to manage your Xray Server via Telegram.\n\n## How to connect.\nThe best way is to click on QR-Code icon for desired `Client` and scan it with one of the Client App. listed below. Yes, it's that simple. \n\n# Xray Clients\nHere is the list of Clients you can use with Xray Server. \nIf you glad to use something different, plesae, let me know, I'll add it to the list.\n\n### Universal Clients\n* [**Nekoray/Nekobox**](https://github.com/MatsuriDayo/nekoray) it supports Shadowsocks-2022, VLESS and XTLS-Reality protocols. Easy to use, have nice GUI and available for **Windows**, **Linux**, **Android** and unofficially for MacOS. Special build for **MacOS** is available [here](https://github.com/aaaamirabbas/nekoray-macos/releases).\n\n### Android Clients\n* [**Nekobox**](https://play.google.com/store/apps/details?id=moe.nb4a) for Android. Free. [Github](https://github.com/MatsuriDayo/NekoBoxForAndroid/releases).\n\n* [**V2RayNG**](https://play.google.com/store/apps/details?id=com.v2ray.ang\u0026hl=en_US), [Github](https://github.com/2dust/v2rayNG)\nUses XRay as a kernel, supports all the available for Xray protocols.\n\n### MacOS Clients\n* [**V2BOX**](https://apps.apple.com/us/app/v2box-v2ray-client/id6446814690) for MacOS. Free.\n\n* [**Nekoray**](https://github.com/aaaamirabbas/nekoray-macos/releases) for MacOS. Free but lame.\n\n### iOS Clients\n* [**FoXray**](https://apps.apple.com/us/app/foxray/id6448898396). On [Appstore](https://apps.apple.com/us/app/foxray/id6448898396) for iPhone and iPad. Free.\n  Based on XRay-Core, supports all the available protocols: Shadowsocks, VLESS, Socks, VMess, XTLS, Reality, Trojan. With TLS, TCP, HTTP/2, WebSocket, mKCP, gRPC, QUIC. \n\n* [**V2BOX**](https://apps.apple.com/us/app/v2box-v2ray-client/id6446814690). On [Appstore](https://apps.apple.com/us/app/v2box-v2ray-client/id6446814690) for iPhone. Free.\n\n* [**ShadowRocket**](https://apps.apple.com/us/app/shadowrocket/id932747118). On [Appstore](https://apps.apple.com/us/app/shadowrocket/id932747118) for iPhone and iPad. Costs 3,99$.\nSupports Shadowsocks-2022, VMess, VLESS, Trojan, TUIC, Hysteria, WireGuard, XTLS-Vision, uTLS.\n\n\u003ca href=\"https://www.buymeacoffee.com/d3vilh\" target=\"_blank\"\u003e\u003cimg src=\"https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png\" alt=\"Buy Me A Coffee\" style=\"height: 51px !important;width: 217px !important;\" \u003e\u003c/a\u003e \nOr even better - [**donate for Ukraine 🇺🇦**](http://u24.gov.ua) \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fd3vilh%2Fxray-cloud","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fd3vilh%2Fxray-cloud","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fd3vilh%2Fxray-cloud/lists"}