Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/serversideup/ipaddress-fyi
Easily control access to the Internet’s most popular services
https://github.com/serversideup/ipaddress-fyi
firewall-configuration laravel-application open-api open-data php-applications security
Last synced: 5 days ago
JSON representation
Easily control access to the Internet’s most popular services
- Host: GitHub
- URL: https://github.com/serversideup/ipaddress-fyi
- Owner: serversideup
- License: mit
- Created: 2017-02-24T17:05:22.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2022-03-30T20:48:42.000Z (over 2 years ago)
- Last Synced: 2024-10-31T07:51:32.570Z (12 days ago)
- Topics: firewall-configuration, laravel-application, open-api, open-data, php-applications, security
- Language: JavaScript
- Homepage: https://ipaddress.fyi
- Size: 771 KB
- Stars: 8
- Watchers: 5
- Forks: 2
- Open Issues: 5
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
## About this project
This free service is intended for developers and system administrators to simplify the management of access control for their own apps and systems. [IPaddress.fyi](https://ipaddress.fyi) organizes network data into a freely accessible JSON formatted data. Developers and system administrators can easily reference the same URL with their application. If the IP Address of a service changes, we'll make the changes for you -- but you won't have to update the references of your application or firewall. The JSON URL will always stay the same!
## How To use
[IPaddress.fyi](https://ipaddress.fyi) is so easy to use, even your grandmother will know how to use it:1. Visit [https://ipaddress.fyi](https://ipaddress.fyi)
2. Select the service(s) of your choice
3. Click "Show My Integration URL"
4. Copy the link and integrate this data with your application/firewall. Our URL will never change, but we will always keep the information up to date for you.## Contributing
We've open sourced the entire code so that we can all work together to make a beautiful and organized set of network data.
### Reporting and issue or inaccuracy
If you find a problem, [create an issue](https://github.com/521dimensions/ipaddress-fyi/issues/new).### Adding a service
To add a service, you will need to submit a pull request. To do this, you will need to create a new `.json` file under `/public/services`.Each service requires:
1. `name`: The name of the service
2. `category`: How this service should be categorized on the homepage
3. `source`: A trusted URL where you got this information from
4. `command`: What Bash command to run in order to make sure the data stays up to date
5. If you cannot get the information through a command, then `addresses` is required. This should be a list of addresses that are verified to be related to the service. In a perfect world, we will want to use the `command` field to update data as much as possible so that we can guarantee changes can be updated without human interaction.See the files under `/public/services` to see the examples that we already have.
## Running your own server
If you prefer to run your own server, you will need a working PHP and MySQL environment. This is a Laravel PHP application, so after you clone it to your server of choice, you will need to install the packages using `npm install` and `composer install` from root directory of our repository. You'll need to properly configure your `.env` file and make sure that your application key is properly set within that file.## Manually updating addresses
If you want to update the addresses manually, we created a command to do so:
```sh
cd /path/to/the/repo/
php artisan update:ipaddresses all
```## Automating address updates
Use `cron` to automate the updates. To do this, run `crontab -e` and then add these lines:```sh
# ipaddress.fyi address updates
* * * * * /usr/bin/php /path/to/the/repo/artisan schedule:run >> /dev/null 2>&1
```
Important notes when configuring `cron`:
- Make sure you configure the correct location to `artisan` by replacing `/pat/to/my/repo` to be the correct location of where you are running the application.
- The script above will check every minute to see if it should run (using the Laravel Scheduler). But the address update function will only run once per day at 5 AM GMT.# Special Thanks
We've used a lot of cool tools that have helped inspire this project:- [Ninite.com](https://ninite.com)
- [icanhazip.com](https://icanhazip.com/)
- [Digital Ocean](https://digitalocean.com)
- [Dribbble.com](https://dribbble.com)
- [MFG Labs](https://mfglabs.github.io/mfglabs-iconset/)
- [Flat Icon](http://www.flaticon.com/)# License
IPaddress.fyi's code and data are all open-sourced and made available through the [MIT license](https://raw.githubusercontent.com/521dimensions/ipaddress-fyi/master/LICENSE).