技巧3——如何SSH登录到linux服务器的指定目录?

在企业当中,管理员经常需要SSH登录到远程服务器并立即cd到一个目录下面来继续交互式作业

1.什么是SSH?

简单的说,ssh是一种网络协议,用于计算机之间的加密登录
如果一个用户从本地计算机,使用ssh协议登录到另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泻露

在最早的时候,互联网通信都是明文通信,一旦中间被截获,内容就暴露无疑
1995年,芬兰学者Tatu Ylonen设计了SSH协议,将登录信息全部加密,成为互联网安全的基本解决方案
目前已经成为linux系统的标准配置

需要指出的是,ssh只是一种协议,存在多种实现,机有商业实现,也有开源实现
本文是OpenSSH,它是一个自由软件,应用非常的广泛

2.SSH参数的解释说明

ssh user@host

-1 强制使用ssh协议版本1
-2 强制使用ssh协议版本2
-4 强制使用ipv4地址
-6 强制使用ipv6地址
-A 开启认证代理连接转发功能
-a 关闭认证代理连接转发功能
-b 使用本机指定地址作为对应连接的源ip地址
-C 请求压缩所有数据
-F 指定ssh指令的配置文件
-f 后台执行ssh指令
-g 允许远程主机连接主机的转发端口
-i 指定身份文件
-I 指定连接远程服务器登陆用户名
-N 不执行远程指令
-o 指定配置选项
-p 指定远程服务器上的端口
-q 静默模式
-X 开启X11转发功能
-x 关闭X11转发功能
-y 开启新人X11转发功能

3.主讲内容

通常,我们所作的操作如下:
ssh user@remote-system先远程连接到某个主机
cd 然后进入某一个目录
上述两条命令可以简化为一条命令
ssh -t [email protected] ‘cd /home/student ;bash’
-t表示用于强制分配伪终端,这是一个必要的交互式shell
也可以使用下面的命令
ssh -t [email protected] ‘cd /home/student ; exec bash’
ssh -t [email protected] ‘cd /home/student && exec bash -l’
-l 表示将bash设置为登陆的shell
bash表示我在远程系统中默认使用的shell类型
你也可以在远程系统中的.bash_profile文件中添加你想在SSH登陆后执行的命令
nano ~/.bash_profile
写入:cd /home/student >& /dev/null
wq保存退出
source ~/.bash_profile 运行使修改生效

你可能感兴趣的:(小技巧)