
1,修改ssh的配置文件,是root用户只能通过本地登录,不能通过远程ssh连接服务器。
vim /etc/ssh/sshd_config,
把#PermitRootLogin yes改成
PermitRootLogin no,然后重启ssh服务器,root用户就不能通过ssh远程登录系统了,只能通过一个普通帐号su或者本地登录。
2,可以同修改其他系统配置文件,使之能通过几个指定的IP远程ssh登录服务器。把下面这段放到root的bash_profile文件中
ALLOWHOSTSLIST="1921681631"
REMOTEHOST=$(env | grep SSH_CLIENT | awk '{print $1}' | awk -F "=" '{print $2}')
if echo "${ALLOWHOSTSLIST}" | grep "${REMOTEHOST}" > /dev/null
then :
else
exit
fi
结果就只能通过IP地址是1921681631这台服务器通过ssh远程连接本服务器了。
3,可以把需要ssh远程服务器的IP地址添加到/etc/hostsallow,例如下面的 *** 作:
sshd:1921681631:allow #只允许这个IP地址ssh登录
sshd:192168163:allow #允许这个网段的所有IP地址ssh登录
sshd:all:deny #拒绝所有没有出现在上面的IP地址的ssh连接
4,也可以使用iptables指定能够远程ssh到服务器的IP地址
iptables -A INPUT -p tcp --dport 22 -s 1921681631 -j ACCEPT #允许这个IP地址ssh连接本服务器
iptables -A INPUT -p tcp --dport 22 -s 1921681630/24 -j ACCEPT #允许这个网段的所有IP远程ssh连接本服务器
iptables -A INPUT -p tcp --dport 22 -j DROP #除了上面允许的IP地址外,都拒绝使用ssh连接到服务器
通过ssh远程登录linux系统步骤如下:
1、启动软件,点击快速连接,我们要选择连接的协议。
2、协议选择要然后填写服务器的IP地址和用户名,然后点击连接。
3、在通过验证后需要填写连接服务器的密码,下面的保存密码一般都会进行勾选,方便下次登录。
4、连接成功后就可以正常登录到服务器系统了。
推荐这四款:
1、putty
putty是最有名的SSH和telnet客户端,由Simon
Tatham为Windows平台开发。putty是一款开源软件,提供可用的源代码并有一批志愿者进行开发和支持。
2、secureCRT
secureCRT支持SSH,同时支持Telnet和rlogin协议。secureCRT是一款用于连接运行包括Windows、Unix和VMS的理想工具。通过使用内含的VCP命令行程序可以进行加密文件的传输。有流行CRTTelnet客户机的所有特点,包括:自动注册、对不同主机保持不同的特性、打印功能、颜色设置、可变屏幕尺寸、用户定义的键位图和优良的VT100、VT102、VT220和ANSI竞争,能从命令行中运行或从浏览器中运行。其它特点包括文本手稿、易于使用的工具条、用户的键位图编辑器、可定制的ANSI颜色等。secureCRT的SSH协议支持DES、3DES和RC4密码和密码与RSA鉴别。
3、EasySSH
EasySSH是一款便捷的GUI SSH客户端,提供了一种连接远程Linux服务器的快捷工具。
尽管EasySSH没有提供Putty中提供的大量配置选项,但是它非常易于使用。EasySSH的最佳功能之一是提供标签式界面,因此你可以打开多个SSH连接并在它们之间快速切换。EasySSH的功能包括:分组、保存用户名密码、外观选项、支持本地和远程隧道。
4、Xshell
Xshell是一个强大的安全终端模拟软件,它支持SSH1、SSH2以及Microsoft Windows平台的TELNET协议。xshell通过互联网到远程主机的安全连接以及它创新性的设计和特色帮助用户在复杂的网络环境中享受他们的工作。
默认配置Windows下有很多SSH工具。在这里我是用的是Putty。如果安装了Git并配置使用Putty的话,就不需要另外在安装Putty了。使用SSH连接服务器的命令如下:
ssh IP地址
一般来说为了安全性考虑,端口号等一些参数并不会使用默认值。这样的话命令就变成这样:
ssh 用户名@IP地址 -p 端口号
如果连接成功的话会提示你输入远程服务器的密码。全部成功之后SSH就会显示远程服务器的提示符,这时候就说明连接成功了。
密钥登录
每次登录SH都需要输入密码很麻烦,而且可能不太安全。SSH还能使用另外一种登录方式,也就是使用密钥登录。这种登录方式需要客户端生成一堆公钥私钥对,然后将公钥添加到服务器中,这样下次就可以直接登录了。
首先生成SSH密钥,依照提示输入信息即可。默认生成在用户主目录中的ssh文件夹中。带pub的是公钥,接下来需要添加到服务器中。
ssh-keygen
然后将本地公钥添加到服务器中,需要使用另一个命令:
scp -P 端口号 本地文件路径 用户名@远程服务器地址:远程路径
然后登陆服务器,找到复制进去的公钥,将公钥名字改为authorized_keys并添加到对应的ssh文件夹中。然后退出SSH重新登陆试试,成功的话不需要输入密码就会直接进入远程服务器。SSH(Secure Shell)是一种能够提供安全远程登陆会话的协议,假如希望在远程Linux系统中执行命令,就是通过这个协议啦!
为什么要强调SSH协议是安全的呢?因为比如ftp、telnet等服务在网络上不会对口令或数据进行加密,那么骇客们真的非常容易就可以截获这些信息(尤其是同局域网内的用户),因此它们在本质上就是不安全的。
sshd服务提供两种安全验证的方法:
基于口令的安全验证:经过验证帐号与密码即可登陆到远程主机。
基于密钥的安全验证:需要在本地生成"密钥对"后将公钥传送至服务端,进行公共密钥的比较。
ssh命令用于远程管理Linux主机,格式为:“ssh [参数] 主机”。
参数 作用
-p 指定连接端口(默认为22)
-v 显示连接过程的详细信息
详情可以看下>
1、linux下用ssh登陆后退出主要有两个命令,Logout和exit。首先使用工具登录一台linux服务器,这里使用ssh登录:
2、首先使用Logout命令尝试退出ssh,这里可以看到程序是直接退出的,并且会在屏幕上打印出Connection closed by foreign host:
3、最后是使用exit命令尝试退出,这里的效果和用Logout命令退出是一样的,当然exit命令比较短,输入也相对方便一些。以上就是ssh退出登录的方法:
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)