O serviço Frp realiza penetração na intranet SSH máquina virtual de intranet remota

 1. Preparações

Um serviço de nuvem (requer IP público )

A máquina virtual VmWare (linux) do host local, eu uso o CentOS7.

2. Configuração 

2.1 Configuração do Servidor

新建opt/frp文件夹,可自行决定存放位置,但需要记得。
mkdir /opt/frp

进入文件夹
cd /opt/frp

wget下载frp服务压缩包,这里是0.34版本,注意客户端与服务端需保持版本一致。
wget https://github.com/fatedier/frp/releases/download/v0.34.0/frp_0.34.0_linux_amd64.tar.gz

解压
tar -zxvf frp_0.34.0_linux_amd64.tar.gz

进入目录
cd frp_0.34.0_linux_amd64

查看服务端配置文件
cat frps.ini

[common]
bind_port = 7000
#不需要更改,有需要用vi自行更改。

运行
./frps -c frps.ini

#frpc.ini A porta padrão do servidor é 7000, que pode ser alterada através do frpc.ini.

#Se a operação não puder ser executada, adicione 777 permissões, chmod 777 frps.ini

 Não use ctrl+c ou feche o terminal neste momento, senão o programa terminará automaticamente.Você pode criar um novo terminal e verificar se o processo está rodando através de ps aux | grep frpc.ini.

2.2 Configuração do Cliente

Meu cliente aqui é uma máquina virtual no host local Vmware. Aqui, deve-se garantir que as versões do serviço frp do servidor e do cliente sejam consistentes.

新建frp目录
mkdir /opt/frp

进入frp
cd /opt/frp

wget下载压缩包
wget https://github.com/fatedier/frp/releases/download/v0.34.0/frp_0.34.0_linux_amd64.tar.gz

解压
tar -zxvf frp_0.34.0_linux_amd64.tar.gz

进入目录
cd frp_0.34.0_linux_amd64

更改配置文件
vim frpc.ini

Altere o arquivo frpc.ini

server_addr: IP da rede pública

server_port = 7000 A porta onde o servidor executa o frps pode ser alterada, mas deve ser consistente com o frps.ini do servidor.

remote_port: porta de mapeamento de rede pública, se houver vários clientes, cada cliente precisa usar um número de porta diferente.

[common]
server_addr = *.*.*.* #公网ip
server_port = 7000 服务端运行frps的端口,必须与服务端的frps.ini一致

[ssh]
type = tcp
local_ip = 127.0.0.1 
local_port = 22
remote_port = 6000 # 实现映射,公网IP:6000会映射到本客户端的22端口

Se houver várias máquinas virtuais, você precisa alterar as portas mapeadas 6001, 6002... e [ssh] precisa ser alterado, como [ssh_1], [ssh_2]..., caso contrário, um erro será relatado, Erro de inicialização [ssh]: o nome do proxy [ ssh] já está em uso.

Execute o cliente frp no modo de primeiro plano

./frpc -c frpc.ini

2.3 Teste

Nota : As portas do servidor e do cliente precisam ser abertas no servidor de nuvem, que precisam ser definidas no grupo de segurança da plataforma de nuvem, onde as portas 7000 e 6000 precisam ser abertas.

Qualquer máquina na rede externa pode ser conectada através do protocolo SSH.

SSH -p 6000 root@IP público

 3. Configurações automatizadas

3.1 O programa é executado em segundo plano

ctrl+c para encerrar o serviço frp

Inicie o frp na forma de não fechar o plano de fundo, de modo que, mesmo que você pressione ctrl+c ou feche o terminal, o serviço frp ainda será executado em segundo plano. Este método não é recomendado para a primeira execução, porque a mensagem de erro não será exibida depois que este formulário for iniciado.

Servidor: nohup ./frps -c frps.ini &

Cliente: nohup ./frpc -c frpc.ini &

Tomemos o cliente como exemplo:

Então, como acabar com o processo nohup?

Você precisa usar ps aux | grep frp para consultar o número do processo e usar kill -9 process number para encerrar o processo. No momento, o número do processo é 27905.

3.2 Serviço de inicialização automática de inicialização

cliente:

Para encerrar o processo frpc, use kill -9 ID do processo para encerrar o processo e siga as etapas abaixo.

1,将frpc的自带系统文件 复制到系统文件夹 /usr/lib/systemd/system/内
	cp /opt/frp/frp_0.34.0_linux_amd64/systemd/frpc.service /usr/lib/systemd/system/frpc.service

2,frpc.service内容如下,无需更改。
	[Unit]
	Description=Frp Client Service
	After=network.target
	
	[Service]
	Type=simple
	User=nobody
	Restart=on-failure
	RestartSec=5s
	ExecStart=/usr/bin/frpc -c /etc/frp/frpc.ini
	ExecReload=/usr/bin/frpc reload -c /etc/frp/frpc.ini
	
	[Install]
	WantedBy=multi-user.target
	
2,按照frpc.service内的命令配置,将frpc启动文件何frpc.ini配置文件复制到指定路径,frpc是命令位置。
	mkdir /etc/frp
	cp /opt/frp/frp_0.34.0_linux_amd64/frpc.ini /etc/frp/frpc.ini
	cp /opt/frp/frp_0.34.0_linux_amd64/frpc /usr/bin/frpc

3,配置生效
	刷新配置文件
	systemctl daemon-reload
	设置开机自启动,确保frpc和frpc.ini文件复制成功才能执行该命令
	systemctl enable frpc
	查看状态,这里发现服务是dead或者inactive是正常现象
	systemctl status frpc
    重启
    reboot

4,如果启动失败。应该是文件的权限问题。可以将frpc.service,frpc.ini,frpc这几个文件的权限设为 777

Defina a inicialização para iniciar automaticamente e certifique-se de que os arquivos frpc e frpc.ini sejam copiados com sucesso antes de executar este comando , caso contrário, o serviço não poderá ser interrompido, mesmo se você encerrar o processo, o programa ainda será reiniciado automaticamente (não tenho sucesso do cp porque o arquivo frpc) mantém erros de loop , a menos que você exclua o arquivo /etc/frp/frpc.ini ou elimine o processo após o systemctl desativar o frpc.

systemctl list-unit-files | grep frpc pode verificar se o processo está definido para iniciar automaticamente

núcleo frpc.service:

ExecStart=/usr/bin/frpc -c /etc/frp/frpc.ini é equivalente a usar ./frpc -c frpc.ini, desde que o endereço do seu ExecStart e a localização do arquivo frpc.ini sejam os mesmos igual ao seu armazenamento real. Você pode até alterar diretamente o endereço de ExecStart sem copiar frpc.ini. Não alteramos o conteúdo do arquivo de configuração aqui, mas copiamos o arquivo frpc.ini para o endereço correspondente de acordo com o arquivo de configuração.

Servidor:

O mesmo vale para o servidor, sem alterar o frps.service, basta copiar o frps.ini para o endereço correspondente ao ExecStart, e os demais passos são iguais.

arquitetura de exibição de arco mostra 686

Preste atenção para baixar a versão 386 para o sistema ubuntu

wget https://github.com/fatedier/frp/releases/download/v0.34.0/frp_0.34.0_linux_386.tar.gz

Acho que você gosta

Origin blog.csdn.net/weixin_48878440/article/details/127875590
Recomendado
Clasificación