如何开启SSH SERVER服务

如何开启SSH SERVER服务,第1张

如果你只是想登陆别的机器的SSH只需要安装openssh-client(ubuntu有默认安装,如果没有则sudo apt-get install openssh-client),如果要使本机开放SSH服务就需要安装openssh-server
sudo apt-get install openssh-server
然后确认sshserver是否启动了:
ps -e grep ssh
如果看到sshd那说明ssh-server已经启动了。
如果没有则可以这样启动:sudo /etc/initd/ssh start
ssh-server配置文件位于/ etc/ssh/sshd_config,在这里可以定义SSH的服务端口,默认端口是22,你可以自己定义成其他端口号,如222。
然后重启SSH服务:
sudo /etc/initd/ssh stop
sudo /etc/initd/ssh start
然后使用以下方式登陆SSH:
ssh username@1921681112 username为1921681112 机器上的用户,需要输入密码。
断开连接:exit

咱们可以尝试不让超级管理员root用户远程登陆到sshd服务上,这样一方面能提高服务器被黑客暴力破解密码的机率,也能让同学们锻炼下对服务程序的配置能力,首先咱们需要使用vim文本编辑器打开sshd服务的主配置文件,然后将第48行#PermitRootLogin no参数前的#号去掉,并将yes改成no,这样就不再允许root用户远程登陆了,最后记得保存并退出文件即可,修改后的参数如下:

[root@linuxprobe ~]# vim /etc/ssh/sshd_config 
………………省略部分输出信息………………
# >………………省略部分输出信息………………

不要忘记一件重要的事情,一般的服务程序并不会在咱们修改配置文件后就立即获取到了最新的运行参数,如果想让新的配置文件起效,咱们需要手动的重启一下服务程序才行,并且最好也能将这个服务程序加入到开机启动项中,这样使得下一次重启时sshd服务程序会自动运行。

[root@linuxprobe ~]# systemctl restart sshd
[root@linuxprobe ~]# systemctl enable sshd

在管理员模式#下运行
apt-get install openssh-server
安装完成后如下显示
检查ssh服务开启状态
ps -s | grep ssh
坑爹的发现居然SSHD(SSH-SERVER)服务没有起来
通过以下命令启动ssh服务
service ssh start
/etc/initd/ssh start
又一次坑爹的发现SSHD(SSH-SERVER)服务依然没有起来
服务开启判断方法
在ubuntu服务器上允许
ssh localhost
如果出现以下情况表示22端口没有正常开启
再一次安装openssh-server
系统会检查版本以及更新包的情况
修改SSH_CONFIG文件
vi /etc/ssh/ssh_config
最终必杀计:
重启
(可以通过图形或者命令行界面输入reboot进行重启)
果然重启后就都正常了。
外网telnet IP 22端口测试。

本文最初发表于 我的个人站点

更详细的解释可以参考 SSH百度百科

简单来理解,就是我拥有一台服务器,我现在想要登录上去做一些事情,那就得使用ssh登录到远程的服务器上,才能在上面进行 *** 作。

一开始在远程服务器上面,需要查看一下他的sshd服务启动了没有,如果没有启动,任何客户端主机是连接不上来的,一般如果是自己在云厂商处购买了主机,主机启动的时候就会把sshd服务启动起来。但有可能自己在测试环境搭建机器的时候,是没有默认启动的,这时候就需要在测试机器的终端看一下,命令如下

如果没有启动的话,那就启动一下,命令如下

这里我在测试环境机器的ip是 1921680187, 我在自己的电脑上想要登录这台机器,我要做的就是使用ssh命令去登录1921680187这台主机

我需要告诉1921680187这台主机我以谁的身份去登录, 1921680187会询问密码,命令如下

敲入正确的密码之后,我们就已经成功登录了主机了

这里看到让我输入一个文件名字来保存密匙,我这里示例就输入一个"foxchao"

回车以后,询问是否要输入一个密码来保护这个密匙,为了方便起见,我就不输入了,不然每次使用这个密匙文件还要输一遍密码,直接一路回车就ok,如下所示

到了这里,可以看到我们已经创建好了密匙对

现在我们新建了自己的密匙对之后,把foxchaopub这个文件放到目标的机器上,加入目标机器的 authorized_keys 中就可以了,以后登录的时候就可以免去输入密码的步骤。
那我们先用scp放上去 ,关于scp命令,这里不过多介绍,就是传文件的一个命令,使用也比较简单,具体想了解可以看这里 Linux scp命令

这里表示我要把foxchaopub这个文件拷贝到1921680187这台机器root用户的用户目录下

回车之后会询问密码,输入密码确认之后,文件就传上去了,如下

这时候我们先用密码登上去看看传上去没有

可以看到foxchaopub这个文件已经传上来了

目标主机上如果没有ssh文件夹,就自己创建一个,创建好之后,再创建一个authorized_keys文件。如果有的话就不用了。

把刚才的foxchaopub这个文件内容写进authorized_keys

看一下,已经有内容了

这里需要注意
authorized_keys 文件对权限有哟求,必须是600(-rw——-)或者644
ssh目录 必须是700(drwx——),否则一会儿登录不成功
弄完之后检查一下权限,如果不是的话,改成响应的权限就ok了

在登录之前,要确认一下目标主机是否允许密匙对登录,一般都是打开的,如果没有打开就自己打开
(查看 /etc/ssh/sshd_config 文件内容 中的 PubkeyAuthentication 这一项是否为 yes,如果不是就自己修改成yes之后重启sshd服务 )

为了避免繁琐的每次都敲一长串 user@host 这样的命令, 可以自己在ssh 目录下建一个config文件,文件内容如下,想要多了解一下配置参数使用的,可以看 linux ssh_config和sshd_config配置文件

文件建立好之后,直接使用自己定义的别名登录,非常方便快捷

如果是自己局域网搭建的机器,倒不用在意服务器的安全问题,但如果是暴露在公网上的机器,可以通过公网ip登录的,一定要注意自己服务器的安全问题,最起码不能开放默认端口,以及密码登录

在服务器上查看一下登录的日志,可以看到很多想要尝试登陆机器的人,所以公网上面的机器一定要做好自我保护

这里只列出一小部分的日志

统计一下,可以看到有29190次登录失败的记录

我们改掉默认的端口,以及禁用密码登录,只支持密匙对登录,这样一来,提高了服务器本身的安全性,至少没那么容易被别人登录上来为所欲为。

在服务器上修改sshd的配置文件

保存之后,重启sshd服务

使用自己定义的端口登录

1登陆linux系统,打开终端命令。输入 rpm -qa |grep ssh 查找当前系统是否已经安装
2
2如果没有安装SSH软件包,可以通过yum 或rpm安装包进行安装(具体就不截图了)
END
启动SSH服务2
1
安装好了之后,就开启ssh服务。Ssh服务一般叫做 SSHD
命令行输入 service sshd start 可以启动
2
或者使用 /etc/initd/sshd start
END
配置\查看SSHD端口3
1
查看或编辑SSH服务配置文件,如 vi /etc/ssh/sshdconfig
如果要修改端口,把 port 后面默认的22端口改成别的端口即可(注意前面的#号要去掉)
END
远程连接SSH4
如果需要远程连接SSH,需要把22端口在防火墙上开放。
关闭防火墙,或者设置22端口例外


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13408080.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-30
下一篇 2023-07-30

发表评论

登录后才能评论

评论列表(0条)

保存