ssh使用方法
ssh使用方法
如果从一台linux服务器通过ssh远程登录到另一台Linux机器, 这种情况通常会在多台服务器的时候用到。
如用root帐号连接一个IP为192.168.1.102的机器,输入:“ ssh 192.168.1.102 -l root ”
如果该服务器的ssh端口不是默认的22端口,是自定义的一个如1234,则可在命令后面加参数-p,
如:“ ssh 192.168.1.102 -l root -p 1234 ”
SSH免密登录
1. 客户端生成密钥对文件
ssh-keygen -t rsa -b 2048
-t 指定加密类型(rsa/dsa等)
-b 指定密钥对加密长度
询问1:执行过程中会询问保存位置,一般默认保存在当前用户家目录下的.ssh/目录下
询问2:是否对密钥文件进行加密
加密:若加密,则在调用密钥文件时需要先验证密钥的密码,密码正确才能使用密钥文件
不加密:若不加密,则密钥文件可以直接被调用,整个登录验证过程无需输入任何密码,即为免密登录
2. 将公钥文件上传至服务器端
ssh-copy-id 用户名@服务器IP地址
#该用户名和要用来登录服务器的用户名一致
3. 客户端尝试登录服务器
ssh 用户名@服务器IP地址
#密钥对验证优先级大于账户密码验证
禁用密码验证
当我们学会了使用密钥对进行验证后,建议生产环境下将账户密码登录功能关掉
配置文件:/etc/ssh/sshd_config
选项:
PasswordAuthentication no
注意:ssh的配置文件中,并不是注释掉的就是不生效的,有些是默认生效,需要修改时一定要取消注释再修改
禁止使用root远程登录
配置文件:/etc/ssh/sshd_config
选项:
PermitRootLogin without-password (设置root用户只能用密钥登录)
PermitRootLogin no(设置root用户禁止远程登录)
修改默认端口
配置文件:/etc/ssh/sshd_config
选项:
Port 59527
ssh -p 端口 用户名@服务器IP
限制ssh监听IP:只允许指定IP登录ssh
配置文件:/etc/ssh/sshd_config
选项:
ListenAddress 192.168.88.100
telnet使用方法
[root@VM ~]# yumi telnet-server
telnet默认不允许root用户登录,若要允许root用户登录,可采取以下3种方法之一:
1、修改login文件
redhat中对于远程登录的限制体现在/etc/pam.d/login 文件中,如果把限制的内容注销掉,那么限制将不起作用。
#%PAM-1.0
auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
auth include system-auth
#account required pam_nologin.so
account include system-auth
password include system-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session include system-auth
session required pam_loginuid.so
session optional pam_console.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open
session optional pam_keyinit.so force revoke
~
2、移除securetty文件
验证规则设置在/etc/security文件中,该文件定义root用户只能在tty1-tty6的终端上记录,删除该文件或者将其改名即可避开验证规则实现root用户远程登录。
[root@rhel ~]# mv /etc/securetty /etc/securetty.bak
3、修改securetty文件
[root@rhel ~]# vim /etc/securetty
console
vc/1
....
....
vc/10
tty1
....
tty11
pts/1
pts/2
....
....
....
pts/11
一般不建议此方法