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 no

修改默認端口
配置文件:/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
一般不建議此方法