Το Megabreach των 773 εκατομμυρίων Passwords ξεκίνησε χρόνια πριν
infosec

Το Megabreach των 773 εκατομμυρίων Passwords ξεκίνησε χρόνια πριν

Πρόσφατα κυκλοφόρησε η είδηση, ότι σχεδόν 773 εκατομμύρια διευθύνσεις ηλεκτρονικού ταχυδρομείου και 21 εκατομμύρια passwords δημοσιεύθηκαν σε ένα φόρουμ hacking....
Read More
infosec

Instagram influencers ανακτούν τα accounts με τη βοήθεια hackers

Οι Instagram influencers που έχουν δει τους λογαριασμούς τους να χακάρονται και τις προσωπικές τους πληροφορίες να εκτίθενται, λένε ότι...
Read More
infosec

Windows 10: Πώς να διορθώσετε το browsing σφάλμα στο Microsoft Edge

Η τελευταία αναβάθμιση που κυκλοφόρησε από τη Microsoft για τα Windows 10 έφερε ένα πρόβλημα, το οποίο παρατηρείται όταν επιχειρεί...
Read More
infosec

Google Play: Κρυβόταν malware με τη χρήση των αισθητήρων κίνησης

Στην αγορά του Google Play υπάρχουν πολλές κακόβουλες εφαρμογές που δοκιμάζουν κόλπα για να αποφευχθεί η ανίχνευση τους. Για την...
Read More
infosec

Bug του Twitter δημοσίευε τα προσωπικά tweets των χρηστών για 5 χρόνια

Οι χρήστες του Twitter, οι οποίοι χρησιμοποιούν το δημοφιλές κοινωνικό δίκτυο από τις Android συσκευές τους, θα πρέπει να ελέγξουν...
Read More
Latest Posts

Python Simple Chat

Η Python μας παρέχει μεγάλη ευελιξία και ευκολία στην δημιουργία προγραμμάτων που με άλλες γλώσσες προγραμματισμού θα χρειαζόμασταν περισσότερο χρόνο αλλά και πολύ περισσότερο κώδικα.chat-

Επίσης είναι αποδοτική,δωρεάν και υπάρχουν πολύ καλά manuals αλλά και tutorials
Παρακάτω βλέπετε τον κώδικα μας χωρισμένο σε 2 μέρη.το πρώτο είναι ο ChatServer και στο άλλο ο Client
Ίσως αναρωτηθήκατε γιατί να φτιάξω ένα Custom chat όταν μπορώ να επικοινωνήσω με ποιο απλούς τρόπους (πχ Messenger,Twitter,Viber κτλ)?
Για λιγότερη παρακολούθηση ίσως 🙂

Lets Python

#!/usr/bin/python
#####################################
#Simple Chat Server
#Filename: ChatServer.py                 
#####################################
import SocketServer
class Chat(SocketServer.BaseRequestHandler):
    def handle(self):
        print "Got a connection from> ",self.client_address
        data="dummy"
        while len(data): 
             data=self.request.recv(1024) 
             print "Client send> "+data
            self.request.send(data)
         print "Client left"
if __name__=='__main__':
HOST,PORT=("0.0.0.0",8000)
s=SocketServer.TCPServer((HOST,PORT),Chat)
s.serve_forever()
#!/usr/bin/python
####################################
#Simple Client Connection      
#Filename: Client.py     
####################################
import socket
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#Connect to Chat Server IP and Port
s.connect(('192.168.1.4',8000))
while 1:
    userInput=raw_input("Please enter a string: ")
    s.send(userInput)
s.close()

Python Simple Chat

Στο πρώτο κομμάτι χρησιμοποίησα το SocketServer module για να κάνω την δουλειά μου λίγο πιο γρήγορα.

Παρακάτω θα σας δείξω ακόμη έναν τρόπο για την δημιουργία του Chat Server με την βοήθεια του Socket module.

#!/usr/bin/python
import socket

#Create Socket
tcpSocket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)

#Create service port
tcpSocket.bind(("0.0.0.0"),8000)

#Get connections
tcpSocket.listen(2)
print "Wait a client to connect ..."
(client,(ip,port))=tcpSocket.accept()
print "Received connection from IP: ",ip
print "Start chating ..."
data="dummy"
while len(data):
    data=client.recv(2048)
     print "Client send %s: "%data
    client.send(data) 
print "Close connection ..."
client.close()
print "Shutting down Chat server ..."
tcpSocket.close()

Στα 2 αρχεία που δημιουργήσατε να μην ξεχάσετε να δώσετε και τα κατάλληλα δικαιώματα

  1. chmod a+x ChatServer.py
  2. chmod a+x Client.py

Βέβαια το chat δεν τελειώνει εδώ!Μπορούμε να το κάνουμε για περισσότερους 2 χρήστες,μπορούμε να χρησιμοποιήσουμε κρυπτογράφηση κτλ

Μπορείτε επίσης και σαν client να χρησιμοποιήσετε στο Terminal του Linux την παρακάτω εντολή το Netcat utility(nc).

nc SERVER_IP SERVER_PORT [πχ   nc 192.168.1.4 8000]

Έχετε άποψη; Αφήστε το σχόλιό σας.

Ο συντάκτης σας επιτρέπει να αντιγράψετε το κείμενό του, μόνο εφόσον αναφέρετε την πηγή (SecNews.gr), σαν ηλεκτρονική διεύθυνση (Live URL) του άρθρου.
Updated on by

Reader Interactions

Αφήστε μια απάντηση

Η ηλ. διεύθυνση σας δεν δημοσιεύεται. Τα υποχρεωτικά πεδία σημειώνονται με *