阮一峰的IT笔记:首页 -> 分类 -> Linux 查看所有文章:按分类 | 按月份

安全的管理你的远程Ubuntu服务器

要安全的管理你的远程Ubuntu服务器,你需要安装SSH服务器. SSH为你提供一个加密通道来登录到远程服务器并运行命令. 另外,SSH还提供了一些高级功能来简化你的远程管理工作.

在Ubuntu中安装SSH服务器

sudo apt-get install openssh-server

该软件包负责生成初始的RSA和DSA keys, 并提供一个默认的SSH配置.
连接服务器

在另一台机器上使用下面的命令来连接服务器:

ssh serveripaddress

例如:

ssh 195.14.2.1 (ypxing注: 假设主机195.14.2.1上安装了SSH服务器)

配置SSH

/etc/ssh/sshd_config是主要的配置文件. 默认配置允许远程root用户登录和X11 forwarding, 这队安全性没有好处.所以我们要关掉这两个选项.

禁止远程root用户登录

在文件/etc/ssh/sshd_config中搜索下面这行:

PermitRootLogin yes

把它改成:

PermitRootLogin no

禁止X11 forwarding

在文件/etc/ssh/sshd_config中搜索下面这行:

X11Forwarding yes

把它改成:

X11Forwarding no

用下面的命令来重启SSH服务器:

sudo /etc/init.d/ssh restart

X11 Forwarding

如果你想使用X11 Forwarding选项来利用Xterm连接你的远程机器的桌面 (ypxing注: 上面的X11 Forwarding选项需要打开),你需要使用下面的命令:

ssh -X serverIpAddress

利用SCP来安全的拷贝文件

另外一个常用的需求是在你管理的服务器之间拷贝文件.尽管你可以在所有的服务器上都安装一个FTP服务器,但这并不是一个理想的安全的解决方案.利用scp命令, SSH拥有拷贝文件的. 利用你已经建立的(SSH的)基于key的安全认证机制, 你可以在一个安全的通道上拷贝文件.

使用下面的命令来将一个本地文件拷贝到远程主机:

scp /path/to/file user@remotehost:/path/to/destination

使用下面的命令来将一个远程主机文件拷贝到本地:

scp user@remotehost:/path/to/file /path/to/destination

利用-r选项,来将一个本地目录拷贝到远程主机:

scp -r /path/to/directory/ user@remotehost:/path/to/destination/

如果你要传输日志文件或其他有较大压缩比的文件, -C参数会很有帮助. 这会打开压缩选项,虽然在拷贝的时候会使用更多的CPU,但是它会在传输的时候增加传输速度.

利用-l选项来限制可以使用的带宽. 把你希望的带宽放在-l后面, 它以K/s为单位. 例如,以256 Kbps的带宽来传输文件使用下面的命令:

scp -l 256 /path/to/file user@remotehost:/path/to/destination

« HTML 文件的DOCTYPE Declaration | 首页 | Ubuntu命令行下修改网络配置 »

About

This page contains a single entry from the blog posted on 2007年08月11日 13:49.

The previous post in this blog was HTML 文件的DOCTYPE Declaration.

The next post in this blog is Ubuntu命令行下修改网络配置.

Many more can be found on the main index page or by looking through the archives.

Powered by
Movable Type 3.33

Post a comment