大家好,欢迎来到IT知识分享网。
Ubuntu20.04上安装配置openssh-server
本文将介绍在Ubuntu20.04 Desktop上安装并配置使用openssh-server
1. 安装ssh
sudo apt-get install openssh-server
2. 修改配置文件”/etc/ssh/sshd_config”
#使用超级用户权限编辑ssh配置文件
sudo vim /etc/ssh/sshd_config
#/etc/ssh/sshd_config
#其它根据个人需要进行修改,本文只介绍最基本的ssh配置
#Port 22 #ssh的端口设置,建议修改,可以避免端口扫描
Port 22222 #建议修改为5位数的端口,此处 22222 端口仅作为示例,请根据实际自行修改
#PermitRootLogin prohibit-password
PermitRootLogin no #禁止使用root用户连接
- 若修改过端口设置需要建立防火墙规则
[注]: 若未修改端口,在启动ssh服务后,客户端依然无法连接到服务器,应该是22端口被防火墙屏蔽所致,需按照以下步骤建立22端口的防火墙入站规则(即将以下22222修改为22)
#若 firewalld 未安装,请先安装
sudo apt-get install firewalld
#设置允许 tcp 22222 端口
sudo firewall-cmd --permanent --add-port=22222
#设置允许 ssh 服务 (可选)
sudo firewall-cmd --permanent --add-service=ssh
# reload firewall, 更新应用新规则
sudo systemctl reload firewalld
2.1. 补充
执行sudo firewall-cmd --permanent --add-port=22222
这条命令时有可能会出现下面这样的错误。
imaginemiracle@:$ sudo firewall-cmd --permanent --add-port=22222
Error: INVALID_PORT: bad port (most likely missing protocol), correct syntax is portid[-portid]/protocol
这是因为给firewall
新增许可规则时未声明协议类型,补充协议类型后即可正常设置。([注]:协议类型包括{'tcp'|'udp'|'sctp'|'dccp'}
)
sudo firewall-cmd --permanent --add-port=22222/tcp
2.2. 小知识
- 不小心搞错了怎么办
若不小心写错了端口号,可以使用下面命令移除添加的相关端口规则
sudo firewall-cmd --permanent --remove-port=22222/tcp
- 防火墙没开怎么办
“firewallD is not running”
有时候命令输了半天,敲下回车Enter
,报如下错误则说明防火墙没打开。
firewallD is not running
这个时候只需要打开防火墙即可,打开/关闭的相关命令如下:
# 开启防火墙
imaginemiracle@:~$ sudo systemctl start firewalld
# 关闭防火墙
imaginemiracle@:~$ sudo systemctl stop firewalld
# 查看防火墙状态
imaginemiracle@:~$ sudo systemctl status firewalld
2.4. 验证22222端口是否开启
imaginemiracle@:~$ sudo firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: eno1
sources:
services: dhcpv6-client ssh
ports: 22222/tcp #从这里看出防火墙已允许22222端口通过
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
3. 启动openssh-server
#启动 ssh 服务
:$ sudo /etc/init.d/ssh start
Starting ssh (via systemctl): ssh.service.
#查看 ssh 服务状态
:$ sudo /etc/init.d/ssh status
如下图,active则表示正在运行
4. 远端连接ssh
#不指定用户连接 [命令: ssh 服务端IP]
ssh 192.168.1.233
#指定用户连接 [命令: ssh UserName@ServerIP]
ssh imaginemiracle@192.168.1.233
#制定端口连接 [命令: ssh -p Port UserName@ServerIP]
ssh -p 22222 imaginemiracle@192.168.1.233
到此!恭喜你又学会了一项技能!
我正在参加年度博客之星评选,请您帮我投票打分,您的五星好评都是对我的支持与鼓励。https://bbs.csdn.net/topics/611387877
感谢您的支持!!
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/12192.html