ΠΡΟΣΟΧΗ

Προσοχή! Οι οδηγοί μου είναι μόνο για εκπαιδευτικούς σκοπούς,
εφαρμόζοντας τους κακόβουλα σε τρίτους είναι με δικιά σας ευθύνη καθώς ορισμένοι απο αυτούς είναι παράνομοι

Δευτέρα, 11 Ιουνίου 2018

Πως κατασκευάζουμε ενα E-SHOP με SSL πιστοποιητικό και Physical Web





Εισαγωγη

Αποφασισα να φτιαξω αυτον τον οδηγο για να βοηθησω μικρες επιχειρησεις να μπουνε στην διαδικτυακη αγορα σωστα επαγγελματικα και φθηνα με  συνολικο κόστος 100
Ακολουθωντας αυτον τον οδηγο θα μαθετε πως φτιαχνετε ευκολα ενα ασφαλες e-shop με SSL δικο σας Email Server και Physical Web στην συνεχεια θα φτιαξουμε το SEO και θα συνδεσουμε Google Analytics ωστε να βλεπετε αναλυτικα στοιχεια τι γινετε με το ηλεκτρονικο σας καταστημα.

Ο οδηγος θα ειναι πολυ πολυ μεγαλος και ισως για καποιους δυσκολος αλλα θα γλυτωσετε τουλαχιστον 1000 ευρω

Τι θα χρειαστειτε;

1.Windows
2.Συνδεση στο Διαδικτυο
2.Raspberry Pi 3  32,18
3.Μια κάρτα sd χωρητικοτητας 16 Gb και ανω 19
4.Θηκη για το Raspberry Pi € 3,95
5.Παροχη ρευματος για τo Raspberry Pi € 7.98
6.Ψυχτρες για το Raspberry Pi € 1.21
7.Ενα ονομα τομεα (Domain  Name) € 24.80

To Raspberry Pi 3 και τα περιφεριακα μπορειτε να το βρειτε εδω

Εφοσον εχουμε παρει το Raspberry Pi 3 στα χερια μας



Ξεκιναμε

βγαζουμε το Raspberry Pi απο την συσκευασια


 βγαζουμε τα αυτοκολλητακια κατω απο τις ψυχτρες και τις κολλαμε οπως στην κατω φωτογραφια


 ανοιγουμε την θηκη και βαζουμε το Raspberry Pi μεσα


 κλεινουμε και βιδωνουμε


ετοιμαζουμε την παροχη ρευματος


υλισμικα ειμαστε ετοιμοι το μονο που μενει ειναι να ετοιμασουμε το λειτουργικο μας συστημα

Παταμε εδω


και περιμενουμε να κατεβει το PiBakery θα αργισει λιγο γιατι ειναι 1.4 GB
οταν κατεβει το κανουμε εγκατασταση


επιλεγουμε να γινει εγκατασταση του PiBakery με την ολοκληρη εκδοση του Rasbian
*Το Rasbian ειναι εκδοση Linux και ειναι το λειτουργικο μας συστημα που θα στησουμε τον server μας


επιλεγουμε συνεχεια και περιμενουμε να γινει η εγκατασταση



μωλις τελειωσει επιλεγουμε finish για να ανοιξει το PiBakery


επιλεγουμε Startup και σερνουμε το On First Boot δεξια στον ασπρο χωρο



πχ


μετα επιλεγουμε την καρτελα Network και σερνουμε το Setup WiFi
γραφουμε το ονομα του δικτυου μας ,τον κωδικο μας και τι κρυπτογραφηση εχει το δικτυο που θελουμε να ενωθει το Raspberry
*σημαντικο οταν ετοιμασουμε τα παντα θα συνδεσετε στο διαδικτυο το Raspberry με καλωδιο ethernet και οχι με WiFi.


μετα Settings και σερνουμε το Set Boot Option to ,επιλεγουμε Desktop logged in
και Programs VNC server at Boot


τωρα ειμαστε ετοιμοι 
επιλεγουμε Write και Start Write


επιβεβαιωνουμε οτι θελουμε να γραφτει η καρτα SD και περιμενουμε να γραφτει


και ειμαστε ετοιμοι


Τωρα βαζουμε την καρτα SD στο Raspberry Pi το συνδεουμε με την παροχη ρευματος
*Για παροχη ρευματος απλα δουλευει και με εναν απλο φορτιστη κινητου με OTG στα 2.5 Α / 5V

κατεβαζουμε το Vnc Viewer εδω
το κανουμε εγκατασταση

Πηγαινουμε στην σελιδα διαχειρισης του ρουτερ http://192.168.1.1 η http://192.168.1.254 η http://192.168.2.1  και βλεπουμε στις συνδεδεμενες συσκευες εχει εμφανιστει το Raspberry σημειωνουμε την IP του πχ σε εμενα ειναι 192.168.1.20

ανοιγουμε το VNC Viewer


βαζουμε την IP που εχει το Raspberry πχ 192.168.1.20 και παταμε το πληκτρο enter


βαζουμε ονομα χρηστη pi και κωδικο raspberry


και ενωνομαστε  στο Raspberry


στο πανω μνμ μας λεει οτι η υπηρεσια SSH ειναι ενεργοποιημενη και οτι ο προκαθορισμενος κωδικος δεν εχει αλλαξει κτλ

για να αλλαξουμε τον κωδικο πηγαινουμε


και


ξεκιναμε να φτιαχνουμε τον server και την ιστοσελιδα

Σαν παραδειγμα υποθετουμε οτι εχουμε ενα μαγαζι με ρολογια και αντρικα αξεσουαρ

Το ονομα του μαγαζιου ειναι πχ  το "Watch2Me"

Πηγαινω και καταχωρο το ονομα τομεα πατηστε εδω


επιλεγουμε τι καταληξη θελουμε

το .gr ειναι 20 ευρω για 2 χρονια


το .com καποιος αλλος το εχει οποτε πχ αν ηθελα εγω .com θα επρεπε να επικοινωνησω με τον ιδιοκτητη για να μου το πουλησει
Προχωραμε στην αγορα του Domain
*  για καταληξης .gr θελουν περιπου 48 ωρες για να εγκριθουν απο την EETT


Τωρα που αγορασαμε το Domain (ονομα τομεα)  πριν παμε να το ρυθμισουμε

το μεταφερουμε στο Cloudflare πατηστε εδω για να κανετε εγγραφη

*Το Cloudflare ειναι μια υπηρεσια που κραταει τα DNS Records ενος Domain και επισης σας παρεχει ασφαλεια στο Server σας θα δειτε αργοτερα γιατι μεταφεραμε το Domain εκει.

οταν τελειωσετε με την εγγραφη σας επιλεγουμε add site
βαζουμε το ονομα τομεα για εμενα ειναι το watch2me.ga
και επιλεγουμε Begin Scan


επιλεγουμε continue setup



εδω δεν προσθετουμε ακομα dns records κτλ και επιλεγουμε continue


επιλεγουμε το δωρεαν πλανο


και εδω μας λεει να αλλαξουμε τους nameservers του domain μας στους παρακατω


 οποτε παμε στο papaki.gr και επιλεγουμε το domain μας


επιλεγουμε Nameservers


και αλλαζουμε τους Nameservers απο

σε



επιλεγουμε συνεχεια και ενημερωση Nameservers
Μπορει να παρει μεχρι και 24ωρες ωστε να αλλαξουν οι nameservers του domain σας

εγω θα συνεχισω με το Domain watch2me.ga

τωρα πηγαινουμε στο Cloudflare και βλεπουμε οτι ειναι ενεργο το Domain μας

επιλεγουμε DNS για να ορισουμε τα DNS records



πριν ορισουμε τα DNS Records  παταμε εδω για να δουμε την εξωτερικη μας IP
την σημειωνουμε


τωρα παμε να ορισουμε τα DNS Records

για A record βαζουμε www μετα την εξωτερικη μας ip και επιλεγουμε ADD Record
εσεις θα εχετε προφανως αλλη εξωτερικη IP

συνεχιζουμε με αλλο A record

τωρα με απλα λογια 

οταν καποιος αναζητηση το www.watch2me,ga η watch2me.ga 
θα γινει Dns resolve στην εξωτερικη μας IP

οποτε μεχρι στιγμης πρεπει να εχετε αυτα τα 2 Α Records


επιλεγουμε να μην περναει οι κινηση (με HTTP proxy) απο το cloudflare και να κανει μονο DNS resolve


προσθετουμε και MX record 



και




τωρα ξεκιναμε να στησουμε τον διακομιστη ηλεκτρονικης αλληλογραφιας μας (Email Server)

ανοιγουμε το vnc και ενωνομαστε παλι στο Raspberry

ανοιγουμε το τερματικο και γραφουμε

sudo apt-get update

για να ανανεωσουμε τα πακετα


μετα γραφουμε

sudo apt-get upgrade

για να αναβαθμισουμε τα πακετα

γραφουμε y για ναι


περιμενουμε να τελειωσει η αναβαθμιση

οταν τελειωσει γραφουμε sudo reboot

σε λιγοτερο απο ενα λεπτο μας ξανασυνδεει το vnc αυτοματα αν οχι τοτε ξανασυνδεομαστε

τωρα πηγαινουμε στις ρυθμισεις του Raspberry


και αλλαζουμε το Hostname με το ονομα του Domain σας χωρις την καταληξη

δλδ απο


σε


και  παμε να αλλαξουμε την αναλυση γιατι μας βγαζει μικρη οθονη
*To Raspberry Pi αν το συνδεσετε με καλωδιο HDMI σε οθονη θα παρει αυτοματα την αναλυση της οθονης σας αλλα εφοσον ειμαστε ενωμενοι με VNC μας βγαζει μικρη αναλυση



επιλεγουμε να γινει επανεκκινηση


τωρα θα κανουμε εγκατασταση του Postfix
το Postfix ειναι ενα προγραμμα που σας επιτρεπει να στελνετε με λιγα λογια ηλεκτρονικη αλληλογραφια μεσω του προτοκολου SMTP (Simple Mail Transport Protocol) χρησιμοποιοντας την θυρα 25

οποτε το κανουμε εγκατασταση με την εντολη

sudo apt-get install postfix


επιλεγουμε y και θα μας εμφανισει τις επιλογες του postfix
επιλεγουμε ok δλδ παταμε το πληκτρο enter
*με το πληκτρο TAB αλλαζουμε επιλογη



τωρα επιλεγουμε Internet Site


εδω βαζουμε το Domain name μας


και εχει τελειωσει η εγκατασταση του Postfix

γραφουμε

sudo leafpad /etc/postfix/main.cf

σβηνουμε το (Raspbian)

πχ


γιατι δεν θελουμε να δινουμε πληροφοριες σε τι λειτουργικο εχει εγκατασταθει ο email server μας

πηγαινουμε κατω κατω και προσθετουμε στο τελος

inet_protocols = ipv4

πχ



και εκει που λεει myhostname = watch2me το αλλαζουμε με ολο ονομα του Domain μας δλδ watch2me.ga


αποθηκευουμε και κλεινουμε

κανουμε μια επανεκινηση της υπηρεσιας με την εντολη

sudo service postfix restart

πχ


!δεν πρεπει να δουμε καποιο σφαλμα

συνεχιζουμε

sudo leafpad /etc/postfix/main.cf

και προσθετουμε τις εξεις γραμμες στο τελος

home_mailbox = Maildir/
mailbox_command =

πχ


αποθηκευουμε και κλεινουμε

παμε τωρα να εγκαταστησουμε το Dovecot
το Dovecot θα μας επιτρεψει να ενωνομαστε με το προτοκολλο IMAP η POP3 ωστε να διαβαζουμε τα email μας


sudo apt-get install dovecot-common dovecot-imapd



οταν τελειωσει παμε να δημιουργησουμε τους φακελους που θα αποθηκευονται τα email

γραφουμε σε ενα τερματικο μια μια τις ποιο κατω εντολες

sudo maildirmake.dovecot /etc/skel/Maildir

sudo maildirmake.dovecot /etc/skel/Maildir/.Drafts

sudo maildirmake.dovecot /etc/skel/Maildir/.Sent

sudo maildirmake.dovecot /etc/skel/Maildir/.Spam

sudo maildirmake.dovecot /etc/skel/Maildir/.Trash

sudo maildirmake.dovecot /etc/skel/Maildir/.Templates

πχ


και

sudo cp -r /etc/skel/Maildir /home/pi/
sudo chown -R pi:pi /home/pi/Maildir
sudo chmod -R 700 /home/pi/Maildir

πχ


τωρα παμε να κανουμε μια δοκιμη με telnet

καταρχας πρεπει να το εγκαταστησουμε

sudo apt-get install telnet


οταν τελειωσει παμε να ελενξουμε

telnet localhost 25


αν δεν ειχαμε αφερεσει το Raspbian πριν οταν καποιος θα ανιχνευε τον Email Server μας θα του εμφανιζε αυτο


και ειναι γνωστο οτι Raspbian τρεχουνε συνηθως τα Raspberry Pi
και ειναι γνωστο οτι τα Raspberry Pi εχουν περιορισμενο Hardware και συνηθεις ρυθμισεις ασφαλειας

τωρα συνεχιζουμε

γραφουμε ehlo nickthesail0r
με την εντολη ehlo δηλωνουμε στον Email Server μας ποιοι ειμαστε και μας εμφανιζει τι επιλογες εχουμε

πχ

και


και στειλαμε επιτυχως το email μας τωρα οι εντολες

mail from: ειναι το email του αποστολεα
rcpt to: το email του παραληπτη
data λεμε στο postfix οτι θα στηλουμε email
subject: γραφουμε το θεμα του email και παταμε enter
και απο κατω το κειμενο και οταν τελειωσουμε παταμε enter βαζουμε μια τελεια "." και παλι enter και το στελνουμε
quit κλεινουμε την συνδεση με το postfix

βλεπουμε το email

πηγε στα spam γιατι δεν εχει το email TLS κρυπτογραφηση συν καποια αλλα τα οποια θα φτιαξουμε στην πορεια


οπως παρατηρησατε απλα ενωθηκαμε με telnet στον server και μπορεσαμε και στειλαμε χωρις να βαλουμε καποια κρητηρια συνδεσης η καποια επαληθευση

οποτε παμε να το διορθωσουμε αυτο

γραφουμε

sudo leafpad /etc/postfix/main.cf

και προσθετουμε

smtpd_recipient_restrictions =
        permit_sasl_authenticated,
        permit_mynetworks,
        reject_unauth_destination

πχ


παλι προσθετουμε

smtpd_helo_required = yes
smtpd_helo_restrictions =
        permit_mynetworks,
        permit_sasl_authenticated,
        reject_invalid_helo_hostname,
        reject_non_fqdn_helo_hostname,
        reject_unknown_helo_hostname,
        check_helo_access hash:/etc/postfix/helo_access


πχ

αποθηκευουμε και κλεινουμε

και με την εντολη

sudo service postfix reload

φορτωνουμε τις νεες ρυθμισεις

μετα

sudo leafpad /etc/postfix/helo_access

και βαζουμε μεσα

watch2me.ga          REJECT   Go Away!!!!!

πχ

αποθηκευουμε και κλεινουμε

τρεχουμε την εντολη

sudo postmap /etc/postfix/helo_access

και

sudo service postfix restart

παμε τωρα να ρυθμισουμε το Dovecot

sudo leafpad /etc/dovecot/dovecot.conf

βρισκουμε την γραμμη

#listen = *, ::

και την αλλαζουμε σε

listen = *

αποθηκευουμε και κλεινουμε

πχ



μετα κανουμε επανεκινιση

sudo service dovecot restart

μετα 

sudo leafpad /etc/dovecot/conf.d/10-mail.conf

αλλαζουμε 
mail_location = mbox:~/mail:INBOX=/var/mail/%u
σε

mail_location = maildir:~/Maildir


αποθηκευουμε και κλεινουμε

τωρα παμε να ρυθμισουμε το postfix για να χρησιμοποιει το Dovecot και να συνδεομαστε ασφαλες με SASL

sudo leafpad /etc/postfix/main.cf

και προσθετουμε 

smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes

πχ


αποθηκευουμε και κλεινουμε

τωρα 

sudo leafpad /etc/dovecot/conf.d/10-master.conf

βρισκουμε εκει που λεει

service auth

και το αλλαζουμε οπως στην εικονα κατω


αποθηκευουμε και κλεινουμε

μετα τρεχουμε

sudo service dovecot reload


αν εχετε κανει σωστα την αλλαγη δεν πρεπει να σας βγαλει καποιο σφαλμα

τωρα

sudo leafpad /etc/dovecot/conf.d/10-auth.conf

βρισκουμε την γραμμη
auth_mechanisms = plain

και αλλαζουμε σε
auth_mechanisms = plain login
disable_plaintext_auth = no


αποθηκευουμε και κλεινουμε

τωρα παμε να φτιαξουμε ενα ονομα χρηστη το οποιο αυτο ονομα θα ειναι και το αρχικο του email σας
πχ εγω φτιαχνω το info για να εχω info@watch2me.ga

sudo adduser info


θα σας ζητησει να βαλετε κωδικο και αν θελετε καποια στοιχεια


και 

sudo service postfix restart
sudo service dovecot restart

τωρα

sudo leafpad /etc/postfix/master.cf

και βγαζουμε τα # οπως την κατω εικονα


αποθηκευουμε και κλεινουμε

μετα



sudo leafpad /etc/postfix/main.cf

και προσθετουμε στο τελος

smtpd_tls_auth_only= yes


ξαναφορτωνουμε

sudo service postfix reload

τωρα

sudo leafpad /etc/dovecot/conf.d/10-master.conf

βρισκουμε την γραμμη service imap-login

και αλλαζουμε οπως την εικονα


αποθηκευουμε και κλεινουμε
μετα
sudo leafpad /etc/dovecot/conf.d/10-ssl.conf

και αλλαζουμε οπως την εικονα


και


μετα

sudo leafpad /usr/share/dovecot/dovecot-openssl.cnf

εσεις βαζετε το δικο σας domain η και να το αφησετε χωρις να αλλαξετε κατι δεν επηρεαζει πουθενα


αποθηκευουμε και κλεινουμε

μετα

sudo leafpad /usr/share/dovecot/mkcert.sh

και αλλαζουμε τις μερες που θελουμε να ειναι σε ισχυει το ποιστοποιητικο πχ εγω εβαλα περιπου 10 χρονια



αποθηκευουμε και κλεινουμε

μετα τρεχουμε

cd /usr/share/dovecot
sudo ./mkcert.sh


τωρα ξαναφορτωνουμε το Dovecot

sudo service dovecot reload

μετα

sudo leafpad /etc/postfix/main.cf

και προσθετουμε

smtpd_tls_security_level = may
smtp_tls_security_level = may
smtp_tls_loglevel = 1
smtpd_tls_loglevel = 1


αποθηκευουμε και κλεινουμε

τρεχουμε

sudo service postfix restart
sudo service dovecot restart

πηγαινουμε στις ρυθμισεις του router μας και επιλεγουμε DMZ και βαζουμε την IP του Raspberry Pi

τωρα ο Email Server μας ειναι ετοιμος απλα λογω SPAM δυστυχως ενας email server πρεπει να εχει DKIM SPF και DMARC records αλλιως οτι στειλουμε απο τον server μας θα πηγαινει στα spam των πελατων μας και δεν θα τα βλεπουν ποτε

οποτε σιγα σιγα παμε να τα φτιαξουμε

τρεχουμε την εντολη

sudo apt-get install opendkim opendkim-tools


μετα

sudo leafpad /etc/opendkim.conf

και προσθετουμε στο τελος αυτες τις γραμμες

AutoRestart                 Yes
AutoRestartRate         4/1h
UMask                         002
Syslog                          yes
SyslogSuccess             Yes
LogWhy                      Yes
Canonicalization          relaxed/simple
ExternalIgnoreList      refile:/etc/opendkim/TrustedHosts
InternalHosts               refile:/etc/opendkim/TrustedHosts
KeyTable                     refile:/etc/opendkim/KeyTable
SigningTable               refile:/etc/opendkim/SigningTable
Mode                          sv
PidFile                        /var/run/opendkim/opendkim.pid
SignatureAlgorithm    rsa-sha256
UserID                        opendkim:opendkim
Socket                        inet:12301@localhost



κλεινουμε και αποθηκευουμε

μετα

sudo leafpad /etc/default/opendkim

προσθετουμε στο τελος

SOCKET="inet:12301@localhost"


αποθηκευουμε και κλεινουμε

μετα 

sudo leafpad /etc/postfix/main.cf

προσθετουμε αυτες τις γραμμες στο τελος

milter_protocol = 2
milter_default_action = accept
smtpd_milters = inet:localhost:12301
non_smtpd_milters = inet:localhost:12301

πχ


αποθηκευουμε και κλεινουμε

sudo service postfix restart

μετα 

sudo mkdir /etc/opendkim
sudo mkdir /etc/opendkim/keys


μετα
sudo leafpad /etc/opendkim/TrustedHosts

και προσθετουμε αυτες τις γραμμες

127.0.0.1
localhost
192.168.0.0/24

*.watch2me.ga



αποθηκευουμε και κλεινουμε

sudo leafpad /etc/opendkim/KeyTable

προσθετουμε

email._domainkey.wath2me.ga watch2me.ga:email:/etc/opendkim/keys/watch2me.ga/email.private

εσεις βαζετε το Domain Name σας οπου λεει watch2me.ga

πχ



αποθηκευουμε και κλεινουμε

sudo leafpad /etc/opendkim/SigningTable

προσθετουμε

 *@watch2me.ga email._domainkey.watch2me.ga



εσεις βαζετε το Domain Name σας προσοχη μην μπερδευτειτε 

πχ αν το Domain Name σας ειναι koulacafe.gr θα βαλετε
 *@koulacafe.gr email._domainkey.koulacafe.gr


 αποθηκευουμε και κλεινουμε

μετα

!!!!εσεις βαζετε το Domain Name σας!!!!

cd /etc/opendkim/keys
sudo mkdir watch2me.ga
cd watch2me.ga

τωρα παμε να δημιουργησουμε το κλειδι

sudo opendkim-genkey -s email -d watch2me.ga


μετα

sudo chown opendkim:opendkim email.private

και παμε να δουμε το κλειδι

sudo nano -$ email.txt




το παμε στο cloudflare

και δημιουργουμε ενα TXT record


το κανουμε επικολληση


σβηνουμε τα κενα για να το παρει

πχ

επιλεγουμε save και μετα Add record

τωρα παμε για το SPF

 φτιαχνουμε ενα ΤΧΤ record

πχ


και βαζουμε

v=spf1 ip4:79.129.178.68 include:watch2me.ga ~all

εσεις βαζετε την εξωτερικη σας ip και το Domain Name σας


επιλεγουμε save και Add Record

και τελος παμε να φτιαξουμε το DMARC record

παταμε εδω
*Δυστυχως εχει αλλαξει απο την μερα που εγραφα τον οδηγο αλλα ακολουθηστε τα βηματα το ιδιο ειναι
βαζουμε το Domain Name μας και επιλεγουμε Submit

βλεπουμε οτι το SPF και το DKIM ειναι ενταξει
επιλεγουμε Select

επιλεγουμε next

επιλεγουμε None και next

βαζουμε το email μας που θα περνουμε τις αναφορες και μετα επιλεγουμε next


παλι βαζουμε το email μας

επιλεγουμε παλι None και next

δεν αλλαζουμε κατι και επιλεγουμε finish


το κανουμε αντιγραφη


παμε στο cloudflare και δημιουργουμε ενα TXT  record


και

παταμε save και Add record

μετα παμε στην σελιδα του DMARC

και επιλεγουμε Check

και



τωρα παμε να εγκαταστησουμε το Thunderbird

Το Thunderbird ειναι ενα προγραμμα αλληλογραφιας

παταμε εδω

το κατεβαζουμε και το κανουμε εγκατασταση


συνεχιζουμε με τις τυπικες ρυθμισεις


ξεκιναει η εγκατασταση

επιλεγουμε τελος


οταν μας ανοιξει παμε να δημιουργησουμε τον λογαριασμο email


επιλεγουμε παραλειψη και χρηση υπαρχοντος email


συμπληρωνουμε τα στοιχεια μας



επιλεγουμε χειροκινηρη ρυθμισει


κοιταμε να ειναι οι ρυθμισεις οπως την κατω εικονα
και Τελος


θα σας εμφανιστει προειδοποιηση ασφαλειας και επιλεγουμε επιβεβαιωση


τωρα οταν στειλουμε email δεν παει στα ανεπιθυμητα

και


Τωρα εχουμε στησει επιτυχως με ασφαλεια τον Email Server μας με το δικο μας Domain

Συνεχιζουμε με τον Web Server που θα φιλοξενηση την ιστοσελιδα μας

Σαν Web Server θα χρησιμοποιησουμε τον Apache
για να γλυτωσουμε χρονο με εγκατασταση Apache και SSL πιστοποιητικα θα εγκαταστησουμε το CertBot το οποιο ενα προγραμμα το οποιο εκδιδει SSL πιστοποιητικα για Web Server αυτοματα και μας κανει και εγκατασταση Apache κτλ θα δειτε στην πορεια

ανοιγουμε ενα τερματικο και γραφουμε

sudo leafpad /etc/apt/sources.list

και προσθετουμε

deb http://ftp.debian.org/debian jessie-backports main

πχ



αποθηκευουμε και κλεινουμε

μετα τρεχουμε

sudo apt-get update

μετα

sudo apt-get install python-certbot-apache -t jessie-backports


επιλεγουμε y και παλι y

οταν τελειωσει η εγκατασταση

sudo service apache2 start

γραφουμε

sudo certbot --apache -d watch2me.ga -d www.watch2me.ga

βαζουμε το email μας



αποδεχομαστε με Α τους ορους

επιλεγουμε 3

μετα 2



και εγκαταστησαμε επιτυχως SSL πιστοποιητικα στον Web Server μας

τωρα για ανανεωνετε δωρεαν τα SSL ποιστοποιητικα φτιαχνουμε cron job

τρεχουμε την εντολη

sudo crontab -e

κατω κατω βαζουμε

0 0 1 * * sudo certbot renew
01 0 1 * * sudo service apache2 restart

πχ


παταμε Ctrl+x επιλεγουμε y και enter για να αποθηκευσουμε

τωρα με τις εντολες εννοουμε οτι
καθε 1η του μηνα στις 00:00 θα προσπαθει να ανανεωσει τα πιστοποιητικα
και καθε 1η του μηνα στις 00:01 θα κανει επενεκινιση τον Apache

τωρα λιγα λογια
το LetsEncrypt ειναι ενα κινημα το οποιο μας παρεχει δωρεαν SSL DV (Domain Validator) για 3ς μηνες και μετα παλι πρεπει να τα ανανεωσουμε και παλι δωρεαν αλλα με το CertBot δεν χρειαζετε γιατι μας δινει την δυνατοτητα να το το ρυθμισουμε να γινετε αυτοματα

τωρα για να δοκιμασουμε αν ολα ειναι ενταξει

ανοιγουμε στο περιηγητη μας τον συνδεσμο του domain μας

πχ
https://watch2me.ga


τωρα στησαμε και τον Web Server μας οποτε μενει να ανεβασουμε την ιστοσελιδα και να την φιλοξενισει

πριν ξεκινησουμε τρεχουμε την εντολη

sudo apt-get install php5 libapache2-mod-php5 -y



μετα παμε να εγκαταστησουμε Mysql γιατι χρειαζομαστε μια βαση δεδομενων

sudo apt-get install mysql-server php5-mysql -y


βαζουμε κωδικο για το MySQL βασης δεδομενων


επιβεβαιωνουμε τον κωδικο 



μετα 

sudo apt-get install php5-curl php5-gd php5-intl mcrypt php5-mcrypt

και

sudo service apache2 stop

sudo chown pi /var/www/html/

Τωρα εχουμε 2 επιλογες για να φτιαξουμε το eshop

σε Opencart η Prestashop

ας ξεκινησουμε με PrestaShop

απο το Raspberry Pi

παταμε εδω

κατεβαζουμε το PrestaShop



οταν κατεβει

τρεχουμε την εντολη στο τερματικο

sudo chown pi /var/www/html/

παμε στις ληψεις





επιλεγουμε με δεξι κλικ το συμπιεσμενο αρχειο Prestashop


και αλλαζουμε την διαδρομη εξαγωγης

απο


σε

τωρα εφοσον μεταφεραμε στην διαδρομη που φιλοξενει ο Web Server μας τρεχουμε την εντολη

sudo chown -R www-data:www-data /var/www/html/
sudo usermod -a -G www-data pi

sudo leafpad /etc/php5/apache2/php.ini

παταμε ctrl+f και βαζουμε στην αναζητηση upload_max_filesize

και το αλλαζουμε σε 16M



αποθηκευουμε και κλεινουμε

τωρα μενει να φτιαξουμε την βαση δεδομενων οποτε γραφουμε στο τερματικο

mysql -u root -p

βαζουμε τον κωδικο που βαλαμε πριν κατα την εγκατασταση του MySQL


και καθως εχουμε ενωθει στο MySQL (Προγραμμα Διαχειρησης Βασης Δεδομενων)


παμε να δημιουργησουμε την βαση δεδομενων για το PrestaShop

CREATE DATABASE prestashop;


τωρα τον χρηστη που θα διαχειρηζετε στην βαση


CREATE USER prestauser@localhost;


βαζουμε κωδικο για τον χρηστη

SET PASSWORD FOR prestauser@localhost= PASSWORD("kodikos");

εσεις το kodikos βαζετε εναν κωδικο δικο σας


και δινουμε δικαιωματα στον χρηστη να εχει προσβαση στην βαση δεδομενων

GRANT ALL PRIVILEGES ON prestashop.* TO prestauser@localhost IDENTIFIED BY 'kodikos';


τελος

FLUSH PRIVILEGES;

και 

exit


ξεκιναμε τον  Web Server μας

sudo service apache2 start

και βαζουμε στο url του περιηγητη μας το ονομα τομεα μας (Domain Name)
και ξεκιναει να φορτωνει εγκατασταση

σε λιγα λεπτα θα μας εμφανισει την βοηθεια εγκαταστασης
επιλεγουμε Next


αποδεχομαστε τους ορους και Next


παλι Next


βαζουμε τα στοιχεια μας προσεχτικα και επιλεγουμε Next


βαζουμε τα στοιχεια του MySQL και επιλεγουμε Test your Database κτλ


και αρχιζει η εγκατασταση



και τελος


τωρα παμε να διαγραψουμε τον φακελο install

sudo rm -r /var/www/html/install/

και μετα για να δουμε την url του admin

sudo ls /var/www/html/


και κανουμε login σαν διαχειριστες με

https://watch2me.ga/admin288fr6qc7 σε εσας θα ειναι διαφορετικο


και εχουμε συνδεθει σαν διαχειριστες στο eshop μας


πηγαινουμε και ενεργοποιουμε το SSL και αποθηκευουμε


μετα στο Design και επιλεγουμε save ωστε να εχουμε το Default Τheme


πχ



στην ουσια τωρα το eshop μας ειναι ετοιμο κατα 50%

μενει να περασουμε προιοντα
-τροπος αποστολης και χρεωσεις (πρεπει να κανουμε μια συμβαση με μια ετερεια Courrier)
-να το φτιαξουμε το λογοτυπο μας
-να βαλουμε τροπος πληρωμης πχ παραλαβη απο καταστημα ,αντικαταβολη ,μεταφορα τραπεζης,πληρωμη μεσω paypal κτλ
-να φτιαξουμε διαφορες πληροφοριες
-αν εχουμε φυσικο καταστημα να το καταχωρησουμε στο google maps
-να το συνδεσουμε με κοινωνικα δικτυα

πραφανως δεν μπορω να δειξω παραδειγματα για οτι eshop μπορειτε να φτιαξετε εσεις οποτε
παμε στο υποθετικο μου μαγαζι με ρολογια και αντρικα αξεσουαρ

Watch2Me

τωρα ασχετα αν εχετε επιλεξει PrestaShop η Opencart παμε στο σχεδιασμο του λογοτυπου

εγω χρησιμοποιω χρονια το Gimp
το Gimp ειναι ενα προγραμμα ανοικτου κωδικα επεξεργασιας εικονας σαν το Photoshop αλλα ειναι δωρεαν

για windows μπορειτε να το κατεβασετε απο εδω

και αν θελετε να το κανετε εγκατασταση στο Raspberry σας απλα τρεξτε την εντολη

sudo apt-get install gimp

τωρα εφοσον καναμε εγκατασταση το gimp πρεπει να σκεφτουμε τι χρωματα θα εχει το λογοτυπο μας

πχ εγω θα διαλεξω το καφε για να δωσω ενα κυρος

ενας γρηγορος τροπος για να φτιαξετε λογοτυπο εφοσον δεν θελετε να πληρωσετε καποιον γραφιστα

ειναι γραμμαΕΙΚΟΝΑγραμμα

οποτε αναζητουμε στο Google για ρολογια

πχ


κατεβαζουμε την εικονα

και τωρα για τα γραμματα ενας ευκολος τροπος ειναι εδω


το φτιαχνουμε σιγα σιγα


και


οποτε τωρα παμε να το βαλουμε στο PrestaShop

πχ



τωρα οσο αφορα το θεμα (Theme) της ιστοσελιδας σας η αγοραζετε ενα θεμα η βρισκετε καποιο δωρεαν η αλλαζετε το default

εγω θα σας δειξω πως μπορειτε να αλλαξετε το Default Τheme με λιγο αλλαγη στον κωδικα

σε αυτο θα χρησιμοποιησουμε το Firefox for Developer





Παυση!!!!!

ΔΥΣΤΥΧΩΣ δεν εχω χρονο να τελειωσω τον οδηγο καθως και να ασχοληθω αυτο το διαστημα με το blog

Καποια στιγμη θα τελειωσω τον οδηγο......

Μεχρι στιγμης στησαμε την ιστοσελιδα σε prestashop

με τον ιδιο τροπο μπορειτε  opencart κτλ