Mudanças entre as edições de "Wiki"
Linha 12: | Linha 12: | ||
tar -zxf mediawiki-1.25.2.tar.gz | tar -zxf mediawiki-1.25.2.tar.gz | ||
− | + | <!-- cp -r mediawiki-1.25.2 nome_da_wiki_80 --> | |
cp -r mediawiki-1.25.2 nome_da_wiki_ssl | cp -r mediawiki-1.25.2 nome_da_wiki_ssl | ||
- Alterar permissões | - Alterar permissões | ||
− | + | <!-- chown -R www-data.www-data /var/www/wikis/nome_da_wiki_80 --> | |
chown -R www-data.www-data /var/www/wikis/nome_da_wiki_ssl | chown -R www-data.www-data /var/www/wikis/nome_da_wiki_ssl | ||
Linha 41: | Linha 41: | ||
<VirtualHost '''nome_da_wiki'''.if.ufrgs.br:80> | <VirtualHost '''nome_da_wiki'''.if.ufrgs.br:80> | ||
ServerAdmin webadmin@if.ufrgs.br | ServerAdmin webadmin@if.ufrgs.br | ||
− | DocumentRoot /var/www/wikis/''' | + | DocumentRoot /var/www/wikis/'''nome_da_wiki_ssl''' |
− | <Directory /var/www/wikis/''' | + | <Directory /var/www/wikis/'''nome_da_wiki_ssl'''> |
Options Indexes FollowSymLinks | Options Indexes FollowSymLinks | ||
AllowOverride None | AllowOverride None | ||
Linha 87: | Linha 87: | ||
- Editar dns | - Editar dns | ||
− | + | <!-- cd /etc/bind/dns-update/cnames --> | |
+ | cd /etc/bind/ | ||
vi cnames.txt | vi cnames.txt | ||
Linha 159: | Linha 160: | ||
$wgGroupPermissions['*']['edit'] = false; | $wgGroupPermissions['*']['edit'] = false; | ||
$wgGroupPermissions['*']['createaccount'] = false; | $wgGroupPermissions['*']['createaccount'] = false; | ||
− | require_once( 'LdapAuthentication.php' ); | + | require_once( 'includes/LdapAuthentication.php' ); |
$wgAuth = new LdapAuthenticationPlugin(); | $wgAuth = new LdapAuthenticationPlugin(); | ||
#$wgLDAPUseLocal = true; | #$wgLDAPUseLocal = true; | ||
Linha 190: | Linha 191: | ||
- Copiar o arquivo LdapAuthentication.php: | - Copiar o arquivo LdapAuthentication.php: | ||
− | cp /root/LdapAuthentication.php /var/www/wikis/ | + | cp /root/LdapAuthentication.php /var/www/wikis/nome_da_wiki_ssl/includes/ |
+ | |||
+ | - Criar diretório /schema/ | ||
+ | mkdir /var/www/wikis/nome_da_wiki_ssl/includes/schema | ||
+ | |||
+ | - Criar arquivos nesse novo diretorio | ||
+ | |||
+ | cd /var/www/wikis/nome_da_wiki_ssl/includes/schema | ||
+ | |||
+ | - mysql | ||
+ | |||
+ | nano ldap-mysql.sql | ||
+ | |||
+ | - Incluir: | ||
+ | |||
+ | CREATE TABLE /*_*/ldap_domains ( | ||
+ | -- IF for domain | ||
+ | domain_id int not null primary key auto_increment, | ||
+ | |||
+ | -- domain itself | ||
+ | domain varchar(255) binary not null, | ||
+ | |||
+ | -- User to which this domain belongs | ||
+ | user_id int not null | ||
+ | |||
+ | ) /*$wgDBTableOptions*/; | ||
+ | |||
+ | CREATE INDEX /*i*/user_id on /*_*/ldap_domains (user_id); | ||
+ | |||
+ | - postgres | ||
+ | |||
+ | nano ldap-postgres.sql | ||
+ | |||
+ | Incluir: | ||
+ | |||
+ | CREATE TABLE ldap_domains ( | ||
+ | -- IF for domain | ||
+ | domain_id serial PRIMARY KEY, | ||
+ | |||
+ | -- domain itself | ||
+ | domain varchar(255) not null, | ||
+ | |||
+ | -- User to which this domain belongs | ||
+ | user_id integer not null | ||
+ | |||
+ | ) /*$wgDBTableOptions*/; | ||
+ | |||
+ | CREATE INDEX user_id on ldap_domains (user_id); | ||
- Alterar permissões | - Alterar permissões |
Edição das 09h45min de 19 de outubro de 2015
Como criar wikis
- Na Helsinque
- Requisitos servidor
Baixar mediawiki no diretório /var/www/wikis/
cd /var/www/wikis
wget http://releases.wikimedia.org/mediawiki/1.25/mediawiki-1.25.2.tar.gz
- Descompactar e alterar nome
tar -zxf mediawiki-1.25.2.tar.gz
cp -r mediawiki-1.25.2 nome_da_wiki_ssl
- Alterar permissões
chown -R www-data.www-data /var/www/wikis/nome_da_wiki_ssl
APACHE
- Criar arquivo
cd /etc/apache2/sites-available/
-- http
nano nome_da_wiki_80
Incluir:
<VirtualHost nome_da_wiki.if.ufrgs.br:80> ServerAdmin webadmin@if.ufrgs.br DocumentRoot /var/www/wikis/nome_da_wiki_ssl <Directory /var/www/wikis/nome_da_wiki_ssl> Options Indexes FollowSymLinks AllowOverride None </Directory> ErrorLog /var/log/apache2/nome_da_wiki-error.log LogLevel warn CustomLog /var/log/apache2/nome_da_wiki-access.log combined </VirtualHost>
-- https
nano nome_da_wiki_ssl
Incluir:
<VirtualHost nome_da_wiki.if.ufrgs.br:443> ServerAdmin webadmin@if.ufrgs.br DocumentRoot /var/www/wikis/nome_da_wiki_ssl ServerName helsinque.if.ufrgs.br SSLEngine on RewriteEngine On SSLCertificateFile \ /etc/ssl/cominf.if.ufrgs.br.cert SSLCertificateKeyFile \ /etc/ssl/helsinque.if.ufrgs.br.key.unsecurity <Directory /var/www/wikis/nome_da_wiki_ssl> Options Indexes FollowSymLinks AllowOverride None </Directory> ErrorLog /var/log/apache2/nome_da_wiki-error.log LogLevel warn CustomLog /var/log/apache2/nome_da_wiki-access.log combined </VirtualHost>
- Criar link
cd /etc/apache2/sites-enabled ln -s ../sites-available/nome_da_wiki_ssl nome_da_wiki ln -s ../sites-available/nome_da_wiki_80 nome_da_wiki_80
- Reiniciar Serviço
/etc/init.d/apache2 restart
- Na gaya
DNS
- Editar dns
cd /etc/bind/ vi cnames.txt
Incluir:
Nome_da_wiki CNAME helsinque (ou servidor de wikis atual)
- Reiniciar serviço
cd .. ./dns-update.sh
BANCO DE DADOS -
- Acessar banco
mysql -p (colocar senha do banco de dados)
- Criar Banco de dados
mysql>show databases; mysql>create database wiki_nome_da_wiki;
- Dar acesso ao usuário wiki_user ao banco criado
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER ON wiki_nome_da_wiki.* TO wiki_user@143.54.40.45;
- reiniciar serviço
/etc/init.d/mysql restart
- Na rosen
- Incluir arquivo na base LDAP com pessoas autorizadas a modificar a wiki. Ou seja, incluir um novo "entry" na árvore da base de dados do LDAP. Isto pode ser feito através do programa lbe.sh.
dn: cn=w_nome_da_wiki,ou=grupos,ou=dominio, dc=if gidNumber: 2503 memberUid: User userPassword:: e2NyeXB0fSo= objectClass: posixGroup objectClass: top cn: w_nome_da_wiki
ATENÇÃO: Colocar primeira letra em maiúscula no nome do usuário. Isto não é necessário na wiki.if.ufrgs.br, pois ela está utilizando uma nova versão da extensão LDAP Authentication ( >2.0 tem um LDAPLowercaseUsernameScheme).
- No browser
- Abrir o site da wiki feita para fazer a configuração
http://noma_da_wiki.if.ufrgs.br
- Algumas configurações:
wiki name: NOME DA WIKI contact e-mail webadmin@if.ufrgs.br Admin username: wiki_user Password: Object caching: No caching Database type: MySQL Database host: 143.54.40.2 Database name: wiki_nome_da_wiki DB username: wiki_user DB password (senha do usuário do banco de dados) Database table prefix: mw_
- Na helsique
- Após a finalização das configurações, um arquivo chamado LocalSettings.php será criado em /var/www/wikis/nome_da_wiki/config. Mover um diretório acima:
mv /var/www/wikis/nome_da_wiki/config/LocalSettings.php /var/www/wikis/nome_da_wiki/
- Incluir as linhas abaixo no arquivo LocalSettings.php com caminho do LDAP correto:
################################################################# $wgGroupPermissions['*']['edit'] = false; $wgGroupPermissions['*']['createaccount'] = false; require_once( 'includes/LdapAuthentication.php' ); $wgAuth = new LdapAuthenticationPlugin(); #$wgLDAPUseLocal = true; $wgLDAPDomainNames = array( 'IF' ); $wgLDAPServerNames = array( 'IF' => '143.54.40.8' ); $wgLDAPSearchStrings = array( 'IF' => 'uid=USER-NAME,ou=usuarios,ou=dominio,dc=if' ); $wgLDAPEncryptionType = array( 'IF' => 'clear' ); ####################### $wgLDAPRequiredGroups = array( "IF"=>array("cn=w_nome_da_wiki,ou=grupos,ou=dominio,dc=if") ); $wgLDAPGroupUseFullDN = array( "IF"=>false ); $wgLDAPGroupObjectclass = array( "IF"=>"posixgroup" ); $wgLDAPGroupAttribute = array( "IF"=>"memberuid" ); $wgLDAPGroupSearchNestedGroups = array( "IF"=>false ); $wgLDAPGroupNameAttribute = array( "IF"=>"cn" ); $wgLDAPBaseDNs = array( "IF"=>"ou=dominio,dc=if" ); ####################### $wgMinimalPasswordLength = 1; $wgLDAPDebug = 3; $wgDebugLogGroups["ldap"] = "/tmp/debug.log" ; #################################################################
- Copiar o arquivo LdapAuthentication.php:
cp /root/LdapAuthentication.php /var/www/wikis/nome_da_wiki_ssl/includes/
- Criar diretório /schema/
mkdir /var/www/wikis/nome_da_wiki_ssl/includes/schema
- Criar arquivos nesse novo diretorio
cd /var/www/wikis/nome_da_wiki_ssl/includes/schema
- mysql
nano ldap-mysql.sql
- Incluir:
CREATE TABLE /*_*/ldap_domains ( -- IF for domain domain_id int not null primary key auto_increment, -- domain itself domain varchar(255) binary not null, -- User to which this domain belongs user_id int not null ) /*$wgDBTableOptions*/; CREATE INDEX /*i*/user_id on /*_*/ldap_domains (user_id);
- postgres
nano ldap-postgres.sql
Incluir:
CREATE TABLE ldap_domains ( -- IF for domain domain_id serial PRIMARY KEY, -- domain itself domain varchar(255) not null, -- User to which this domain belongs user_id integer not null ) /*$wgDBTableOptions*/; CREATE INDEX user_id on ldap_domains (user_id);
- Alterar permissões
chown -R www-data.www-data /var/www/wikis/nome_da_wiki
chmod go-rw LocalSettings.php
Alterar wiki para Login seguro
languages/messages/MessagesPt_br.php linha 555
'loginprompt' => 'É necessário estar com os cookies ativados para poder autenticar-se na Instituto de Física - UFRGS.',
para
'loginprompt' => 'Direcionando para login seguro. Por favor, aguarde... ',
includes/templates/Userlogin.php
Na primeira linha:
<meta HTTP-EQUIV="REFRESH" content="0; url=https://pagina.if.ufrgs.br/index.php?title=Especial:Entrar&returnto=Especial:Entrar">
Ou (versão 1.23.4)
<meta HTTP-EQUIV="REFRESH" content="0; url=https://wiki.if.ufrgs.br/index.php?title=Especial:Autenticar-se&returnto=P%C3%A1gina+principal">
Isto pode variar de acordo com a versão da wiki.
Comentar linhas 36 a 42, 43 a 50, 57 a 65 e 68 a 77
Segunda forma de alterar wiki para Login seguro
Alterar as seguintes variáveis
$wgServer = "//wiki.if.ufrgs.br";
$wgSecureLogin = true;
Que estão em "includes/DefaultSettings.php"
Utilizando-se este método não é necessário dois folders com o código fonte da mediawiki como "nome_da_wiki_80" e "nome_da_wiki_ssl".