Skip to content

Instantly share code, notes, and snippets.

@akalongman
Created May 7, 2014 12:32
Show Gist options
  • Select an option

  • Save akalongman/b50bc11a9303adb6f2db to your computer and use it in GitHub Desktop.

Select an option

Save akalongman/b50bc11a9303adb6f2db to your computer and use it in GitHub Desktop.
Port scanner on PHP
<?php
ini_set('max_execution_time', 0);
ini_set('memory_limit', -1);
$host = 'google.com';
$ports = array(21, 25, 80, 81, 110, 143, 443, 587, 2525, 3306);
foreach ($ports as $port)
{
$connection = @fsockopen($host, $port, $errno, $errstr, 2);
if (is_resource($connection))
{
echo '<h2>' . $host . ':' . $port . ' ' . '(' . getservbyport($port, 'tcp') . ') is open.</h2>' . "\n";
fclose($connection);
}
else
{
echo '<h2>' . $host . ':' . $port . ' is not responding.</h2>' . "\n";
}
}
@mandrakevenom

Copy link
Copy Markdown

thank you

@ferdousulhaque

Copy link
Copy Markdown

Thank you. Very helpful.

@crypto-maniac

Copy link
Copy Markdown

hello , this is an old thread but im curious to know how to put the url as variable and all in a loop
so the script is able to process many URL from a .txt
thanks for the help

@bragle

bragle commented Nov 11, 2018

Copy link
Copy Markdown

@crypto-maniac I think you should try to google a little bit before asking for help (cause you would have figured it out if you tried), but here's some code to get you started:

$document = file_get_contents('urls.txt');
$hosts = explode(PHP_EOL, $document);
$ports = [21, 25, 80, 81, 110, 143, 443, 587, 2525, 3306];

foreach($hosts as $host){
	//just copy pasta from line 8 to 22
}

@rafaelvr

Copy link
Copy Markdown

Congratulations on the code, it helped a lot but I have a problem when testing port 3389 rdp, could you help me?

@namcity86

Copy link
Copy Markdown

Example: I want to check for 100 IP addresses, with 3 ports 20, 40, 60. Can anyone help me with a complete code to run the check port loop of 100 IP addresses? Thanks everyone

@andrewpisula

Copy link
Copy Markdown

Example: I want to check for 100 IP addresses, with 3 ports 20, 40, 60. Can anyone help me with a complete code to run the check port loop of 100 IP addresses? Thanks everyone

Do you still need help?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment