由于linux的服务器普遍安全性高,速度快,占用资源少等情况,而且支持php,mysql等良好。所以学会在linux上部署web应用至关重要。但日常通常使用windows写php等的web程序,使用dreamweaver等工具,写php,html,css,javascript等实在方便,配置mysql等,也有大量的可视化界面,方便快捷。而在linux上写代码,往往过于麻烦,当然好处是体现出使用linux的水平高。
本文所讲的内容就是使用telnet的方法,当然有伙伴说这种方法采用明文传输,不太安全,可以采用ssh连接的方式,但本人大胆以为,这两种方式形式可能一样。便使用telnet进行。
首先说一下本人采用各种平台环境和下载了的软件包
远程机:ubuntu12.04 x64 局域网 IP:192.168.1.8 数据库:mysql web后台开发环境:php 服务器应用平台:Apache2
主机:windows7 局域网 IP:192.168.1.3 PHPnow-1.5.6套件(数据库MySQL-5.0.90 web后台开发环境php-5.2.14-Win32 服务器应用平台:Apache-20)可传送文件的远程命令终端:SecureCRT
1.搭建好一切的环境,所有windows平台上软件自行百度。
因为是试验,真的linux服务器本人并没有,ubuntu采用VMware搭建虚拟机,这个也自行百度(VMware安装ubuntu)或在本博客其他博客里也可以找到很多。在这里重要的一点是网络设置那里设置为桥接模式,为了避免后期ping通网络麻烦。当然在真机上就没这步了。这里再说下ubuntu中各种密码,一律为root,方便快捷,当然根据自己安全需要设置密码
2.同时登录linux和windows,linux打开终端输入命令ping 192.168.1.3 ;windows打开始->cmd输入命令ping 192.168.1.8。网络互相ping通,如果ping不通,后续一切的操作都没用,检查两者的网络的连通状态。
这里为了方便在root环境下操作,插一句话,直接使用su root进入#字符的root环境操作,则后续很多操作就再也不需要输入密码了。初始的密码采用sudo passwd root 修改
保证网络能连通时,还有一个原因是linux上防火墙iptables的问题。不过默认的iptables是允许任何数据包通过了,为了保险这里进行如下配置
modprobe ip_tables
iptables -L
iptables -F
iptables -X
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
这样意味着你的所有数据包都可以*进出了。如果需要安全的话,可以详见blog:【linux】在Ubuntu下的iptables配置。配置允许http,telnet,ssh等数据包进出就可以了
3.网络没问题,就开始mysql-php-apache的配置。这里就简单了,这三者的配置在(ubuntu)上的配置远远简单于在windows上,只需要一条命令,接着等待,选y,然后让输各种密码的时候输入root,当然上面我已说过,根据自己需要设置密码。
sudo apt-get install apache2 mysql-server mysql-client php5 php5-gd php5-mysql
sudo apt-get install phpmyadmin
这里的安装的详细过程请看朋友的博客:【Linux】在Ubuntu中布置LAMP环境配置完后网页访问一下192.168.1.8
4.在linux上配置telnet服务,首先安装telnet服务包,首先还是在su root下使用sudo apt-get install telnet命令,如果出现如下错误的话。
说什么不能解锁,这里的方法是rm /var/lib/dpkg/lock 强制删除这个内容。然后再执行sudo apt-get install telnet。
然后执行sudo apt-get install xinetd telnetd 这两个包一个是客户端一个是服务器端应该,这里为了测试两个都装上
sudo gedit /etc/inetd.conf并加入以下一行
telnet stream tcp nowait telnetd /usr/sbin/tcpd /usr/sbin/in.telnetd
然后分别配置这两个包的配置文件
sudo gedit /etc/xinetd.conf并加入内容:
defaults
{
instances = 60
log_type = SYSLOG authpriv
log_on_success = HOST PID
log_on_failure = HOST
cps = 25 30
}
sudo gedit /etc/xinetd.d/telnet并加入以下内容:
# default: on
# description: The telnet server serves telnet sessions; it uses \
# unencrypted username/password pairs for authentication.
service telnet
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_failure += USERID
}
重启机器或重启网络服务sudo /etc/init.d/xinetd restart
5.在windows上配置telnet服务。开始->控制面板->程序和功能->打开或关闭windows功能,telnet客户端和服务器端都勾选上,其实只要客户端就可以了。这里为了测试本机是否能telnet本机,以确保本机的telnet服务正常开启了。
设置telnet启动和开机启动,开始->控制面板->管理工具->服务->Telnet->属性,启动类型设置为自动,服务状态->启动
这里插一句给设置了windows防火墙的用户,开始telnet不上,原来是默认windows防火墙可能会不允许telnet数据包通过。没设置的当然自动通过了,当然你也可以把windows防火墙关闭了。但好像对一部分人来说总有点用处。这里就说下怎么设置windows防火墙出入站规则。开始->控制面板->windows防火墙->高级设置->新建出站规则->端口->下一步->特定远程端口:23->下一步->允许连接->下一步->下一步->名字随意,建立入站规则同理。
测试telnet服务,出现是否发送密码,这里选N。否则,根本连不上,出现login:这里我专门在windows7上的用户账户里添加了一个账户root,密码root,为管理员权限。因为远程计算机如果没设置密码的话,telnet不上。
telnet 192.168.1.3
再测试能否连上linux远程机
telnet 192.168.1.8
不能连上linux能连本机,说明linux的telnet 配置有问题,找到问题,可以回复下作者,共同探讨如何解决。因为linux环境配置虽然大部分相同,但不同版本linux缺少各种关联的程序包。这里统一的方法是使用sudo apt-get install 您需要的程序包的名字 命令来安装上,保证网络通畅。
6.前面说过了,windows下,也就是主机下打开SecureCRT,这个远程连接的工具可以直接发送文件,将在windows上写好的程序包和数据库备份文件用zip格式打包,注意这里最好为zip格式,因为Ubuntu版本默认是支持 .zip格式的,如果采用rar格式的话,你还要在linux里sudo apt-get install rar 下载对应的程序包。通过rar -x web.rar解压到linux的var/www目录下,这里说zip的格式。
首先快速连接上远程机
登录login:cxh,(linux的用户名)password:root(密码)
连接上后一切都是linux环境下的命令了。有点说下,这里能连上linux那其实前面说的php-mysql-apache的配置,也可以放到这里来了,所以,在linux上只要配置好了telnet服务,一切都可以通过远程连接来使用了。
还是在root环境#字符下面操作,su root。定位到/var/www目录下,这是在配置linux下的apache服务默认的站点目录,就是访问linux网站的根目录,cd../.. /var/www进去。
使用lrzsz命令,这里如果显示错误,说明linux中没有这个包,使用sudo apt-get install lrzsz 安装好,避免出错,出错的话注意错误信息,并解决。
如果lrzsz程序包安装完好,输入命令rz会弹出一个选择windows下文件的窗口,把打包好的程序和数据库备份文件添加进来,确定后,SecureCRT就会往linux下的当前目录发送文件了。这里mysql数据库备份还原的内容详见:【Mysql】MySQL导出数据库与导入数据库
用unzip解压web应用程序,unzip mvc_bbs.zip(windows平台下写好的phpweb应用)
导入mysql数据库,参考前面的还原mysql数据库。把数据库导入到linux中来使用,先连接上mysql,用户名root,密码root
然后建立一个和备份中同名的数据库,use它,并source
数据库则配置完成。
7.linux服务器配置完成后只需要一直开着就ok了,在主机(windows7)下浏览器访问http://192.168.1.8/mvc_bbs即可
这里还有一点要注意了,如果前面的phpmyadmin环境没配置好的话,mysql数据库会连接不上显示网络不能连接。