How To Create Your Own Bulk Email Server Using Virtualmin & PHPList on a VPS running Ubuntu 14.04?

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
[Music] hello everyone this is just me Singh from Delhi developer and today we are going to learn how to create your own bulk email server using virtualmin and PHP list on a virtual private server running Ubuntu 14.04 so the important thing to notice here is that this virtual private server VPS is going to need the only thing that will cost you it will cost you somewhere near a dollar ten a month apart from that he went to 14.04 is an open source and free operating system virtualmin is an open source and free control panel which will be used to control your entire self PHP list is an open source and free application a web application that will be used to send bulk emails so this is our purpose our purpose is to install PHP list and make it work so that we can send as many bulk emails as they want now if you've used MailChimp Aweber GetResponse or Constant Contact then you will know that these are online web services that are used to send bulk emails now the problem with these email services is that they offer you only a limited number of subscribers and a limited number of free emails per month so for every extra subscriber they charge it and some of these services also charge you for extra emails per month so to get rid of these restrictions we are going to create our own VPS we need a virtual private server with 2gb RAM and you can buy this virtual private server from digitalocean only note or any other 50 company of your choice now even if you are not a semi technical person you might be able to complete this set up if you follow everything step-by-step in case if you think you are stuck somewhere and your able to study the installation of the solo in that case you can call us or email us and we'll set up the server for you for a small amount of 1,200 now I create your own bulk email server the first reason is that it costs you very less it costs you only dollar 10 a month which is very less compared to what these companies charge you for it stress of strivers then you can add as many subscribers to you so as you want you can send as many emails and as many campaigns as many newsletters from yourself another reason to create your own bulk email server is that it is very easy to use because HP list is a very simple software it is mostly self explanatory so what all do you need firstly you need a virtual private server with 2gb RAM and Ubuntu 14.04 LTS pre-installed Ubuntu 14.04 as an operating system and LTS means long-term support so why do we need 2 GB RAM of a VPS because in a server you're gonna run some software's like MySQL which will need at least 2 GB of RAM you can go for 1 GB but you will find yourself in some troubles so go save go for 2 GB ROM ok now important thing to notice here is that this VPS is not of the kind that certain hosting companies sell along with the control panel called Suika we don't need cPanel here you only need a VPS then the only an operating system installed called Ubuntu 14.04 we don't need anything else on our radius so you can buy such a VPS from the solution it is a very good company Linode this is also very nice company so you can buy it from any other company but remember that this virtual private server should only have an operating system installed and nothing else you need a clean installation of this operating system on the CPS to be able to proceed so digital ocean sells this 2gb ram virtual private server for dollar 20 a month cleanup sells the same nearly the same to 0 for 8 mb or you can say 2 gb ram server $4 tenement and it gives you 30 DB of storage with it a cpu one sip you call 2 terabyte of multi data transfer so this is what we are going to go for you're going to create this virtual private server you can also go for date solution but I prefer Lea node because it is cheaper so why go for ubuntu 14.04 while the latest version of Ubuntu is ubuntu 16.04 at least at the time of creating this video this is the latest version it is also an LTS version at least means long-term support now why am I not going for this one because I found some problems in it I tried to create this entire setup in given two 16.04 and I found some problems in between though I was able to fix those problems but we don't want to go through all that hazard he want a very piemonte are an installation to be a breeze to be very simple straightforward no glitches in between I even tried it on sent to a7 and sent over 6 and I found myself into some problems so though those problems can be fixed but we don't want to go through all that you want a clean installation without any trouble so go for Ubuntu 14.04 apart from this VPS ready one two you need a domain name now I have bought my domain name from a company called dot DK it gives you domain names for free I have what a domain name called my domain name is Dani developer mill doc TK so yes you are your website is hosted on abc.com and your official emails are something like something at abc.com then your email server should have a domain like ABC mail calm the point is that it should be a little different while somewhat similar also the reason of keeping these two domains different is that even in case your wealth marketing emails going into spam that does not affect your official emails it might be going through this domain so by an email address like this I have got doc TJ domain because it is free I would prefer that you buy dot-com or whatever matches your official email address apart from that you will need a software called PHP list the software is used to send the bulkiness it is a web application you'll need Virtual min which is a control panel to control your entire server apart from that you will also need something called putting now this is a software that you can download here by clicking here in case if you are using Windows download either of these according to whether you have 32-bit windows or 62 bit windows so you can install through these msi installers now what will this software putty be used for it will be used to connect to our virtual private server and to run commands on it I have already installed Cody I have it here let's turn it on we will use it later I will keep it aside let's get started let's create VPS I will not be using this solution i'll be using Linode let me click here add Alina Ally node here is nothing but about you private seller I'll select this one okay 2 GB RAM 2 0 4 it means 2 GB RAM 1 0 2 4 means 1 GB RAM this is 4 GB RAM I'm gonna go for this one now in location I'm going to select singable since it is nearest to my location you can select which one is nearest to you have this little Somali node has been created this is Molly node it has been just great and I'm gonna click on it now I don't see anything here this just a brand new Lee node with no operating system installed so I'm gonna click here on rebuild to install an operating system now I'm gonna install Ubuntu 14.04 you don't see it here you'll see it in older distributions you want to fall in point 0 4 STS I'm gonna select maximum size for the swap disk the deployment this size will automatically be selected I'm gonna set some room password I'm gonna rebuild my Lee note if I scroll down here I can see that it's going through certain steps and has gone through its initial configuration and system shutdown then the disk is being created then this web disk is being created let's read for it to complete and then we'll click here on this button to start our new node because currently it's turned off so all these jobs are complete now we are going to click on this boot button you turn only node on since it is powered off currently let's see let's scroll down and see it's booting it's turning on our virtual private server is turning on so sup and running so the next thing we are going to do is we are going to go here and remote access we're gonna copy the IP address now what we are going to do is we're going to go to our domain registrar's website my domain registrar is phenom you can be already calm or any other domain registrar of your choice now I'm going to go to manage domains now I'm going to set two things here the first thing is name service and the second thing is blue record first I'm gonna set up named service how do we do that I'm gonna go to name service okay so I can see these default name service I'm gonna replace them by my own name service of my domain name is Delhi developer mail for TK then I'm gonna take here custom name service I'm gonna set up my own same name suppose I don't need these ones now I'm gonna type here and s1 dot my domain name I'm gonna type it and has to my domain name so these are my new name service and s1 dot Delhi developer me love TK in a studio Delhi developer male dog people now these are called vanity name servers which means service by the name of my own domain my own name cells then I'm gonna click on change name service so I'm gonna go and check whether they have been changed okay I have my new name server setup now this is the first thing I've done is that I've changed my name service the second thing that I'm gonna do is I'm gonna create my blue records if you have bought your domain from GoDaddy calm then your blue records are called host names and already so you will be set both names in godaddy.com here in freedom they are called blue records they might be called something else on your domain registrar it depends upon when you start you have so in case you want to see what do recalls are called on your domain register you just have to type how to set up blue records on your domain registrar lets its host gator then you're gonna find the steps how to set up blue because on Hostgator so in case of my domain registrar you reckons are called only so it's quite simple for me I'm going to click here on register blue comes now I'm going to type and s1 dot any developer male tour TK is already been written through either me to type it I only need to type NS one I'm gonna please share the IP address of my virtual server I'll copy it from here I'll paste it here I'll click on save now it has saved my glory Cod I'm gonna again type ns2 doc Danny developer doc TK I'm gonna piss my IP address I'm gonna click on Save Changes so my dude cause having safe now in case if I want to check whether the Guru codes have been updated whether the name server has been updated globally I can use a website called what my Deaton is dot net oh this is a very nice website the thing is that the change in name servers and the change in glory codes need to be known to DNS servers throughout the world this is called DNS propagation and DNS propagation takes some time so let's check whether DNS propagation has been done already I doubt it would have been done I'll type a domain name here I'll type NS to check my name service has weakened search okay so we do not have any name service updated throughout the one so next thing I'm gonna check is an Islamic dot Delhi told upon me in dot TK and I'm gonna select a to check whether my blue because have been updated of course I think none of these two things have been updated but if you wanna check them again later on so you want to check this again let's keep it aside here so now what we are going to do is we are going to connect to this virtual server using putty so we will copy this IP address we will open put it he will paste the IP address here we will let the port be 22 we will leave the connection type as SSH and we will name this server I can give it any name I'll give it daddy in there a lover mail TK server so you can type any name you want here then we will go to data under connection and here we will type route because route is the primary user of Ubuntu and I want that when a connection to the server is made then put it should automatically login me with the username root then click on save so this correction has been saved here now we will double click on it to start the connection now it will show you this morning because we are trying to connect to the server for the first time so just click on yes and the warning will never appear again so you can see that booty is trying to log me in using the username root so I'll just type in the password so the first thing that we are going to do is we are going to change the whole thing now you can see that I have been logged in with the username root and this human too is actually not just the operating system it is also my host name so if I type host name I can see that Ubuntu is my host name and if I type host name space minus F then I can see that this is my full host name and I want to change both of them now [Music] so I'll just open a notepad here now I want my host name to be a tube st host and I want my full host name to be host dot this complete domain name so this is going to be my full host name and this is going to be my host name so how are we going to change the whole thing we are going to change our host name in three steps the first step will be to edit a text file the second step will be to edit another text file the in the third step you will run a command so let's go to the first step we will type cat space / e TC slash host name this is the full part of the text file host name that we want to edit the contact command will show us the contents of this text file so we will just press ENTER I can see the contents of this half text file contain only one word which is Ubuntu and I am going to change it to host so now I will type nano space slash et Cie / post name now nano is a text editor in Ubuntu using this he can change the content contents of a text file so I'll just press ENTER to start Nano so we are inside nano text editor here we can change the contents of this text file I will just replace Ubuntu by the word host and then I will type control X to exit it will ask me whether I want to save the changes I will press yes and it will ask me whether I want to change save the changes to the same file name and I'll press ENTER and I'll just run the cat command again to see if the changes have been made yes we have changed changed the contents of this text file so now we will edit another text file the other text file is /et see slash hosts now we will see the contents of this text file so when I run this command I got these as the contents of this text file and this is the line that we are going to change I'm going to type host in place of Ubuntu and I'm going to type host or Delhi developer main door TK in place of human two dot members dot lino calm remember that you only have to change this line which contains the IP address 127.0.0.1 not this line which contains the IP address 127.0.0.1 so let's change the contents of this text file I'll type nano slash EDC slash host now we are going to change the second line I'll replace Ubuntu by post and I will replace this whole line by this full hostname remember that once you copy something from somewhere and put if you want to paste it all you have to do is just right click so that is done now I will again press ctrl X to exit and press Y to Save Changes and then press ENTER to save the changes in the same file now I will just check whether the contents have been updated so when I run this command I can see these are the contents of the text file and this statement this line has been changed so we have done the first two steps of changing the hostname we have edited this text file host name text file then we have edited this host state file now we will run a command the commander's host name host and press ENTER now your host name should have been changed now we will type host name to lure our host name which is host just as we were expecting and we will type host name space - F to see our full host name which is just as we wanted so our host name has been changed I just closed this node now I can see that my command line still shows my old host name which is Ubuntu so what we will do is we will just close poutine okay and then start putting again he will start the same connection just double click on this I will just type the password and you can see the new host name has been a bit ined now we are going to update our system by using the command at apt hyphen get space update now applet is actually a package manager in Ubuntu it is used to install new packages and update the current packages so this command will update the current packages so I'll just press ENTER and they should not take more than a minute food is done so all our packages have been checked for updates the next step is to download the virtualmin installation script now what we are going to do is we are going to create a new folder named downloads inside our root folder we will switch to our root folder by typing the command CD space slash and then we will type LS to see the contents of our root folder so here they are we can see some directories and some files now what we will do is we will create a new directory downloads inside this root folder we will use the command mkdir space downloads enter now if we press even if we use the come on LS you can see that the new downloads folder hab has been created now we will switch to that folder by you running the command CD space downloads and then inside this downloads folder we will create a new folder named virtualmin and then we will switch to this folder virtualmin by using the command CD space virtualmin and inside this folder virtualmin we will now download the script the virtualmin installation script now virtualmin is actually a control panel - that we will be using to control yourself now you can download this script from here also from but if you type virtualmin download then we can see just click on the first thing and you will find this statement here so this is the official installation script link of virtualmin but this is not what we will be using because this is the latest version of the script and there is a problem with the new des version of the script that it installs php5 point and sorry PHP 7 on your ubuntu 14.04 and we don't want PHP 7 because PHP list is not that compatible being with PHP 7 and both PHP list and the postfix SMTP server show some problems when we install PHP 7 so VV we are going to use PHP 5.5 so we are not going to download the which shall be the installation script from here let's close this instead you will find a link in our blog this is the virtualmin installation script this is the URL of the script I just copy it and I'll use W git command to install to download the script W get is actually a utility that can be used to download files on your server so I'll just use W get and then I will paste the script so this is the URL of the script that you will find on our blow cut so this is the URL of the strip that you will find our cut so this is the URL of the strip that you will find in our blog and in the description of this YouTube video so we will press ENTER to download the script using the W get utility now if I type LS and I can see that the script has been downloaded but it is inside a zip file so I'll type unzip space install dot zip so unzip has not been installed so what we are going to do is we are going to install the unzip package first we will again use apt - get to install unzip I'll use apt - get down unzip it will ask me whether I want to okay so it is just downloaded and installed unzip now I should be able to run that command unzip space installed or zip so it has just unzipped this file and it has extracted this file from the zip file and this file is installed dot SH so this is the script that will install virtual mean on this system so we will to run this script we will type SH space install notice it and we will press Enter now it will ask me whether I want to continue or not and it will show me a warning that if we don't have one of these operating systems then the installation script we'll feel but I am sure that our installation script will not fail because we have Ubuntu 14.04 so J let's just type Y and press ENTER now this installation of the script should not take more than 15 minutes so I'll just pause the video till then and then I will resume it again so we are back and the instruction script has finished installing virtualmin and various other software packages and it did not even take ten minutes so now the next thing that we are going to do is that we are going to visit our server and the browser using virtualmin so what we will do is we will copy this IP address again and we will open a new tab we will type HTTP colon slash slash then that IP address colon 10,000 and we will press ENTER now Chrome will show us a warning that the site is not secure because an SSL certificate has not been installed on this website yet so we will click on advanced and then we will click on proceed even though it is unsafe we will just want to proceed for now and here we will type the username and password of a server it is the same username and password that we used in putty the username is root and the password is the one that we had set here while rebuilding the system I'll just type in the password and this 10,000 almighty withstand housing POTUS to actually access virtual mint on a server together we are actually going to log into virtualmin so there you go we have logged into virtual min and now we are going to go through the post installation visit so just click on next now select YES for both these quotients we want to preload virtual mini libraries so that virtualmin runs fast and we also want this we want to run the email domain lookup server so that email services like hotmail can actually verify that an email has been sent from our actual server or not so all our emails can be verified by hotmail just click on next so now in this step we will select YES for this question because we want to run the clam a V so a scanner clam a V is an anti-virus software which will scan all our incoming emails for viruses so just select yes and click on next now we also want to run this Pam SSN server filter so that all our incoming emails are scanned for spam click on next then we are going to run my skill server the yes here and we are not going to run the post gray SQL Server so select no and click on next now we are going to set the mask and password now you will be able to see Mahamaya skill password but that does not matter because by the time you will be watching this video the server would have been deleted now I would definitely use stronger password for production servers so I'll suggest you to do the same now leave this setting as default since we have a 2 GB server so we will select this option and click on next now in this step we will type our primary name server and secondary name server the same name servers that we used here and my name servers were and s1 dot Delhi developer means of decay and NS 2 dot my domain name so I'll replace this host by n plus 1 this will be my primary name server my secondary name server will be NS 2 and remember that you have to click here you have to check this checkbox if check resolve the ability this is because we do not have the DNS records for these two name servers in our server these DNS records will be created after we create something called a virtual server inside virtualmin click on next now it is asking whether I want to store stronger passwords or plaintext passwords I want to store hashed passwords which is more secure so click on next and you are done the virtual main post installation configuration is now complete just click on next and the first thing we will do is we will switch the theme because we want to use the new virtualmin theme which is much better than the one that we are looking at right now so just click on switch things and you'll see a new updated theme of virtualmin so just refresh the browser since the theme has not properly loaded we just refresh the browser to let the dream load properly so I just refreshed the screen again the browser again and I can see the new team see now the next thing is to scroll down here and click here recheck and refresh configuration this will just analyze our server and then show that it is ready to run virtualmin so it is done you can see that Passover is ready to be used by a virtual men now we will just update the packages on ourselves just click on this Bell and then in notification you can see that 92 packages are available to be updated we will just click on it and here we can see the 92 packages which are to be updated just drawn down till here and click on update selected packages okay now this is just the list of the packages the packages have not been installed yet so just scroll up and here you see the install button this was just building complete list of updates so just click on Install Now to install the packages so this might take a while I'll pause the video again and then we will resume the video and all the packages have been installed always remember that while you can see this loading icon you should not do anything you should not click anywhere until the loading is finished so I'll just pause the video for now so we are back and as you can see all the packages have been successfully installed so let's just return to the package list and we can see that no more packages are available to be updated so so as you can see that virtualmin has two parts Redmond and virtualmin now Redmond is used to control you the settings of your server and virtualmin is used to control individual website now for each website we will create a virtual server so inside our VPS we are going to create further virtual servers and each virtual server will be for an individual website so let's first go to the admin and then click on servers and then click on bind DNS server so here we can see DNS zones now we do not see any DNS zone for our domain name this is my domain name and le developer meal or TK so they should be a DNS zone here for the return of a meal or TK now the DNS zone will automatically be created after we create a virtual server for Delhi Tonopah male dog TK so the next step is to create a new virtual server so we are gonna copy this domain name and we are going to paste the domain name here this is our primary domain name for the searching server we will just use a password and then I'll click on enable features and we will select all the features we want an SSL certificate on a virtual server for my domain name and I also want an FTP connection to my server so click on create self so you can see it is adding a new B&S zone which we will just check in a minute so I'll just remind you again don't do anything until this loading icon is still visible so the server has been created the loading icon has come so it means that the job is done so now we are going to go to webmin again we are going to click on servers then bind DNS server now we can see our a DNS zone for our new domain name for which we just created a virtual machine which is Teddy dopamine door TK just click on it then we can see all the types of records these are the ones that we are interested in so we are just going to click here on all you can see the DNS record for our domain here it is the haricot we can also see the NS one records for our name servers and in a stool cord and we can also see the host or the leader of a means or TK for our host name so we can also see the a records of name servers and the NS records which says that this website the name server for this website are these now what we will do is we will go back to the website what's my DNS top net and we will check if the name servers have been propagated so this sometimes happens ever token mismatch just reload this page and check the names I was again so he can see that the name servers have been propagated perfectly he will also check the glory codes which is the IP address part and his font or Delia local mail or TK he will type tennis dot Delhi don't know Camille dot TK here we will select a here and we will take on search so we can see the same IP address of the server for NS one nil also check it for an s2 which should definitely shows the same so it's working so our DNS record for the server has propagated throughout the world now we will go back to virtual min and since the DNS because have been created now we are going to open this we are going to copy this URL click on a new tab paste it here and we are going to replace the IP address by our host name just copy the domain name from here we will type host dot our domain name and this whole thing is nothing but our host name for ourselves which we had set up here you can see so input you can anytime type clear command to clear the screen so we just visit this URL and this should work now you can see that the SSL certificate has still not been installed we will very soon install this SSL certificate and get rid of this Cross on HTTPS and we will get a green lock here which will mean that our website is secure click on advanced then click on proceed you'll see the screen just login to your virtualmin using the same root username and the password for the server root user so they easily have logged in to the virtualmin control panel using our post name instead of the IP address so we will not need to log in using our IP address again so we can close this for now so now apart from logging into virtualmin using the root account it will also log into virtualmin using the account of an individual virtual server so just open a new tab type HTTP colon slash - you complete domain name without the word host and then colon 10,000 it's basically the same URL without the word host press ENTER click on advanced click on proceed now Haley will not type the username and password of the root account in fact the username and the password for the virtual server which we have created for Delhi developer male of TPA now just click on edit users you can see a new user has been automatically created whenever a new virtual server is created for a domain a new user is automatically created and username is nothing but the first part of our domain name without dot TK in your case it can be calm so just remove the dot-com the remaining part is your username so we will just for username we will just copy this and paste it here Delhi developer meal without the dot TK for the password we will use the same password that we had used here while creating a new virtual machine while creating this virtualmin this virtual machine our head path enter the password here type the same password so we have locked in a steady tone upon me okay now this is in here we have logged in using the root account and here we have logged in using the Delhi developer main account here the domain name is host of the needle per meal or T key which is our hostname and here the domain name is the harshman's domain name so this is if you have you cPanel so you will be able to understand that this root login is analogous to WH M it is used to control the entire so and all its accounts all the virtual server accounts and this is analogous to cPanel which is used to manage an individual account so both of these have lemon and virtualmin you will see more options here in the root account you will see fewer options here in the government of a virtual server account you will see more options here also in virtualmin and fewer options here in the virtual men of an individual account so the next thing that we are going to do is we are going to use the root account and we are going to click on virtualmin and then we will go to server configuration and we will click on manage aces and certificate then we will directly go to the last tab which is let's encrypt and the lesson let's encrypt is actually a website or an organization to be more correct which offers free SSL and TLS certificates so let's encrypt will give us a free SSL certificate which is be installed automatically and let's encrypt is an open certifying authority so here mmm instead of using the default option which will install the SSL certificate for this and this domain names we also need an SSL certificate for this domain name host or Delhi developer main top ticket so what we will do is we'll copy this click here domain names listed here should now have the necessary certificates and you'll add a third domain name here which is post dot Delhi Telecom mean of the case who will get an SSL certificate from all these three domains the host name the domain name of our virtual server and that a domain name of a virtual server if it's with www live this option to two because let's the only problem with let's send crypto SSL certificate says that you have to renew them every three months so this option months between automatically enable this option will actually renew the special certificates every two months so they will be renewed even before they expire so just click on request certificate so you can see it is requesting shutting it from let's encrypt we now I think that this can take a while so I just pause the video and play it again when this is done we are back and the assistant certificate has been installed now what we will do is we will click here on manager certificate again and we will you can see that the SSL certificate has been installed and the certificate authority is let's encrypt so we are going to copy this SSL certificate to all the other servers we are going to copy it to web min so that we can see it here and we login to our virtualmin we install copy to use them in which is nothing but an email client that comes with virtualmin you'll copy it to do' court which is an IMAP and pop3 server will copy it 206 this is the most important thing because this is our SMTP server postfix will be used to send me mail and we are also going to copy the same SSL certificate to our FTP connections so let's do it one by one just remember that this and this is very important if you find an error in any of the remaining so this is it's okay so let's start from this one so it is done SSL certificate has been copied to webmin and it has all Grameen has also been configured to use it click on manage assist certificate again and then ok now we're min is done let's click on user min then click on manage SSL certificate again let's click on door kaat is done then click on here again oh you know by default when you click on an option and the certificate is copy the option should disappear you can see that the dovecot option disappeared but the admin and user man did not disappear so this happens sometimes but we are sure that the certificate has been copied so it is ok if these don't go anywhere these buttons still appear let's just go to the next step let's copy the SSL certificate to post fix it is done now click on manage this is a certificate again then the last thing copy that says will certificate to the FTP server so it is done let's click on manage certificate again now you can see that the certificates have been copied to the to every service including these two even though these buttons did not disappear so the certificate should appear here and here now to see them we will need to close our browser and open it again I'll just close Chrome I'll open Chrome again I'll just press control shift T to open all my previous tabs see let's maximize and you can see that we have an SSL certificate here and here both are secured le developer top TK is secure and the host or deliver local mail dot T key is also secure let's just log in here with the root login and let's just log in here with the individual login of our virtual machine you can click here and remember me if you want to we can close this tab you will not need this again we can also close this tab since the DNS propagation is complete we will not need this again too we can also close this tab we will not need a meet to access our domain registrar again so these are the two things the root login and the virtual server login now we are going to create a new MySQL database for our new virtual server now we cannot create it here by default so we will create it using the root login click on virtual machine click on edit databases then click on create a new database we will name this new database PHP list database because this database will be used by PHP list so the database server will be MySQL only in the additional options select utf-8 for the character set and for the collation you need to select utf-8 general C I here it is and click on create now we will create a new user users can also be created here so you can just click on let's just do something in the using the virtual server login let's click on users you can also do it here if you want to but let's do something here and phone um you click on edit users then click on add a user to the server we will call this user info the email address of this user will be info Delhi don't know Camille or TK we will very soon see that the user name of this user will be in 4 dot then he told up a meal so let's just type the user email address set the password and then just go down here to other user permissions here we are going to let this user access this database that we have just created PHP - database just click on this button to grant access to this database these are the allowed access databases just click on create to create this user now we can see that this user has been created and it has been given the username info dot Delhi de la famille we will just open a notepad and copy this username so this was my username the past of my password was Danny one two three now there is a catch here though I have noted down this username but this is username applies to IMAP pop3 FTP and also postfix server but it might not apply to my screen server because sometimes since there is a limit to the length of the username in my school server these user names are shot down to lesser characters so let's just check it let's just verify just go to the root logon then click on admin then go to servers MySQL database server then click on user permissions here you can see that the username for my SQL is different it is info dot del ETA look and not the complete username so this is a catch always remember that always remember to verify the username for my skills server it might be different from the original username so I'll note this down username for my SQL will be in food or deli develop and not in photon deli developer made so this is a short username because of limits of my skill for username lengths so we will use this username to log into the oh six seven and this username to log into the my school server the password will be same for both so we are now going to install or you can see download PHP list on our server and we are going to configure it this click here in the virtual machine login click on webmin click on others then go to file manager inside the file manager you will see this public HTML folder click on it create a new folder here a name directory call it PHP list create this directory go inside this directory by clicking on it and here we will download PHP list open a new tab now I have the link of PHP list here you will find it in our blog article and you'll also find it in the description of this video so visit this URL here we can real download the zip file so we will not download it actually here we will just copy this direct link copy link address and when the download dialog box appears we will just close that dialog box just cancel it we don't want to download we just wanted to copy this link address so go back to your virtual machine click on file click on download from remote URL paste the URL that you have just copied leave the username and password field empty click on download so it has been downloaded ok now we want to unzip this but we will not get an unzip option that is because this file does not end with the extension dot zip it ends with dot zip quotient mark article - blah blah blah so just rename it to PHP les docteurs it didn't rename it just remove all the extra stuff just call it PHP list dog zip so now since the finding and set dot zip it can be extracted we just lay right click and click on extract so you can see it has been extracted here so just click on this folder go to the public HTML folder okay now the first thing is that don't confuse this public HTML folder with this public HTML folder which already existed on your virtual machine go inside this public HTML folder come inside this lists folder now from this list folder we are going to copy all these contents to our original page finished folder just again I'm telling you don't confuse between this public HTML folder and this public HTML folder we are going to copy the contents of list folder to the PHP list folder so we are inside the list folder click here to select all click on edit let's just cut to move all these files and let's go to our PHP list folder here we will paste all those files and folders and then we will delete these too this could edit and click on paste now we will delete this extracted folder and the origin of the file the right-click and delete so now we have PHP list installed inside of PHP list folder click on config folder now this is the config file of PHP list and this is an extended version of the configuration file so we want to use the extended version so just delete this original config file which is which does not have all the settings and rename this extended dot PHP file we name it - only config dot php' now we are going to edit this config file to configure PHP list right click on it and click on edit now the first settings that we are going to set are the database settings now leave the data based host to localhost now the database name will be the database pain that we have given here while creating the database click on edit defined database inside virtualmin and you can see the database name was PHP less database I'll just copy it and paste it here PHP this database the database user is actually the - cue user remember the my screen user was different from the postfix user this is the username for postfix and this is the username for MySQL copy this my skilled user paste it here this is my password password for both will be same type it here so this is my username this is my magical password this is my database name now if you scroll down you will find a line that says page root is equal to something now instead of lists we will type here PHP list so and this setting page root should be equal to slash PHP list now if we scroll down a little more we will find a line that decides whether our PHP list is in test mode or not this is very important replace this one by zero this should be zero because if it is set to one then we will be in test mode and none of the emails will be sent now if you scroll down a lot more you will somewhere find this statement this is a PHP this is our SMTP server so just type localhost here this SMTP server is the server itself on which PHP listens running so we will type in localhost here then we will scroll down a little and we will see the this setting the SMTP user and SMTP password we will also see one more setting at some TP server port number so you SMTP user apart from this there will also be another setting area exactly this one the SMTP port number so we are going to set one two three four settings cut apart from this you'll also want to set this way the SMTP protocol so we are going to set 4 values 1 2 3 4 and this is your SMTP username SMTV password SMTP port number and SMTP protocol the SMTP username will be this postfix username because postfix is our SMTP server I'll just paste the username here the password will be the same password which will be used for the MySQL server if the password here the port number will be 5 8 7 which is port number for this pls protocol and here we will type D and with this which is a secure protocol if we were using SSL protocol the port number would be 4 6 5 we are using port number 5 at 7 because we're using protocol TLS so we are done with all the settings now you can save these settings close this file now we can close this now since we have downloaded PHP list and we have also configured it so this public HTML folder represents the folder of our original domain name now we will type the domain name here so when we press Enter with HTTPS we will see forbidden because there is no file no index file here inside the public HTML folder so public HTML represents this URL and public HTML / PHP list he possess this folder so just type slash PHP in list here and you will see some database errors because though the database connectivity is done PHP list is able to connect to the database since we have set the database connectivity settings in the config file but no tables have been treated in that database yet so what we will do is we will visit this folder slash admin Center now you can also notice that the SSL certificate is perfectly working for us without : 1000 so now we will click on initialize database to create all the tables and before the tables are created we need to enter some value we will type our name our organization name the email address from which all the emails will be going now remember I created a username info because I want all my emails to go from this email address this this is the email address info a deleted of the mails or ticket so the user that you had created info just pasted here the email address of this user you can name this user something else if you want your email address to go from some thing else and you domain.com my info at my domain just a little community came and this is the password for PHP list Logan remember the login name will be admin initially you can change this afterwards and type in the password now of course in production I'll use a stronger password I'm using a weak password only for this tutorial click on continue now you can see all the tables have been created in the database it is asking us who tell us tell them about how this experience of installing PHP distros we will not tell them anything yet it is asking us to subscribe to pH finished newsletter for latest news and updates we can not subscribe also but I'll just subscribe so we click on subscribe button or you click on do not subscribe button the next stuff will be same you will get a new button it says continue with PHP lesson now we will not do anything here we do not even see all the options here so to see all the options just log out so you will always login into PHP despise using this URL PHP list slash admin the username is admin the username is that mean initially but you can change it later the password is the same password that I have set up in the previous step click on continue now you can see all the options see so what we are going to do is we are going to click here on start a new campaign now we are going to just test whether an email can be sent from this PHP list or not I'll give this campaign Subject Tests campaign subject the email will go from info and le developer meals or TK I'll set the body to test campaign body then I'll scroll down to the bottom and I'll see this sent test now this step is very important now watch carefully I'll just open a new tab I'll visit a website called dkim validator not calm this website actually receives an email from me and then tells me that whether the email was perfect in did it have DKIM recorded it has SPF records and did it qualify for spam assassin email validator so just copy this email address paste it here in PHP list click on send test now since you are trying to send an email to this email address for the first time these willest will ask you to add this email address to PHP let's just click on add and then click on send test again so you can see that the email has been successfully sent now we will go back to detail in validator and then click on View results you can see that djm validator has received an email from us but the dkim signature could not be found which is important for us to send marketing emails the SPF lookup has passed perfectly the SPF recalls are good the spam assassin has not marked our email as spam so the only problem remaining is dkim and we will resolve this what people do is now we will go to our root login into virtual virtualmin and then click on virtualmin and then scroll down to email messages visit this first link which says domainkeys identified mail which is DK I am now you can see that the dkim identifier mail is not available on the system the DTM configuration file does not exist however virtualmin can attempt to automatically install dkim filter package so this is the thing that we want to install dkim filter package just click on install now so the install is complete DJ and filter package has been installed successfully he'll return and we can see the DTI in settings we will select YES for this signing of outgoing mail enabled all outgoing emails will be signed by a different signature now your selector for DKIM should be the current year easily default is used but default has some problems and virtualmin and perfect so we will just use the current year 2017 and just click on save so the DK I am settings have been saved and the next thing that we are going to do is we are going to enable email encryption because if we don't enable that then all our emails will have this red block let me show you an example image of it Gmail red block so here is the perfect example of it all your emails will show this all the outgoing emails from server your server to Gmail will show this red lock and the receivers of your email will feel that your emails are not secure this red lock means that your email has not been encrypted as you can see here this means that you have not sent the emails using the TLS protocols and the emails have not been encrypted so just go back to the route long enough virtualmin click on servers click on post fix mail server click on SMTP client options on the second-last setting use TLS for smtp connections select yes TLS season is a secure protocol now all your how going emails will be encrypted so that you do not see that red log just click on save and apply now you outgoing emails will not have this red lock in them now the last thing left to send secure outgoing emails and be ensured so that your outgoing emails don't go into spam of emails services like hot means especially hotmail is very you know concerned about this thing and this thing is reverse DNS record now the reverse DNS records in digital Oh automatically said when you create a virtual server and set its domain name but it does not happen here and Linnet muttley node gives us an option so here in lis node and the we'll go to remote access them there we will click here on reverse DNS now this universe DNS host name should actually be the host name of our server which is host dot our domain.com by default it is this which is not good so I'll set the reverse dns to my host name which is host dot Delhi then an upper mail dot DK so I'll click on lookup now it is seen that a match has been found when they tried to visit this URL they found out that this URL had an IP address this then click on yes so the reverse DNS has been changed and they note says that it might take up to 24 ask for the change to take effect so you can presume that you emails will only be received on hotmail after this setting has been propagated in 24 hours so what does actually reverse DNS diversity NS means ok let's first try to know what is T and its DNS means that when someone tries to check what is the IP address of this domain name then it is able to find this IP address this is DNS reverse DNS is when someone tries to check what is the domain of this IP address then it should find this this domain name so the reverse DNS cannot be set here in children it has to be set on the part of the company from which you have bought your virtual private server your hosting company and Mike if it is Linode and I also said that it was DNS perfectly so none of my mails should go to spam now now we will just check our emails for one last time I'll click on back just refresh this page let's copy this email address let's go to PHP list let's paste this new email address and test whether that he can because of working click on add and then click on send test again here click on View results the email has not been received yet just refresh this page and click on continue to see if it has been received no okay it has been to sleep down so you can scroll down to DKIM information it has a dko signature and you can easily see that it has passed the dkm validation check and we had already confirmed that it had passed the SPS check and it has not been marked as spam so all our email settings are perfect you can also do one more thing you can also download a tool called SMTP dialogue to now we don't want to download this microsoft exchange tool we want to download this one bottom on that we can find on this domain admin kit dotnet the smtp die up to you can download so you can download this tool here just download the zip version since you are going to only use it once I have already downloaded it I'm just going to start it so when this tool I'll type the SMTP server now the SMTP server will not be localhost for this tool since this tool is not on the server for this tool the SMTP server will be this Delhi developer mail or TK and then the port number will be five eight seven the user name and password will be the username will be our postfix username the password will be all six password and you will send an email from this user info Delhi tulip Emil calm I'm sorry info Delhi to the Camille dot TK and I'll send it to him to send it to let's send it to another email of DK and validator [Music] taste it here and just click on test so SMTP diet tool is another tool to check whether all the emails are being perfect listen so message has been sent successfully this means that these SMTP settings that we have set in PHP lists must be working perfectly fine now there are some more things that are remaining to be done we need to go to now if we go to PHP list then we can see a warning here image browsing is not available because directory oh there is yellow chameleon public HTML upload images has not been created does not exist so let's go back to the virtualmin of a virtual server let's go to the public HTML folder here we will create a new folder by the name upload images just created it has been created refresh this PHP list campaign page so we don't see that message again thus there is one more thing that we need to do okay now there is a button here for image the image button to add images to our emails now if I try to add an image then to say cannot find any supported PHP image extension so we cannot add images to our campaigns yet remember all the images that your load will be uploaded to this folder of yourself so all the images of your of the emails that you sent are actually residing in this folder and if they are deleted here they are deleted for all the emails that you have sent so go to put it okay now we have been locked out of Cote since it has been too long we will log in again link type the password now we are going to install image magic for PSP 5.5 on our Ubuntu installation so we will run these commands the first command is get install image magic notice the key at the end so it is trying to confirm we'll just type yes enter so it has installed image now we will install php5 [Music] image magic extensions so just when the command apt-get install PHP 5 in a Jake again notice the key at the end press hereby to continue now he will add image magic extension of PHP to the PHP configuration files each behind ini files just run this command PHP 5 e and mod and I am a GI CK a magic we are just asking PHP 5 to use the succession so now we will restart our Apache server so that all the changes that we have made in PHP take effect so we will run the command slash EPC slash in it dot d / Apache 2 space 3 start this command will restart the Apache server kings who had spelled Apache wrongly this should work now so our Apache server has started so now image magic should work perfectly ok now we can actually add images from our server and you can also upload images from your computer let's check fun okay go to features sample pictures let's upload this one send it to server now even this button even the send it to server button would have showed us a warning if we would have not installed the image magic extension so the image has been added let's give it up with 300 pixels let's click on OK okay so we can see the image here perfect so you have tested our emails enough so okay now how to use peaceful esters outside the scope of this tutorial we will create a separate tutorial for that but I will suggest you that you will be able to learn it yourself PHP list is mostly yourself explanatory software now the last thing that I'll suggest you to do is that this theme of PHP looks quite boring so we will change the team just go to config settings from down a little now the theme for PHP lists you will just change it from Despero to travellin and click on Save Changes so we have a whole new theme in PHP list we have our dashboard okay so you might never need to login to virtualmin again you all you will need this PHP list so you will need to accept virtually only when you are changing some settings on the server so let's log out of them from both our root account and the virtual server account remember that when you have to log into root account try using this URL and when you have to log into individual virtual machine then use this URL this is the hostname this is the domain name let's close both of them let's close they note and you will only need PHP list now so remember that whenever you need to access your PHP list just type this just close this oh let's just log out of it first all you have to do is type your domain name starting with HTTP slash PHP list slash admin doesn't just login with your username you can see the new team in this login page also type in the password and there you go you have PHP list so teaching PHP list is actually outside the scope of this tutorial most of the things here are self-explanatory he will create a separate video for teaching PHP list for right now you just need to know that here you can manage your subscribers and here you can create emails and send them so you can see all the commands and all the important links here in our block you will also find all the important links in the description of this video and if you find yourself stuck in some step you can always comment on this video and you can also add a comment to this blog to ask us and in case if you feel that you are unable to do it yourself and you want us to do it for you you want us to create your bulk email server in that case you can email us and we will charge you only a dollar 100 for each server thanks for watching our video be sure to comment like and subscribe and don't forget to follow us to get notifications of new content
Info
Channel: Delhi Developer
Views: 11,419
Rating: undefined out of 5
Keywords: Bulk Email, Mass Email, Email, PHPList, Virtualmin, Webmin, Ubuntu 14.04, VPS, Virtual Private Server
Id: rmaqWv-Ibts
Channel Id: undefined
Length: 97min 29sec (5849 seconds)
Published: Wed Nov 08 2017
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.