openSUSE开通ssh服务

某日我的电脑在屏保时竟然死机了,千呼万唤昏天暗地使尽浑身解数之后,还是心痛地强制关机了。以后会不会再死机我不敢说,不过网上的人都说linux下死机只是XWindow界面死了,内核还是正常的。所有我想如果能够远程登录的话,或许可以用命令行关机,这样总比强制关掉好一些。     远程登录常用的(其实应该说是我所知道的)有telent和ssh两种,telnet不安全,而且并不比ssh方便,所以我便选定了ssh。

openSUSE在默认情况下是关闭ssh服务的(就是别人无法用ssh连接到你的电脑上来),有一些服务要安装和设置,我在网上google了一下,整理成这篇东东。

1.安装sshd软件包。通过yast找到的是yast2-sshd,名字套了一个yast2的马甲,安装完后就可以在yast里用界面来设置。通过yast--网络服务--SSHD配置,"登录设置"里设为允许root登录和密码验证(我是这么设置的,不然就没法远程关机了,如果要安全的法可以禁止root登录),"协议和加密"里选择2,因为据说ssh1协议有些漏洞,能不用就尽量不用,打开防火墙。    如果是CLI爱好者,也可以编辑/etc/ssh/sshd_config文件,里面的东东自己都看得懂。主要要设置PermitRootLogin为yes,PasswordAuthentication为yes,Protocol为2,注意去掉前面的注释号,yes一定要小写。

2.为了再安全一些,可以选择性地对一些IP开启ssh服务。编辑/etc/hosts.allow文件,其他不动,在最后一行添加 sshd : (你所允许的IP地址) : allow,如果是对某一段IP允许服务的话,可以写成192.168.0.0/24的形式。比如对所有59.22.33.×××的地址,就可以写成sshd : 59.22.33.0/24 : allow。同样要编辑/etc/hosts.deny文件,在最后一行加上sshd : all : deny。系统读取的时候是先读取allow文件再读取deny文件的,并且allow优先级较高,这样设置不会导致冲突。

3.由于openSUSE默认打开了防火墙,所以开启这些服务后还不行,必须定义一下防火墙规则。通过yast--安全和用户--防火墙--自定义规则,添加新规则,设置你所允许的IP,协议是TCP,目标端口22,打开防火墙,来源端口不填,就设置好了。

4.还差最后一步,ssh服务就开好了。用超级用户的身份或者sudo命令执行/etc/init.d/sshd restart命令,显示都是done就是开启成功了。再执行了/etc/init.d/sshd status命令查看一下状态。如果你还不放心,那可以从其他人的电脑上ssh试试看。

相关推荐