标签:ssh
TELNET 23/TCP
yum -y install xinetd telnet telnet-server
vi /etc/securetty 加入pts/0 pts/1
systemctl enable telnet.socket
systemctl start telnet.socket
systemctl enable xinetd
systemctl start xinetd
SSH 22/TCP
sshv2
SSH协议版本
v1:基于CRC-32做MAC,不安全,man-in-middle
v2:双方主机协议选择安全的MAC方式
基于DH算法做密钥交换,基于RSA或者DSA算法实现身份认证
两种方式用户登录认证;
基于password
基于key
c/s
c:ssh,scp,sftp
windows客服端;
xshell,putty,securecrt,sshsecureshellclient
S:sshd
客服端配置
ssh,配置文件:/etc/ssh/ssh_config
服务器端配置
sshd,配置文件:/etc/ssh/sshd_config
#PermitRootLogin no 是否允许管理员登录
#UseDNS no 关闭
ssh -X 本地显示远程主机上的图形界面
ssh服务的最佳实践:
1.不要使用默认端口
2.禁止使用protocol version 1
3.限制可登录用户;allowusers,allowgroups
4.设置空闲会话超时时长
5.利用防火墙设置ssh访问策略
6.监听特定的IP
7.基于口令认证,使用强密码策略
8.使用基于密钥的认证
9.禁止使用空密码
10.禁止root用户直接登录
11现在ssh的访问频度和并发在线数
12.做好日志,经常分析;
ssh的另一个实现dropbear
传输层:提供进程地址
port number
tcp:传输控制协议,面向连接的协议。通讯前建立虚拟链路;结束后拆除链路
0-65535
upd:用户数据报协议,无连接协议
0-65535
IANA:
0-1023:永久分配给固定的应用使用。
ssh 22/tcp, http 80/tcp ,https 443/tcp
1024-41951:也是注册端口,但要求并没有特别严格
memcached 11211/tcp
mysql 3306/tcp
41952+;客户端程序随机使用
/proc/sys/net/ipv4/ip_local_port_range
SOCK_STREAM:tcp套接字
SOCK_DGRAM:udp套接字
SOCK_RAM:裸套接字
TCP协议的特征:
建立连接:三次握手
将数据打包成段:效验和CRC-32
确认、重传以及超时
排序:逻辑序号
流量控制:滑动窗口算法
拥塞控制:慢启动和拥塞避免算法
Socket Domain
根据其所使用的地址
AF_INET:Address family:ipv4
AF_INET6:IPV6
AF_UNIX:同一主机不同进程之间通讯
两种socket:流,数据报
流:可靠的传递、面向连接、无边界
数据报:不可靠的传递、有边界、无连接
标签:ssh
原文地址:http://perper.blog.51cto.com/6284626/1958099