怎么在虚拟机VMware安装RedHatEnterpriseLinux6系统
虚拟机VMware可以安装各种操作系统,用来学习或测试之用,尤其是Linux服务器系统,很多用户都是现在虚拟机中安装测试。有用户需要在虚拟机VMware中安装RedHatEnterpriseLinux6系统,但是不知道具体的安装步骤是怎样的,这个教程就是教大家在VMwareWorkstation中安装RedHatEnterpriseLinux6系统的过程。
相关教程:虚拟机VMwareWorkstation12下载安装与激活图文教程
一、所需工具
1、VMwareWorkstation11、12、14均可
2、RedHatEnterpriseLinux6系统ISO镜像
二、安装步骤如下
1、启动VMwareworkstation,单击主页面的“创建新的虚拟机”或依次单击菜单栏中的“文件”“新建虚拟机”,开始创建虚拟机。
2、在“欢迎使用新建虚拟机向导”页面,选择配置类型,这里选择“典型(推荐)(T)”。
3、选择怎么安装客户机操作系统,这里选择“稍后安装操作系统(S)”。
4、在“选择客户机操作系统”页面,客户机操作系统选择“Linux(L)”,版本选择“RedHatEnterpriseLinux6”。
5、在“命名虚拟机”页面,设置虚拟机名称和虚拟机文件保存位置,这里虚拟机名称选择默认,位置为:E:\VirtualMachines\RedHatEnterpriseLinux6。
6、在“指定磁盘容量”页面,设置虚拟磁盘容量大小,选择默认即可。
7、在“已准备好创建虚拟机”页面,可以单击“自定义硬件“,根据个人硬件配置而定。
8、单击设备中的CD/DVD(SATA)自动检测,加载RHEL6ISO安装镜像,然后单击确定,最后单击“开启虚拟机”即可开始系统的安装。
9、在RHEL6的欢迎界面选择第一项“Installorupgradeanexistingsystem”(安装或升级现有的系统)回车开始安装。
10、询问是否对安装媒介进行测试,这里选择“Skip”跳过。
11、进入开始安装界面,单击“Next”。
12、选择安装界面语言,这里选择简体中文,单击“下一步”。
13、选择键盘映射,这里选择”美国英语式“,单击“下一步”。
14、选择存储设备类型,这里选择”基本存储设备“,单击“下一步”,接着如果弹出存储设备警告,选择“是,忽略所有数据”。
15、设置计算机名,单击“下一步”。
16、设置时区,这里设置为“亚洲/上海”,并取消勾选“系统时钟使用UTC时间(S)”,单击“下一步”。
17、设置root用户密码,如果你使用的密码过于简单,系统会自动提示,这里选择“无论如何都使用”,然后单击“下一步”。
18、选择安装类型,如果想对分区有所认识,请选择“使用自定义布局”,这里选择“使用所有空间”,单击“下一步”。
19、系统提示是否将存储配置写入磁盘,选择“将修改写入磁盘”即可。
20、系统对磁盘进行格式化。
21、在这里用户可以选择引导加载程序安装位置,对于系统引导加载方面的知识请读者自行查阅,单击“下一步”。
22、选择安装软件组或者自定义,默认是基本服务器。如果是初次学习,建议选择桌面。这里选择“桌面”,单击”下一步“。
23、启动安装过程。
24、安装选择的软件包。
25、执行安装后配置,比如安装引导加载程序。
26、系统提示安装完成,单击“重新引导”。
27、系统重启后,显示如下界面,这里用户可以按任意键进入系统引导菜单或等待几秒时间直接进入系统。
28、进入“欢迎”页面,单击“前进”。
29、在“许可证信息”页面,勾选“是,我同意该许可证协议”,单击“前进”。
30、进入“设置软件更新”页面,勾选“不,以后注册”,然后单击“前进”。
31、创建普通用户,这里也可以选择不创建直接单击“前进”。
32、设置系统日期和时间,单击“前进”。
33、接着出现如下所示情况,直接单击确定。
34、直接单击“前进”
35、进入系统登录界面,输入用户密码,进入系统桌面。至此系统安装完成。
以上就是在虚拟机VMware上安装RedHatEnterpriseLinux6系统的全部过程,过程非常详细,图文并茂,相信大家都能安装完成。
1,Linux下架FTP!!
Linux下一般最常用的工具wu-ftpd
wu-ftpd的安装非常容易,大多数版本的Linux中都包含了wu-ftpd的rpm软件包,你可以在安装Linux时指定装入。如果你想自行编译源代码,也可以到ftp://ftpwu-ftpdorg下载最新版本的源代码包。
安装好以后,可以用ckconfig命令来检查是否已经正确安装。在/etc/passwd中可以指定ftp用户的登入目录。
wu-ftpd主要有以下6个配置文件:
ftpaccess(主要配置文件,控制存取权限)
ftpconvertions(配置文件压缩/解压缩转换)
ftpgroups(设定ftp自己定义的群组)
ftphosts(设定个别的用户权限)
ftpservers(设定不同IP/Domain Name以对应到不同的虚拟主机)
ftpusers(设定哪些帐号不能用ftp连线)
下面我们来一一介绍。
⒈/etc/ftpaccess(wu-ftpd的主要配置文件)
class--定义群组,用法如下:
class<种类>;<用户地址>;[<用户地址>;……]
由class定义的群组用户才可以连线进来,可以使用多层式的class来规范哪些群组的用户能够从哪些地方上来。这里有三个重要的种类,real、anonymous个guest。real如果没有列在定义中,那么这台机器中任何真实的一般用户都无法用自己的帐号连上来。anonymous如果没有在定义,就表示不让没有帐号的的人连上来。如果有定义guest,那么guest群组的人就可以上来。另外<用户地址>;是指ftp上来的用户会用到的IP地址,则可自行设定。以下是一些例子:
class all real,guest,anonymous
定义了一个名为all的class,包含三种人,所有IP的连线用户(也就是所有人都包括了)
class local real localhost loopback
local这个class说,只有real的用户可以从本机机器连上来
class remote guest,anonymous
remote这个class包含了从任何地方上来的guest和anonymous用户,但是real用户不算
class rmtuser real !examplecom
rmtuser这个class包含了从外面来的(除了examplecom)真实用户
autogroup--自动对应群组,用法如下:
autogroup[……]
当你定义好的那些同属于一个class的用户,一旦连线上来就会被对应到一个相应的群组下面,这样你就可以用Unix的文件权限对某一群人做限制。
deny--拒绝某些地址连线,用法如下:
deny<拒绝连线的地址>;<信息文件>;
禁止某些机器连线,并显示<信息文件>;。例如:
deny 21062146:255255255254 /etc/rejectmsg
guestgroup--设定访客群
guestuser--设定访客帐号
realgroup--设定真实群组
realuser--设定真实帐号
nice--设定给某些class多少优先权,用法如下:
nice
在Linux中,nice的值是-20(最优先)到19(最后处理),这里你可以指定负的值来提高某class的优先顺序。
defumask--设定某class的umask,用法如下:
defumask[]
umask是建立文件时该文件的的权限掩码
tcpwindow--设定tcpwindow的大小
keepalive--设定是否使用TCP SO_KEEPALIVE来控制断线情形
timeout--设定连线超时,用法如下:
timeout accept<秒>;
接受连线超时,预设120秒
timeout connect<秒>;
连线建立超时,预设120秒
timeout data<秒>;
数据传送超时,预设1200秒
timeout idle<秒>;
用户发呆超时,预设900秒
file-limit--限制某class只能传几个文件,用法如下:
file-limit[][]
对某个class限制存取文件的数目,包含了in(上传)、out(下载),total raw代表整个传输的结果,不光是数据文件。例如:
file-limit out 20 lvfour
限制lvfour这个class的用户最多只能下载20个文件
byte-limit--限制某class只能传几个字节,用法跟file-limit相似
limit-time--限制一个连线只能持续多久,用法如下:
limit-time{|anonymous|guest}<分钟>;
为了避免有人挂在站上不下来,可以用这个方法限制用户的上线时间,例如:
limit-time guest 5
让guest帐号的用户只能用5分钟
limit--限制某class能同时几人上线,用法如下:
limit<连线数目>;<时间区段>;<额满信息文件>;
设定某个class在某一时间区段内最多能够几人同时上线,后面是当超过连线数目时要显示的信息。例如:
limit all 32 Any /home/ftp/etc/toomanyusermsg
限制所有连线在任何时间只能有32个用户,超过则拒绝连线并显示信息
limit levellone 5 Any2300-0600 /home/ftp/etc/toomanyusermsg
限制levellone这个class的用户在23:00到6:00这段时间内只能有5人连线
noretrieve--设定哪些文件不可下载
noretrieve[absolute/relative][class=]…[-][<文件名>;…]
absolute或relative指文件是用绝对路径还是相对路径
allow=retrieve--设定哪些文件可以下载
allow[absolute/relative][class=]…[-][<文件名>;…]
loginfails--设置登入错误可尝试的次数
当用户连线时可能打错ID或密码,这个设定可以让他打错几次以后就断线,避免有人用穷举法猜测密码。
private--设定线上是否可以执行SITE GROUP/SITE GPASS
当开放SITE GROUP与SITE GPASS指令时,可以用这两个指令切换到/etc/ftpgroup的群组。一般而言我们不会用到这个功能,以避免安全漏洞。
greeting--显示Server的版本信息,用法如下:
greeting
当用户登入画面显示的server信息,full是预设值,包含版本号以及hostname,brief只有hostname,而terse只有“FTP server ready”的信息。
barnner--设定未进入Login画面之前用户看到的信息,用法如下:
banner<文件路径>;
这里叙述了在用户登入时,在还没打ID/Password之前要出现的信息。文件路径指的是相对于真实的路径,而不是相对于ftp的根目录。
host--设定ftp主机名
email--指定ftp管理者的email地址
message--信息文件的设定,用法如下:
message<文件>;{<何时>;{……}}
这里的文件的路径是相对于ftp的根目录的,“何时”是指当你做了什么动作之后的反应,有几个选择:
login(登入时)
cwd=<目录>;(进入某目录时)
class 名称是前面已经定义过的,允许你的信息只对哪些人发出。
而信息文件的内容除了文字以外,还可以使用以下一些事先定义好的代号:
%T(本机时间)
%F(目前分区所剩余的空间)
%C(目前所在的目录)
%E(管理者的E-mail)
%R(客户端主机名称)
%L(本机主机名称)
%U(用户名称)
%M(与我相同class用户允许多少人连线)
%N(与我相同class用户目前有多少人连线)
%B(绝对磁盘限制大小,目前分区(单位blocks))
%b(preferred磁盘限制大小,目前分区(单位blocks))
%Q(目前已使用的blocks)
%I(最大可使用的inodes(+1))
%i(Preferred inodes限制)
%q(目前使用的indoes)
%H(超量使用磁盘空间的时间限制)
%h(超量使用文件数目的时间限制)
readme--通知用户哪些README文件已经更新
log commands--记录用户所使用过的命令,用法如下:
log commands<用户种类>;
log transfers--记录用户所传输的文件,用法如下:
log transfers<用户种类>;<传输方向>;
设定有哪些类型的用户传输文件需要记录,包含了inbound(用户上传)和outbound(用户下载),例如:
log transfers anonymous,guest inbound,outbound
log security--记录安全性,用法如下:
log security<用户种类>;
特别用于记录某类用户关于noretrive、notar等有关安全性的记录
log syslog--记录到系统的syslog文件
alias--设定目录别名,用法如下:
alias<别名字符串>;<目录>;
cdpath--设定cd更换目录搜索顺序
compress,tar--设定是否自动压缩,用法如下:
compress[……]
tar[……]
定义哪些人可以执行压缩以及tar
shutdown--通知用户要关站了
shutdown<信息文件>;
如果信息文件存在的话,当这个文件指定的某时间以后,就会拒绝连线并切断已有的连线,等时间一到就关机。这个信息文件的格式如下:
<年>;<月>;<日>;<时>;<分>;<拒绝倒数>;<断线倒数>;<文字>;
daemon address--指定只监听某个IP地址,用法如下:
daemon address
当你有许多IP的时候,使用这个选项将会取消其它任何虚拟FTP主机的设定。不设定的话,监听所有IP。
virtual--设定虚拟FTP站台
wu-ftpd提供了虚拟主机的功能,也就是说,在同一台机器上提供了不同FTP站台,以主机名称或IP来区分;当然你要用名称的话,还需要跟DNS配合才行。virtual有很多个设定:
virtual
<路径>;
可以是主机名或IP地址
root指的是ftp的根目录,banner是欢迎信息,logfile指的是这个虚拟站台的log文件
以下是一些例子:
virtual virtualcombj root /home/ftp2
virtual virtualcombj banner /etc/vftpbanner2
virtual virtualcombj logfile /etc/viftplog2
virtual
<字母>;
用户可以查到hostname跟管理者email,以下是一些例子:
virtual 2106214650 hostname virtualsitecombj
virtual vritualsitecombj email ftpown@virtualsitecombj
virtual
allow<用户>;[<用户>;……]
virtual
deny<用户>;[<用户>;……]
很明显,以上两个选项是设定是否允许连线的,以下是一些例子:
virtual virtualsitecombj allow
virtual virtualsitecombj deny badman
virtual
private
本虚拟站台拒绝anonymous用户
defaultserver deny <用户>;[<用户>;……]
defaultserver allow <用户>;[<用户>;……]
当我们使用了虚拟主机,原先的deny,allow设定不知道要设哪个server,所以会无效,用defaultserver代表原来的主机
defaultserver private
主站台拒绝anonymous用户
passive address--转换IP数值
passive address<外部IP>;/cidr
passive ports--passive的ports范围
passive ports
pasv-allow--允许使用pasv
pasv-allow[<地址>;……]
port-allow--允许使用port
port-allow[<地址>;……]
mailserver--指定Upload通知的mail服务器
incmail--指定anonymous upload的email通知地址
virtual incmail--指定虚拟主机anonymous upload的email通知地址
defaultserver incmail--指定预设主机anonymous upload的email通知地址
mailfrom--通知的寄信人upload
virtual mailfrom--虚拟主机upload通知的寄信人
defaultserver mailfrom--预设主机upload通知的寄信人
chmod--设定是否可以改变文件权限
delete--设定是否可以删除文件
overwrite--覆盖文件
rename--重命名文件
umask--允许设定umask
passwd-check--设定anonymous FTP的密码检查程度,用法如下:
passwd-check()
设定对anonymous ftp用户的密码是否检查,none表示不检查,trivial为包含@的任意密码,rfc822则表示密码要遵循RFC822格式,enforce表示密码检查不过不允许进入,warn表示密码检查不过只出现警告信息。
deny=email--拒绝特定的email当密码
path-filer--摄定哪些文件名不可使用
path-filer<错误信息文件>;<允许字符>;<不允许字符>;
upload--设定upload权限
upload[absloute/relative][class=]…[-]<设定的目录>; >;[dirs/nodirs][d_mode]
用来对我们要设定的目录做权限设定:
absoulte/relative使用绝对路径或是相对路径
class=指定某个class
root-dir指的是对哪些root-dir的人,也就是chroot后的登入目录,应用这个规则
设定的目录指的就是我们要限制的目录
yes/no指得是能否在此目录下开新文件
owner,group指出是开出来的文件拥有者及群组
Mode指的是文件权限
dirs/nodirs指的是能否开新目录
d_mode设定建立新目录时目录的权限,如果不设定会根据mode来设定
thoughput--控制下载速度
thoughput<子目录列表>;<文件>;<远端地址列表>;
对远端的地址,控制他抓某个子目录下的某些文件时的速度,例如:
thoughput /e/ftp oo -
thoughput /e/ftp /sw 1024 05
thoughput /e/ftp sw readme oo -
thoughput /e/ftp sw oo - foocom
以上的设定你是否能够看出来呢?“oo”表示不限制bytes/sec,“-”或是“10”都是代表一倍。第一行的意思是说,在/e/ftp下面的文件不限制下载速度;第二行说,在/sw下面的任何文件限速为1024bytes/sec
05=512bytes/sec;第三行又把readme文件的限速取消;最后一行则对foocom开放全速。
anonymous-root--对某class设定匿名用户的根目录
anonymous-root[]
guest-root--预设一个guest用户根目录
guest-root[]
其中用于指定uid的范围
deny-uid,deny-gid--拒绝某段UID(GID)范围
allow-uid,allow-gid--允许某段UID(GID)范围
restricted-uid,restricted-gid--限制用户不能离开他的登录目录
unrestricted-uid,unrestricted-gid--用户可以离开他的登录目录
dns refuse_mismatch--设定DNS查到名称与用户设定不符的动作
dns refuse_mismatch<信息文件>;[override]
当用户使用未注册IP时,拒绝他的连线,override则是不理会错误而让他连线,信息文件则是我们要给用户看的。
dns refuse_no_reverse--设定无反查记录拒绝连线
dns refuse_no_reverse<信息文件>;[override]
当用户的IP反查无记录时,拒绝他的连线
dns resolveoptions--设定DNS解析选项
dns resolveoptions[options]
这里可以设定DNS解析选项
⒉/etc/ftphosts
ftphosts文件其实跟ftpaccess里面的access,deny很像,它是特别用来设定某些ID的连线,它没有class定义,所以必须是真实用户。
allow|deny<用户>;<地址>;[<地址>;……]
以下是一些例子:
allow rose 14000/8
deny jack 14012300:25525500
允许rose从140进来,拒绝jack从140123上来
⒊/etc/ftpservers
这个文件控制了当你有不同的IP/hostname的时候,进来的连线使用哪一个配置文件。例如:
1019614510 /etc/ftpd/ftpaccesssomedomain/
10196145200 /etc/ftpd/ftpaccesssomeotherdomain/
somedomain internal
1019614520 /etc/ftpd/config/faqsorg/
ftpsomedomain /etc/ftpd/config/faqsorg/
⒋/etc/ftpusers
在这个文件里记录的用户禁止使用FTP
⒌/etc/ftpgroups
给SITE GROUP指令使用,线上切换group。SITE EXEC容易造成安全漏洞,一般我们都不开放。
⒍/etc/ftpconversions
用来做tar、compress、gzip等动作指令配置文件,只要用预设即可,如果你不开放即时压缩打包,也可以把内容清除。
2,Linux操作系统近几年有了蓬勃的发展,在整个世界范围内得到了越来越多公司和团体的支持,尤其是最近IBM公司的鼎力支持,更是使Linux服务器如虎添翼,更上一层楼
Linux操作系统近几年有了蓬勃的发展,在整个世界范围内得到了越来越多公司和团体的支持,尤其是最近IBM公司的鼎力支持,更是使Linux服务器如虎添翼,更上一层楼。而在国内,Linux的应用也是方兴未艾,众多公司已经投入到Linux系统的研发和推广工作中。一些优秀的Linux操作系统相继出现,比如红旗Linux等。但是我国的Linux应用水平还很低,熟悉Linux的人员严重缺乏,Linux专业人才的缺乏已成为Linux在国内应用和普及的瓶颈问题。据《开放系统世界》2003年第八期介绍,中国五年内Linux人才需求量将会超过120万。而“1+1+1”工程的实施,也是间接地告诉我们这个问题的严重性。如此大好时机,我们干吗还愣着不动呢!如果你是一位Linux爱好者,你可能已经掌握了基本的Linux的知识与操作,毫无疑问,你并不会去满足这样小小的成就。Linux为何如此的流行?其最大的特点莫过于功能强大,性能稳定的服务器应用了。像WWW,MAIL,FTP,DNS和SMB等。在这篇文章中,我将以Redhat Linux 9为蓝本,从Web服务器的一些最基本的操作入手,从初学者使用的态度,让读者正确充分的认识Apache。好,现在就让我们一起踏上征服Apache的自由之路吧。
Apache的主要特征是:
可以运行上所有计算机平台;
支持最新的HTTP 11协议;
简单而强有力的基于文件的配置;
支持通用网关接口CGI;
支持虚拟主机;
支持HTTP认证;
集成Perl脚本编程语言;
集成的代理服务器;
具有可定制的服务器日志;
支持服务器端包含命令(SSI)
支持安全Socket层(SSL)
用户会话过程的跟踪能力;
支持FastCGI;
支持Java Servlets。
安装Apache
下面我们就开始漫漫征服Apache之旅,通过循序渐进的需求实例,一步步地学习使用Apache,从入门到精通。
系统需求
运行Apache不需要太多的计算资源。它在有6-10MB硬盘空间和8MB RAM的Linux系统上运行得很好。然而,只运行Apache可能不是你想做的事情。更可能的是,你想运行Apache来提供WWW服务、启动CGI进程以及充分利用所有WWW能够提供的令人惊奇的功能。在这种情况下,你需要提供反映负载要求的额外的磁盘空间和内存空间。也就是说,如果仅仅是启动WWW服务并不需要太多的系统资源,但是想要能为大量的客户提供服务就需要更多的系统资源。
获取软件
你可以在http://wwwapacheorg中获得Apache的最新版。而几乎所有的Linux发行版中均包含有Apache软件包,你也可以直接使用它。
需要注意的是,Apache软件包有两种:一种是源代码,下载后需要自己重新编译;另一种是可执行文件,下载后只需解压就可以使用。
安装软件
你可以通过以下三种方法安装Apache服务器。
1.如果你安装的Linux版本中带用Apache的话,就在选择所要安装的服务器的时候,将httpd这个服务选上,Linux安装程序将自动完成Apache的安装工作,并做好基本的配置。
2.使用可执行文件软件包,这比较适合那些对编译工作不是太熟悉的初级用户,因为它相对比较简单。
下载软件包apache_124etargz
tar xvzf apache_124etargz
这就完成了安装工作,简单吧!
如果你使用的是RedHat Linux的话,你也可以下载apache_124rpm软件安装包,然后使用rpm -ivh apache_124rpm命令安装。
3.如果你想把Apache服务器充分利用起来的话,就一定要自己编译Apache定制其功能。
下载包含Apache源代码的软件包apache_124targz; 然后用tar命令将它解开; 将当前目录改变为Apache源代码发行版的src目录; 将配置样本文件(Configurationtmpl)复制为Configuration文件;
编辑Configuration文件中的配置选项:
Makefile配置选项:一些编译选项:
"CC="一行指定用什么编译软件编译,一般为"CC=gcc";
如果需要将额外的标志(参数)指定给C编译软件,可以使用:
EXTRA_CFLAGS=
EXTRA_LFLAGS=
如果系统需要特殊的库和包含文件,可以在这里指定它们:
EXTRA_LIBS=
EXTRA_INCLUDES=
如果你要改变代码优化设置的话,你须将下面一句去掉注释,然
后改成你所需要的值:
#OPTIM=-O2
Rule配置选项:用来决定需要什么功能,一般情况下无需改变。
模块配置:模块是Apache的组成部分,它为Apache内核增加新功能。通过使用模块配置,可以自定义在Apache服务器中需要什么功能,这个部分也是Apache灵活性的表现。模块配置行如下所示:
AddModule modules/standard/mod_envo
如果你需要Apache服务器具备什么功能,就将那个模块用AddModule语句加到配置文件Configuration中去。
3,一、 MYSQL的基本概念
1、MYSQL的定义
MYSQL一种多用户、多任务的数据库服务器软件
2、MYSQL的特点
支持多平台,没有内存漏洞,分布式处理
支持JAVA、PHP、PERL、支持数据类型
支持ODBC,支持SQL查询
二、 安装MYSQL的服务器
1、 RPM方式MYSQL
#RPM –ivh MYSQL-3。23-3i386rpm
#RPM –ivh MYSQL-client-323-33i386rpm
#RPM-ivh MYSQL-Shared323-33i386rpm
#Tpm -ivh MYSQL –server323-33i386rpm
2编译安装方式
#tar -xvzf mysql 323targz
# cd mysql-323
#/configure --prdfix=/usr/local
#make
#malke install
# cd/usr/local/bin/
#/mysql-install-db 初始数据库系统。
系统库作用:记录服务器的设置参数,存放用户库信息
安全选项
#safe-mysqld
这个是71的 72一样
Openssh71p1升级方案
OpenSSH_71p1、Openssl101p、zlib128
第一步 准备安装包
11、 确定操作系统
uname -a
lsb_release -a(suse)
cat /etc/issue(redhat)
12、 将所需安装包上传到服务器
zlib-128targz
openssl-101ptargz
openssh-71p1targz
相关下载:wwwopensslorg、wwwopensshorg、wwwzlibnet、
//先把所有安装文件上传服务器,再卸载ssh,要不文件上传非常麻烦,在系统镜像中找到gcc安装包一并上传,大部分make失败都是gcc未安装或者安装不全造成。
第二步 准备好其他远程方式
21、此项可选择telnet或者vnc来进行远程操作
安装telnet服务,telnet安装rpm包对应操作系统ISO文件里面提取,建议不要跨操作系统版本安装,减少未知问题。
vi /etc/xinetdd/telnet
disable = yes改成 no。
service xinetd restart
vi /etc/securetty加入
pts/0
pts/1
pts/2
pts/3
vi /etc/pamd/login文件注释掉:
#auth [user_unknown=ignore success=ok ignore=ignore
#auth_err=die default=bad] pam_securettyso
//以上步骤保证root用户可以telnet,保证后续远程配置正常进行。
第三步 程序升级
31、停止SSHD服务
# /sbin/service sshd stop
32、备份启动脚本
# cp /etc/initd/sshd /root/
33、卸载系统里原有Openssh
# rpm -qa openssh //查询系统原安装的openssh包,全部卸载。
# rpm -e openssh --nodeps
# rpm -e openssh-server --nodeps
# rpm -e openssh-clients --nodeps
# rpm -e openssh-askpass
34、解压安装zlib包:
# tar -zxvf zlib-128targz //首先安装zlib库,否则会报zlibc错误无法进行
# cd zlib-128
# /configure
# make&&make install
35、解压安装openssl包:
# tar -zxvf openssl-101ptargz
# cd openssl-101p
# /config shared zlib
# make
# make test
# make install
# mv /usr/bin/openssl /usr/bin/opensslOFF
# mv /usr/include/openssl /usr/include/opensslOFF
//该步骤可能提示无文件,忽略即可
# ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
# ln -s /usr/local/ssl/include/openssl /usr/include/openssl
//移走原先系统自带的openssl,将自己编译产生的新文件进行链接。
36、配置库文件搜索路径
# echo "/usr/local/ssl/lib" >> /etc/ldsoconf
# /sbin/ldconfig -v
# openssl version -a
OpenSSL 101m 19 Mar 2015
built on: Sat Mar 21 04:11:47 2015
platform: linux-x86_64
options: bn(64,64) rc4(8x,int) des(idx,cisc,16,int) idea(int) blowfish(idx)
compiler: gcc -I -I -I/include -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM
OPENSSLDIR: "/usr/local/ssl
37、解压安装openssh包:
先将将/etc/ssh的文件夹备份:
# mv /etc/ssh /etc/ssh_bak
# tar -zxvf openssh-71p1targz
# cd openssh-71p1
# /configure --prefix=/usr --sysconfdir=/etc/ssh --with-zlib --with-ssl-dir=/usr/local/ssl --with-md5-passwords --mandir=/usr/share/man --with-pam
# make
# make install
ssh –V
OpenSSH_71p1, OpenSSL 101p 9 Jul 2015
38、启动调试ssh
# /usr/sbin/sshd -d
debug1: sshd version OpenSSH_71, OpenSSL 101m 19 Mar 2015
debug1: private host key #0: ssh-rsa SHA256:EqDJvZiq8JgG+nG/xsmZ6yrd3B+OoulgE5GhzSZcJHg
debug1: private host key #1: ssh-dss SHA256:AmqP8tvvqy3t1dSy1P4ETqh8Poma40PmzDpTtipVIqQ
debug1: private host key #2: ecdsa-sha2-nistp256 SHA256:sebvQl7OXvlFsbBy9zuUYPwWfqJm47qYBi/IIcEA8Jk
debug1: private host key #3: ssh-ed25519 SHA256:niy1XbgnrydgeFXfMqVjkfRbUlZ4YeFsWof2cWoCBWc
debug1: rexec_argv[0]='/usr/sbin/sshd'
debug1: rexec_argv[1]='-d'
Set /proc/self/oom_score_adj from 0 to -1000
debug1: Bind to port 22 on 0000
Bind to port 22 on 0000 failed: Address already in use
debug1: Bind to port 22 on ::
Bind to port 22 on :: failed: Address already in use
Cannot bind any address
39、启动服务
# cp -p contrib/redhat/sshdinit /etc/initd/sshd(redhat使用)
# cp -p contrib/suse/rcsshd /etc/initd/sshd(suse使用)
//其他版本操作系统具体查看contrib对应目录和readme。
# chmod +x /etc/initd/sshd
# chkconfig --add sshd
# cp sshd_config /etc/ssh/sshd_config (如提示覆盖,yes回车)
# cp sshd /usr/sbin/sshd (如提示覆盖,yes回车)
10、验证是否成功
service sshd start
ssh -V
OpenSSH_71p1, OpenSSL 101m 19 Mar 2015
此时可以尝试远程ssh进去服务器,如果能连,并查看验证日志信息等确认无误。
查看ssh服务状态:
//以下配置redhat略有不同,具体情况具体解决。
/etc/initd/sshd status
Checking for service sshd unused
状态不可用,ssh连接正常。
pkill sshd
杀掉sshd服务
service sshd start
启动sshd服务
service sshd status
Checking for service sshd running
卸载telnet-server
rpm –e telnet-server
客户端连接telnet失败。
# vi /etc/ssh/sshd_config
PermitRootLogin yes
0条评论