SSH 详解
2015-09-13 14:19
337 查看
SSH(Secure Shell)是一个远程登录和远程执行命令工具。SSH协议目前有SSH1和SSH2两种,实现SSH协议的主要有OpenSSH和SSH Communication Security Corporation。OpenSSH包含了一下命令:
sshd:SSH服务端程序
sftp-server:SFTP服务端程序(类似FTP但提供数据加密的一种协议)
slogin:SSH的别名
ssh:SSH协议的客户端程序,用来登入远程系统或远程执行命令
ssh-add:SSH代理相关程序,用来向SSH代理添加key
ssh-agent:SSH代理程序,如果给private key加了密码,加入agent后可以在terminal session中首次输入密码即可。
ssh-keygen:SSH key 生成器
scp:非交互式sftp-server的客户端,用来向服务器上传/下载文件
sftp:交互式sftp-server客户端,用法和ftp命令一样
首次登录时,SSH会把主机指纹存入know_hosts文件中,如果该主机重装系统,ssh指纹改变,则需要删除对应的指纹。.ssh目录权限必须是700,并且用户的home目录不能给其他用户写权限。如果发生不能登录的问题,查看服务器上的日志/var/log/secure。在/etc/ssh/ssh_config是SSH客户端的配置文件,/etc/ssh/sshd_config是SSH服务端的配置文件。
服务器的authorized_keys文件中存放着授权客户端的public key。客户端向该文件添加public key有以下另种方法:
服务器添加授权public key:
在ssh命令后跟其他bash命令是执行远程服务器的命令,相当于登入服务器,执行命令,然后登出服务器。
对/.ssh/config文件做配置,可以将不同host用不同key登录:
Host SERVERNAME1
IdentitiesOnly yes
IdentityFile ~/.ssh/id_rsa_SERVER1
# CheckHostIP yes
# Port 22
Host SERVERNAME2
IdentitiesOnly yes
IdentityFile ~/.ssh/id_rsa_SERVER2
# CheckHostIP no
# Port 2177
ControlMaster auto
ControlPath /tmp/%r@%h:%p别名登录参见
通用资料
详细资料
DSA key 使用
sshd:SSH服务端程序
sftp-server:SFTP服务端程序(类似FTP但提供数据加密的一种协议)
slogin:SSH的别名
ssh:SSH协议的客户端程序,用来登入远程系统或远程执行命令
ssh-add:SSH代理相关程序,用来向SSH代理添加key
ssh-agent:SSH代理程序,如果给private key加了密码,加入agent后可以在terminal session中首次输入密码即可。
ssh-keygen:SSH key 生成器
scp:非交互式sftp-server的客户端,用来向服务器上传/下载文件
sftp:交互式sftp-server客户端,用法和ftp命令一样
首次登录时,SSH会把主机指纹存入know_hosts文件中,如果该主机重装系统,ssh指纹改变,则需要删除对应的指纹。.ssh目录权限必须是700,并且用户的home目录不能给其他用户写权限。如果发生不能登录的问题,查看服务器上的日志/var/log/secure。在/etc/ssh/ssh_config是SSH客户端的配置文件,/etc/ssh/sshd_config是SSH服务端的配置文件。
服务器的authorized_keys文件中存放着授权客户端的public key。客户端向该文件添加public key有以下另种方法:
ssh-copy-id username@remote_host
cat .ssh/id_rsa.pub | ssh username@remote_host "cat >> .ssh/authorized_keys"
服务器添加授权public key:
echo public_key_string >> ~/.ssh/authorized_keys
在ssh命令后跟其他bash命令是执行远程服务器的命令,相当于登入服务器,执行命令,然后登出服务器。
ssh host 命令重启多台服务器:
for i in $(seq 1 254) ; do ssh 10.0.0.${i} reboot ; done
对/.ssh/config文件做配置,可以将不同host用不同key登录:
Host SERVERNAME1
IdentitiesOnly yes
IdentityFile ~/.ssh/id_rsa_SERVER1
# CheckHostIP yes
# Port 22
Host SERVERNAME2
IdentitiesOnly yes
IdentityFile ~/.ssh/id_rsa_SERVER2
# CheckHostIP no
# Port 2177
ControlMaster auto
ControlPath /tmp/%r@%h:%p别名登录参见
通用资料
详细资料
DSA key 使用
相关文章推荐
- java 单例模式
- C#中DataGridView控件使用大全
- Binder 驱动程序
- Spring MVC BeanNameUrlHandlerMapping example
- MQTT协议简记
- Java 实现金额自动已逗号分开的功能 运用DecimalFormat
- RESTful概念理解
- HDU5438拓扑排序删点加DFS
- 纹理过滤模式中的Bilinear、Trilinear以及Anistropic Filtering
- 六子棋的15种棋型
- 字节输入输出流的代码注意事项
- Zend framework2-下载文件方法
- 2015 ACM/ICPC Asia Regional Changchun Online Pro 1002 Ponds(拓扑排序+并查集)
- Spring 3 MVC hello world example – Annotation
- Lync 2010 标准版之搭建Lync服务器(五)
- SQL server数据库的学习内容
- javascript严格模式下的8点规则
- [C++] static的作用
- VirtualBox下Windows和Ubuntu的文件夹共享
- Lync 2010 标准版之Lync服务器准备(四)