Browse Source

start portscanning

Julien Rabier 11 years ago
parent
commit
b988e59bb9
2 changed files with 49 additions and 1 deletions
  1. 20 1
      main.py
  2. 29 0
      portscan.py

+ 20 - 1
main.py

@@ -2,6 +2,7 @@
 # -*- coding: utf-8 -*-
 
 import sys
+from portscan import PortScan
 from PyQt4 import QtGui, QtCore
 
 
@@ -14,10 +15,28 @@ class MainClass(QtGui.QMainWindow):
         
     def initUI(self):
        
-        self.resize(250,250)
+        self.resize(500,300)
         self.center()
         self.setWindowTitle('FDN - VPN configuration generator')
         self.statusBar().showMessage('Ready')
+
+        qbtn = QtGui.QPushButton('Quit', self)
+        qbtn.clicked.connect(QtCore.QCoreApplication.instance().quit)
+        qbtn.resize(qbtn.sizeHint())
+
+        resbox = QtGui.QLabel(PortScan.portscan())
+
+        hbox = QtGui.QHBoxLayout()
+        hbox.addStretch(3)
+        hbox.addWidget(qbtn)
+        hbox.addWidget(resbox)
+
+        vbox = QtGui.QVBoxLayout()
+        vbox.addStretch(1)
+        vbox.addLayout(hbox)
+
+        self.setLayout(vbox)
+
         self.show()
 
     def center(self):

+ 29 - 0
portscan.py

@@ -0,0 +1,29 @@
+# -*- coding: utf-8 -*-
+# http://www.pythonforbeginners.com/code-snippets-source-code/port-scanner-in-python/
+import socket
+
+remoteServer = socket.gethostbyname('vpn.fdn.fr')
+altRemoteServer = socket.gethostbyname('vpn-rw.fdn.fr')
+
+
+class PortScan(object):
+    def __init__(self):
+        pass
+
+    def portscan(self):
+        try:
+            for port in range(1,1250):
+                sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
+                result = sock.connect_ex((remoteServer, port))
+                if result == 0:
+                    return "Port {}: \t Open".format(port)
+                sock.close()
+         
+        except socket.gaierror:
+            return 'Hostname could not be resolved. Exiting'
+         
+        except socket.error:
+            return "Couldn't connect to server"
+
+
+