【SSH服务】远程连接管理服务SSH
作者:互联网
一、远程连接管理服务SSH
1、了解服务端和客户端
服务端:提供服务
客户端:享受服务
2、了解端口号设定
端口范围0~65535.
- 1~255:一般为知名端口号。如:下面表格所示
- 256~1023:通常由Unix系统占用来提供特定的服务
- 1024~5000:客户端的临时端口,随机产生
- 大于5000:互联网上其他服务预留
协议名 | 传输协议 | 端口号 |
ftp文件传输协议:数据连接 | tcp | 20 |
ftp:控制连接 | tcp | 21 |
ssh、scp | tcp | 22 |
telnet远程登录 | tcp | 23 |
smtp email客户端 | tcp | 25 |
POP3 | tcp | 110 |
dns服务器与客户端交互 | udp | 53 |
dns服务器与辅助域名服务器交互 | tcp | 53 |
TFTP | udp | 69 |
NNTP | tcp | 119 |
IMAP3 | tcp | 220 |
nfs默认udp,可以设置tcp | udp | 2049(默认) |
vnc(默认端口5900,真正访问端口=5900+1) | tcp | 5901 |
http | tcp | 80 |
https | tcp、udp | 443 |
tomcat | 8080 | |
oracle数据库 | 1521 | |
mysql数据库 | 3306 | |
sql server对外服务 | tcp | 1433 |
sql server接收请求者返回的数据 | udp | 1434 |
3、SSH服务作用
用于Linux下远程连接管理服务器的安全协议。端口号22,C/S架构。
- 服务端(开启ssh服务):安装软件openssh-server
- 客户端(专门的客户端工具):Windows(SecureCRT、Mobaxterm);Linux(openssh-clients)
查看默认是否开启自启:
[root@rhel8 ~]# systemctl list-unit-files | grep "sshd.service" anaconda-sshd.service static sshd.service enabled
4、修改ssh服务默认端口
1)查看ssh服务端口
netstat命令:用于查看网络连接状态 -n:不显示名称 -l:查看监听状态 -t:TCP协议 -p:查看程序名 [root@rhel8 ~]# netstat -nltp | grep :22 [root@rhel8 ~]# lsof -i :22 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME sshd 1090 root 4u IPv4 30100 0t0 TCP *:ssh (LISTEN) sshd 1090 root 6u IPv6 30102 0t0 TCP *:ssh (LISTEN)
2)查看ssh的配置文件
# -l是留出所有改软件的文件,-c只列出配置文件 [root@rhel8 ~]# rpm -qc openssh-server /etc/pam.d/sshd /etc/ssh/sshd_config /etc/sysconfig/sshd
3)修改配置文件
[root@rhel8 ~]# vi /etc/ssh/sshd_config 在17行下添加一行 Port 10022
4)重启服务
[root@rhel8 ~]# systemctl restart sshd.service
重启时报错根据提示查看日志。如果是权限错误。
查看防火墙状态是否关闭;
查看安全连接日志tail -20 /var/log/secure;
查看系统日志tail -20 /var/log/messages;根据日志提示发现是SELinux问题。
查看SELinux的设置:需要将其设置为disabled
[root@rhel8 ~]# setenforce 0 [root@rhel8 ~]# getenforce Disabled
最后再重启SSH服务,问题解决。
5)测试SSH端口是否修改成功
[root@rhel8 ~]# netstat -nltp | grep sshd tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 3709/sshd: root@pts tcp 0 0 127.0.0.1:6011 0.0.0.0:* LISTEN 4454/sshd: root@pts tcp 0 0 0.0.0.0:10022 0.0.0.0:* LISTEN 4638/sshd tcp6 0 0 ::1:6010 :::* LISTEN 3709/sshd: root@pts tcp6 0 0 ::1:6011 :::* LISTEN 4454/sshd: root@pts tcp6 0 0 :::10022 :::* LISTEN 4638/sshd [root@rhel8 ~]# lsof -i :10022 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME sshd 4638 root 5u IPv4 66057 0t0 TCP *:10022 (LISTEN) sshd 4638 root 7u IPv6 66059 0t0 TCP *:10022 (LISTEN)
注意:客户端用10022端口连接
5、基于SSH服务的命令
1)Linux下客户端工具ssh
需要先安装client客户单软件:openssh-clients
# 查看是否安装 [root@rhel8 ~]# rpm -q openssh-clients openssh-clients-8.0p1-3.el8.x86_64
# 功能1:客户端远程连接登录Linux服务器(ssh服务)端 ssh 【选项】用户名@远程IP 选项: -l:指定访问用户 -p:指定端口号 [root@rhel8 ~]# ssh -p 10022 root@192.168.187.100 或 [root@rhel8 ~]# ssh -p 10022 -l root 192.168.187.100 # 功能2:客户端远程访问Linux服务器执行相应的命令(未登录) ssh 【选项】 远程IP 执行相应命令 [root@rhel8 ~]# ssh -p 10022 root@192.168.187.100 hostname rhel8.tourby.cn
2)Linux下远程拷贝命令scp
# 用法1:将本地文件远程拷贝到远程(push) scp 【选项】 本地文件 远程服务IP:/路径 选项: -P:端口号 -r:递归拷贝 [root@rhel8 ~]# scp -P 10022 -r /tanbaobao/ 192.168.187.100:/root/ # 用法2:将远程文件拷贝到本地(pull) scp 【选项】远程服务IP:/文件 本地路径 [root@rhel8 ~]# scp -P 10022 -r root@192.168.187.100:/root/ /tanbaobao/ # 如果拷贝速度慢,可以将远程IP地址加入到/etc/hosts文件下 # 如果用root以外的用户拷贝提示权限不允许,需要设置chmod或setfacl权限让该用户有可写w的权限
标签:sshd,服务,10022,tcp,SSH,rhel8,root,远程,ssh 来源: https://www.cnblogs.com/HeiDi-BoKe/p/13050231.html