目录:
- 1、linux下开启SSH,并且允许root用户远程登录,允许无密码登录
- 2、linux 配置ssh有几种方法
- 3、linux开启ssh服务
- 4、linux之ssh命令详解
- 5、Linux配置ssh
linux下开启SSH,并且允许root用户远程登录,允许无密码登录
参考:
1. 允许root用户远程登录
修改ssh服务配置文件
sudovi/etc/ssh/sshd_config
调整PermitRootLogin参数值为yes,如下图:
2. 允许无密码登录
同上,修改ssh服务配置文件,两种情况:
1) 将PermitEmptyPasswords yes前面的#号去掉
2) 将PermitEmptyPasswords 参数值修改为yes,如下图:
无论哪种,最后PermitEmptyPasswords参数值为yes
以上两种配置,均需要重启ssh服务
service sshd restart # 或者/etc/initd.d/sshd restart
扩展:
为了安全起见,FreeBSD默认情况下是不允许root用户进行SSH远程登录的,需要进行以下操作才可以进行Root用户的ssh远程登录。
首先vi编辑/etc/inetd.conf,去掉ssh前的#注释,保存后:wq退出 (开启监听ssh服务)
编辑/etc/rc.conf, 最后加入:sshd_enable=”yes”即可
激活sshd服务:
#/etc/rc.d/sshd start
检查服务是否启动,在22端口应该有监听。
# check port number22
#netstat -an #或
#netstat -tnlp
最后,编辑ssh配置文件
#vi/etc/ssh/sshd_config
在/etc/ssh/sshd_config最后中加入
PermitRootLogin yes #允许root登录
PermitEmptyPasswords no #不允许空密码登录
PasswordAuthentication yes # 设置是否使用口令验证。
修改完配置文件后,重新启动sshd服务器(/etc/rc.d/sshd restart)即可。
补充:
1. 如果重启后还是不行, 请重新载入sshd_config 文件
/etc/rc.d/sshd reload
2. 如果出现using keyboard-interactive authentication
password:
请确认配置文件中,PasswordAuthentication参数值是否已经改成yes
另外如果客户端是putty, 那么请确认”尝试’智能键盘’认证(SSH-2)”的勾是否有去掉!!!!
3. 如果是使用root帐号登陆
请确认密码是否为空
空密码无法登陆
4. 请确认是否有安装SSH
确认sysinstallconfigurenetworkingsshd是否的勾是否有打上.
linux 配置ssh有几种方法
直接使用Linux系 统的root帐户登录系统,在很多环境下是不允许。而且如果网络中的所有机器都能使用ssh登录关键服务器也是不允许的。这就要求我们需要使用一些手段, 现在root帐号的登录,而且是只有指定的几台机器才能登录。当然限制登录的ip这些通过网络设备也恩那个完成。但是我们只需要了解怎么使用系统自己的功 能实现,这是每一个系统管理员都比较了解的。
1,修改ssh的配置文件,是root用户只能通过本地登录,不能通过远程ssh连接服务器。
vim /etc/ssh/sshd_config,
把#PermitRootLogin yes改成
PermitRootLogin no,然后重启ssh服务器,root用户就不能通过ssh远程登录系统了,只能通过一个普通帐号su或者本地登录。
2,可以同修改其他系统配置文件,使之能通过几个指定的IP远程ssh登录服务器。把下面这段放到root的.bash_profile文件中
ALLOWHOSTSLIST="192.168.163.1"
REMOTEHOST=$(env | grep SSH_CLIENT | awk '{print $1}' | awk -F "=" '{print $2}')
if echo "${ALLOWHOSTSLIST}" | grep "${REMOTEHOST}" /dev/null
then :
else
exit
fi
结果就只能通过IP地址是192.168.163.1这台服务器通过ssh远程连接本服务器了。
3,可以把需要ssh远程服务器的IP地址添加到/etc/hosts.allow,例如下面的操作:
sshd:192.168.163.1:allow #只允许这个IP地址ssh登录
sshd:192.168.163.:allow #允许这个网段的所有IP地址ssh登录
sshd:all:deny #拒绝所有没有出现在上面的IP地址的ssh连接
4,也可以使用iptables指定能够远程ssh到服务器的IP地址
iptables -A INPUT -p tcp --dport 22 -s 192.168.163.1 -j ACCEPT #允许这个IP地址ssh连接本服务器
iptables -A INPUT -p tcp --dport 22 -s 192.168.163.0/24 -j ACCEPT #允许这个网段的所有IP远程ssh连接本服务器
iptables -A INPUT -p tcp --dport 22 -j DROP #除了上面允许的IP地址外,都拒绝使用ssh连接到服务器
linux开启ssh服务
1."linux开启ssh服务,为您提供linux开启ssh服务图文信息,打开linux系统,在linux的桌面的空白处右击。
2.在弹出的下拉选项里,点击打开终端。
3.确认安装好ssh的前提下,输入servicesshdstart命令,下方出现OK表示已经开启。
linux之ssh命令详解
ssh是什么呢? 👉百科上是这么说的
简单来说,在linux中SSH是非常常用的工具,通过SSH客户端我们可以连接到运行了SSH服务器的远程机器上,也就是说,我们可以通过ssh来远程控制我们的电脑或者服务器。那么ssh协议的优点就是数据传输是加密的,可以防止信息泄露,而且数据传输是压缩的,可以提高传输速度。
它的命令格式是👉 ssh [-p port] user@remote
user 是在远程机器上的用户名,如果不指定的话默认为当前用户
remote 是远程机器的地址,可以是IP/域名,或者是别名
port 是SSH Server监听的端口,如果不指定,就为默认值22
(使用exit退出当前用户的登录)
有关SSH配置信息都保存在用户家目录下的.ssh目录下
接下来,我们就来实际演示一下ssh命令的使用
首先我们需要两台linux系统的电脑来进行演示,所以我用虚拟机安装了两个linux的系统,分别命名为Deepin1和Deepin2(不得不说deepin真的是即好看又好用😄)
不过deepin操作系统默认ssh是没有开启的,我们需要手动将它开启。
第一步,在终端输入sudo apt-get install ssh安装ssh服务
第二步,在终端中输入sudo service ssh start开启ssh服务
注意:deepin1和deepin2都要执行上面两步来安装和开启ssh服务
安装并打开ssh之后,我们使用Deepin1来远程连接Deepin2,那么我们需要知道Deepin2的ip地址,在终端中输入ifconfig就可以知道当前机器的ip地址了,或者也可以直接把鼠标放到网络连接上,会直接显示出来。我这里Deepin2的IP地址为:192.168.56.132
然后,我们在Deepin1的终端中输入ssh -p 22 deepin2@192.168.56.132然后回车
这里 -p 22 可以省略,22表示ssh的端口号为22, deepin2 为Deepin2的用户名, 192.168.56.132 为Deepin2的ip地址。
第一次连接,会弹出来是否连接的确认信息,我们输入yes确认,然后输入deepin2的密码并回车。出现如下界面就表示连接成功了。
连接成功后,我们尝试输入 cd Desktop/ 切换到桌面目录,然后输入 touch 123.txt 在桌面下创建123.txt文件
我们再切换到Deepin2系统中,发现桌面上的确出现了一个新的文件123.txt,大功告成!
到这里ssh的基本操作其实已经演示完了,但是我们发现每次远程登陆的时候都需要重新输入密码,稍微有点麻烦,其实我们可以通过设置,进行免密码登录。
免密登录:
第一步,配置公钥。在Deepin1终端中执行ssh-keygen即可生成SSH钥匙,一路回车即可。
第二步,上传公钥到服务器。在Deepin1终端中执行ssh-copy-id -p port user@remotr(ssh-copy-id -p 22 deepin2@192.168.56.132)可以让远程服务器记住我们。
第三步,设置完成了,试一下是否能免密登录呢?
可以看到,当我们远程登陆deepin2时,并没有输入用户密码就登陆成功了!其实挺简单的不是吗?
Linux配置ssh
1、购买服务器
2、加入安全组
3、修改实例名称,修改实例密码
1 查看ssh配置
2 安装SSH
3 启动服务
4 查看ssh服务的状态
输入以下命令:
5 在电脑终端输入
1.添加文件
2.添加公钥到文件内(id_rsa.pub)
3.编辑ssh配置文件:
4.重启sshd服务
5 在电脑终端输入
常见错误:
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:**d8mG3CPJc81mLgPPwLwVy7LF8qvUUuXi**cPKzTyE.
Please contact your system administrator.
Add correct host key in /Users/admin/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /Users/admin/.ssh/known_hosts:12
ECDSA host key for 47.96.118.128 has changed and you have requested strict checking.
Host key verification failed.
解决办法如下 输入
然后重新连接即可。
评论前必须登录!
注册